Page 1 of 1

Port Forwarding Σε router

Posted: Tue Apr 17, 2007 11:14 pm
by Ganther
Λοιπον. Εχω ενα απαραδεκτο router, το οποιο δεν κανει καν port forwarding. Αν μπορει καποιος να μου εξηγησει τι ακριβως ειναι αυτο και αν παιζει ιδιαιτερο ρολο σε ενα απλο χρηστη σαν εμενα. Εχω διαβασει σε διαφορες πηγες οτι στο μtorrent πχ πιθανον να εχω χαμηλοτερες ταχυτητες.

Αξιζει δηλαδη να το αλλαξω?

Posted: Tue Apr 17, 2007 11:18 pm
by tZoLe
Νομίζω πως προγράμματα όπως το μtorrent χωρίς port forwarding δεν θα μπορείς να τα χρησιμοποιήσεις. Τουλάχιστον, εγώ έπρεπε να κάνω port forwarding στο δικό μου router. Ας με διορθώσει κάποιος που ξέρει καλύτερα.

Posted: Tue Apr 17, 2007 11:31 pm
by xrokos
Τα modem/routers ενσωματώνουν συνήθως και firewall πράγμα που σημαίνει ότι εαν ενα πρόγραμμα χρησιμοποιεί την πόρτα 50600 το firewall του router μπλοκάρει τη μετάδοση των δεδομένων μέσω αυτής και είναι αδύνατη η σωστή λειτουργία του προγράμματος.Λειτουργούν περίπου σαν και τα software firewalls μόνο που αυτά σε επίπεδο λογισμικού είναι πιο αποτελεσματικά. Για να κάνεις port forwarding πήγαινε σε ένα πολύ καλό site http://www.portforward.com/ και θα σου πει αναλυτικά τα βήματα.

Posted: Wed Apr 18, 2007 12:03 am
by Ganther
Εχω ενα router που ειναι του 1491, Νομιζω ειχα διαβασει οτι το ιδιο ειχε εγκαταστησει και ο Κολομβος στο santa Maria αλλα δεν ειμαι σιγουρος.

Περα απο την πλακα εχω ενα Jetspeed με HUB απανω, νομιζω Jetspeed 600 ειναι το μοντελο(νομιζω, ετσι γραφει στο web interface αυτο το μοντελο δεν υπαρχει στη σελιδα της Intracom για να καταλαβετε για τι πραγμα μιλαμε!) και δεν ξερω παραπανω πραγματα. Αν καποιος μπορει να βοηθησει η να μου πει αν αξιζει να το αλλαξω (αν θα δω διαφορα στα torrents ας πει!)

YΓ. Η σελιδα σου χροκε αν και καλη προφανως και δεν εχει το δικο μου Modem :)



EΔω μπορειτε να μεινετε εξτασιασμενοι απο την μοναδικη ελληνικη τεχνολογια, το καπακι εχει βγει μετα απο κατι που διαβασα στο ADSLgr οτι το modem(υπαρχει και αλλος που το εχει) υπερθερμενεται και κολλαει και ηταν σωστο , απο τοτε δεν εχει ξανακολησει ποτε! :-D
Image

Posted: Wed Apr 18, 2007 12:03 am
by HdkiLLeR
Το port forwarding είναι άρρηκτα συνδεδεμένο με το NAT. Το Network Address Translation (NAT) είναι ένας απλός τρόπος για να λύσουμε το πρόβλημα της έλλειψης IPv4 διευθύνσεων στο Inet. Εσύ για παράδειγμα ότι PC έχεις στο σπίτι σου βγαίνουν στο Inet μέσα από έναν router. Επειδή δεν έχουμε την πολυτέλεια προς το παρόν να παίρνει ο καθένας όσες IP διευθύνσεις θέλει, όπως όλοι, έτσι και εσύ έχεις μία (η οποία στην πραγματικότητα μετά από λίγο αλλάζει απο τον ISP σου - εκτός εάν έχεις static IP). Έστω ότι αυτή είναι η 195.251.255.142 (αυτή η IP αντιστοιχεί στην DNS του AUEB αλλά τον χρησιμοποιώ για το παράδειγμα αυτό). Λοιπόν ο router έχει δύο interfaces (ένα εσωτερικό - wireless, ethernet ή οτισήποτε άλλο) και ένα εξωτερικό που πάει στο Inet:

Code: Select all

10.0.0.0/24------|ROUTER|------195.251.255.142----[INET]
Για να μην το πολυζαλίζω, απο το subnet 10.0.0.0 παίρνουν IP όλα τα PC σου. Το subnet αυτό (10.0.0.0/24 μαζι με μερικά ακόμη) ονομάζονται private επειδή δεν χρησιμοποιούνται στο Inet καθόλου. Κοινώς κανένας router στο Inet δεν έχει καταχωρήσεις για αυτά. Τα χρησιμοποιεί ο καθένας στο σπίτι του και μόνο ή σε δίκτυα που δεν συνδέονται στο Internet (Intranets, VPNs...).Αντιθέτως η 195.251.255.142 είναι public available. Κοινώς οποιοσδήποτε μπορεί να δρομολογήσει πακέτα σε αυτήν.

Τώρα για να έχουν τα pc απο τις IPs 10.0.0.0/24 access στο Inet ο router χρησιμοποιεί αυτό που λέγεται NAΤ (συγκεκριμένα κάνει masquerade). Πχ το PC 10.0.0.1 θέλει να δει το in.gr. O router κάνει intercept τα πακέτα απο τον 10.0.0.1 που έχουν destination το http://www.in.gr και αλλάζει το source IP address απο 10.0.0.1 σε 195.251.255.142 (για να μπορεί το in.gr να απαντήσει πίσω - εάν το source IP παρέμενε 10.0.0.1 τότε η απάντηση δεν θα μπορούσε να δρομολογηθεί πίσω αφού το subnet 10.0.0.1 δεν είναι routable όπως ανέφερα παραπάνω). Στην συνέχεια για κάθε πακέτο που έρχεται πίσω στο 195.251.255.142 απο το in.gr ο router κάνει πάλι intercept και αλλάζει το destination IP address απο 195.251.255.142 σε 10.0.0.1 για να γίνει η τελική παραλαβή.*

Η ίδια διαδικασία ακολουθείται εάν θέλει και το 10.0.0.2 να δει το http://www.in.gr και το 10.0.0.3 κλπ κλπ. Το http://www.in.gr όμως για ότι requests παίρνει, βλέπει ότι έρχονται όλα απο μια IP την 195.251.255.142. Δεν μπορεί να ξέρει εάν απο πίσω κρύβεται κάποιος, εάν γίνεται NAT, εάν γίνεται παραπάνω απο ένα NAT σε σειρά κλπ κλπ. Τα πάντα κρύβονται απο τον router σου. Αυτή η λύση αν και αντιμετωπίζει σχετικά εύκολα το πρόβλημα τον διευθύνσεων έχει το μειονέκτημα ότι δεν μπορεί κάποιος να φιλοξενήσει services σε μηχανάκια πίσω απο τον router (αφού δεν μπορεί κάποιος απο το Inet να τα δεί). Το port forwarding χρησιμοποιείται για να λύσει αυτό ακριβώς το πρόβλημα. Δηλαδή εσύ χρησιμοποιείς ένα service σε ένα συγκεκριμένο port στην public IP του router και αυτό γίνεται bind σε κάποιο PC απο πίσω. Πχ έστω ότι τρέχεις azureus για τα torrents σου. To azureus θέλει access στην θύρα 6881 (στην ουσία ο tracker των torrents). Εάν τρέχεις το service αυτό σε κάποιο pc πίσω απο τον router τότε ο tracker δεν θα δουλέψει επειδή θα προσπαθήσει να συνδεθεί στο 195.251.255.142:6881 ενώ το service τρέχει στο 10.0.0.1:6881 (πίσω απο το NAT). Αυτό που κάνεις με το port forwarding είναι το εξής: του λές ότι έρχεται στο 195.251.255.142 port 6881 στείλτο στο 10.0.0.1 port 6881. Ο tracker θα μιλήσει το 195.251.255.142:6881 και αυτός θα κάνει NAT -> mangle δηλαδή το 195.251.255.142 σε 10.0.0.1 και θα τα στείλει το port 6881 του 10.0.0.1.

*: Στην πραγματικότητα είναι λίγο πιο πολύπλοκη η διαδικασία αλλά το βασικό κομμάτι γίνεται έτσι.

Posted: Wed Apr 18, 2007 12:18 am
by xrokos
HdkiLLeR ήσουν αφοπλιστικός, άντε μπας και μάθουμε και εμείς τα ψάρια τίποτις!

Posted: Wed Apr 18, 2007 12:20 am
by Ganther
HDkiller, Πολυ σωστος και απλος, εχω κανει και δικτυα οποτε καταλαβα τα παντα! :smt023
Τελικα δηλαδη εφοσον το ταλαιπωρο μου router δουλευει με το μtorrent, αυτο σημαινει οτι δεν θα δω διαφορα στην ταχυτητα με ενα αλλο που θα κανει port forwarding ε?? Δηλαδη εδω το προβλημα μας ειναι απλο! Η δουλευει το μtorrent η οχι. Ειμαι σωστος??

YG. Μου κανει εντυπωση ομως το απο το port test μtorrent παιρνω αυτη την απαντηση

Code: Select all

Checking port 63784 on 62.ΧΧ.1Χ8.ΧΧΧ...

Error! Port 63784 does not appear to be open.
Αλλα παρολαυτα μπορω και κατεβαζω!

Posted: Wed Apr 18, 2007 12:29 am
by P@radox
Δεν είναι αόλυτο το τι λέει το uTorrent για το Port Forwarding.. Πρέπει να τσεκάρεις το router σου να δείς τι παίζει..!

Πολλά νέα router υποστηρίζουν UPnP port mapping οποτε δέν είναι απαραίτητο να προχωρήσετε εσείς σε κάποια διαδικασία..

Posted: Wed Apr 18, 2007 1:49 am
by xrokos
Εφόσον σου δουλεύει to μtorrent και σου πρασινίζει κάτω κάτω το τick όλα καλά. Ό,τι router και να πάρεις την ίδια ταχύτητα θα πιάνεις.

Posted: Wed Apr 18, 2007 8:06 am
by Ganther
xrokos wrote:Εφόσον σου δουλεύει to μtorrent και σου πρασινίζει κάτω κάτω το τick όλα καλά. Ό,τι router και να πάρεις την ίδια ταχύτητα θα πιάνεις.
Μα δεν πρασινιζει κατω κατω το τικ. Εχω κατω κατω ενα κοκκινο θαυμαστικο που λεει οτι η πορτα ειναι κλειστη και οτι πιθανον να εχω χαμηλοτερες ταχυτητες και οτι πρεπει να την ανοιξω.
Γιαυτο ξεκινησα να το σκεφτομαι αυτο το πραγμα... :!:

Posted: Wed Apr 18, 2007 11:01 am
by StormRider
Άρα θα πρέπει να κάνεις Port Forwarding τελικά.

τώρα βέβαια ποιο εύχρηστο - αν και όχι πιο ασφαλές - είναι να ενεργοποιήσεις το UPnP port mapping στο router σου. Τα περισσότερα προγράμματα Ρ2Ρ έχουν την δυνατότητα του UPnP και κάνουν την διαδικασία εύρεσης, ανοίγματος και κλεισίματος θύρας αυτόματα.

Posted: Wed Apr 18, 2007 12:00 pm
by Sreak
Λοιπόν όσον αφορά τα Torrents εγώ δεν είχα παρατηρήσει διαφορά στην ταχύτητα (εντάξει αν χάνεις και 3ΚΒ/S δεν είναι άξιο αναφοράς. Εσύ από τη χρήση που κάνεις βλέπεις να έχεις προβλήματα με την ταχύτητα?
Θα σου έλεγα να πάρεις καινούργιο router και να κάνεις port forwarding αν θέλεις να στήσεις κανένα Web Server, να έχεις remote desktop, FTP Server και τέτοια.
Γενικότερα αν θέλεις να σε βλέπει ο έξω κόσμος ή όχι.
StormRider wrote:Άρα θα πρέπει να κάνεις Port Forwarding τελικά.

τώρα βέβαια ποιο εύχρηστο - αν και όχι πιο ασφαλές - είναι να ενεργοποιήσεις το UPnP port mapping στο router σου. Τα περισσότερα προγράμματα Ρ2Ρ έχουν την δυνατότητα του UPnP και κάνουν την διαδικασία εύρεσης, ανοίγματος και κλεισίματος θύρας αυτόματα.
Εδώ το router δεν έχει τη δυνατότητα portf orwarding θα έχει UPnP?

Posted: Wed Apr 18, 2007 1:23 pm
by Ganther
Sreak νομιζω οτι μονο εσυ εχεις πιασει την κατασταση του modem! αυτο εδω
Εδώ το router δεν έχει τη δυνατότητα port forwarding θα έχει UPnP?
το δειχνει :)

Βασικα δεν βλεπω προβληματα στην ταχυτητα αν ο tracker ειναι καλος πιανω ~55-60, οσα δηλαδη πιανω και με ενα καλο FTP download αμα ειμαι τυχερος (η γραμμη μου ειναι χαλια) απλα ειπα μηπως καμμια φορα που βλεπω στα ιδια torrent εγω να σαιρνομαι (πχ να πιανω 15-20) η αδερφη μου την ιδια ακριβως στιγμη απο Γαλλια να κατεβαζει με 800kb/sec(προφανως το ιδιο πραγμα, την ιδια στιγμη!). Δηλαδη εγω δεν πλησιαζω καν το θεωρητικο μου μεγιστο που ειναι πολυ μικρο ενω αυτη πιανει τρομερες ταχυτητες. (το εχω τσεκαρει 1000 φορες δεν μπορει να ειναι τυχαιο!)

Αυτο μπορει να οφειλεται σε αλλους λογους?

Σκεφτομαι οτι μπορει να μπουκωνει η παρακμη, οταν υπαρχουν πολλες συνδεσεις! (πχ εχει 10.000 seeds και 50.000 leeches) Αυτο γενικα παιζει?

Posted: Wed Apr 18, 2007 1:28 pm
by Sreak
Μπορεί γιατί αν κατεβάζεις από tracker που δεν κάνει σοβαρό register ( δηλαδή να μετράει το ratio σου και αν είναι μικρό να σε διαγράφει) τότε μπορεί να σου δίνει ένα torrent αναλογικά με το upload που κάνεις εκείνη τη στιγμή.

Posted: Wed Apr 18, 2007 1:31 pm
by xrokos
Ganther wrote: Αυτο μπορει να οφειλεται σε αλλους λογους?
Σε πολλούς: Από τη συμπεριφορά των χρηστών στο dslam σου εώς το φόρτο του δικτύου του isp σου με το εξωτερικό. Μη ξεχνάμε ότι τα torrents είναι αυτά που φτάνουν τα δίκτυα παγκοσμίως στα όρια τους.
Στο δικό μου router αν δεν κάνω port forward πολύ απλά δε δουλεύει ούτε μtorrent, ούτε dc++...

Posted: Wed Apr 18, 2007 1:38 pm
by Sreak
Με το μtorrent είχα και εγώ πρόβλημα. Με το Azureus κανένα.

Posted: Wed Apr 18, 2007 1:48 pm
by HdkiLLeR
Ganther wrote: YG. Μου κανει εντυπωση ομως το απο το port test μtorrent παιρνω αυτη την απαντηση

Code: Select all

Checking port 63784 on 62.ΧΧ.1Χ8.ΧΧΧ...

Error! Port 63784 does not appear to be open.
Ναι αυτό το παίρνεις γιατί πολύ απλά προσπαθεί να γίνει ένα connection στο 62.ΧΧ.1Χ8.ΧΧΧ:63784 (δηλαδή στον router σου) αλλά εκεί δεν ακούει κάποιο service. Το service αυτό κάνει listen στο 10.x.x.x:63784 ή στο 192.168.x.x:63784 (η τέλοσπάντον σε όποια private IP έχεις στο host PC που τρέχεις το μTorrent). Άρα είναι φυσιολογικό, εάν ήθελες να το λύσεις θα έπρεπε να βάλεις ένα port forwarding rule στον router: ότι χτυπάει στο 62.ΧΧ.1Χ8.ΧΧΧ:63784 να πηγαίνει στο 10.x.x.x:63784 (όπου 10.x.x.x η IP του host που τρέχεις τον torrent client)
Ganther wrote: Τελικα δηλαδη εφοσον το ταλαιπωρο μου router δουλευει με το μtorrent, αυτο σημαινει οτι δεν θα δω διαφορα στην ταχυτητα με ενα αλλο που θα κανει port forwarding ε?? Δηλαδη εδω το προβλημα μας ειναι απλο! Η δουλευει το μtorrent η οχι. Ειμαι σωστος??
...
Αλλα παρολαυτα μπορω και κατεβαζω!
Σχεδόν σωστός, βασικά έχει να κάνει με το πως δουλεύει το torrent protocol. Κοίτα όταν παίρνεις ένα .torrent file και το βάζεις σε έναν torrent client (βλέπε μTorrent) τότε πολύ απλά ο client επικοινωνεί με μια οντότητα που λέγετε tracker και ενημερώνεται για τις IPs των node(s) απο τους οποίους μπορείς να κατεβάσεις το file(s) που θέλεις. Το σύνολο των συμμετεχόντων είναι αυτό που λέμε swarm (σμήνος). Λοιπόν, μόλις ανοίξεις λοιπόν το .torrent, το μTorrent πηγαίνει στον κατάλληλο tracker (σε ποιόν θα πάει το λέει μέσα το .torrent file) και:

1)Παίρνει μια λίστα με IPs απο τις οποίες μπορείς να κατεβάσεις κομμάτια ή ολόκληρο το περιεχόμενο που θέλεις.
2)Κάνει register και την δική σου IP στον tracker ώστε ομοίως να μπορεί να βρεθεί απο άλλους και να συνεδεθούν άλλοι σε εσένα ώστε καθώς εσύ κατεβάζεις αυτό που θέλεις να δίνεις και τα ήδη κατεβασμένα κομμάτια σε άλλους.

Μετά απο αυτήν την διαδικασία ο tracker είναι στην ουσία άχρηστος (στην πραγματικότητα χρησιμεύει, αλλά το προτόκολλο θα έπαιζε και χωρίς αυτόν εάν μετά απο αυτό το σημείο χανόταν). Γιατί κάθε node (πχ εσύ, το μTorrent σου) ξεκινάει να συνδέεται σε άλλους nodes (αφού έχει τις IPs τους - της πήρε απο τον tracker) με ξεχωριστές TCP connections στον καθέναν και ξεκινάει να κάνει download parts.

Τώρα τι γίνεται στην πραγματικότητα; Η IP που εσύ κάνεις register είναι η public IP σου, οπότε εάν έρθει κάποιος άλλος πχ εγώ και συνδεθώ στον tracker θα πάρω μετά μια λίστα με IPs κλπ κλπ (βλ βήμα 1 παραπάνω). Μέσα εκεί θα είναι και η δικιά σου και θα δοκιμάσω να συνδεθώ σε εσένα (στην public IP σου - γιατί αυτή είχες κάνει register) και να σου ζητήσω κομμάτια κλπ κλπ (παίζει το torrent protocol εδώ κανονικά κοινώς). Η σύνδεση αυτή όμως δεν θα γίνει ποτέ, αφού στην πραγματικότητα θα προσπαθώ να συνδεθώ στον router :), αφού εσύ βρίσκεσαι πίσω απο το NAT. Οπότε δεν επηρεάζονται τα downloads αλλά τα uploads (δεν μπορούν άλλοι να συνδεθούν σε εσένα).

Τώρα αν και κάποιος θα πεί μα αυτό είναι καλό κατεβάζω χωρίς να δίνω... όλα τα P2P networks χρησιμοποιούν κάποιον μηχανισμό για να κάνουν stimulate το participation. Το torrent χρησιμοποιεί την στρατηγική tit for tat*. Κοινώς όταν εσύ συνδέεσαι κάπου για να πάρεις δεν θα σου δώσουν εάν και εσύ δεν δίνεις σε άλλους. Στην πραγματικότητα πάντα θα δίνεις κάτι γιατί ακόμη και εάν μπλοκάρεις τα incomming connections, θα δίνεις parts σε αυτούς απο τους οποίους κατεβάζεις. Οπότε τελικά θα φαίνεται ότι κάτι ψιλά έχεις δώσει και εσύ :) :) και γι' αυτό και δεν θα σε πετάνει όλοι έξω απο το swarm.

Τι θα κέρδιζες εάν άνοιγες το port forwarding; Εξαρτάται απο τι κατεβάζεις. Εάν κατεβάζεις κάτι που έχει πολυ μεγάλη ζήτηση τότε αναγκαστικά θα το έχει ένας, δυο και θα το κατεβάζουν 100. Τα νούμερα δεν έχουν σχέση αλλά το σχετικό ratio απο seeders και leechers. Οπότε σε μια τέτοια κατάσταση ότι και να κάνεις δεν έχει πολύ μεγάλο νόημα αφού το contect το έχουν σχετικά λίγοι, δυνητικά δεν θα ήθελαν πολλοί να σε βρούν για να πάρουν απο εσένα (και με το μικρό upload που έχεις καθώς κάνεις download είσαι οκ). Οπότε έχει να κάνει με το τι κατεβάζεις, τι ζήτηση έχει εκείνη την στιγμή αυτό που κατεβάζεις και εάν τελικά στο swarm μπαίνουν άτομα που κατεβάζεις απο αυτούς και ταυτόχρονα τους δίνεις και κάτι (εάν δεν υπήρχε αυτό τότε οι seeders δεν θα σου έδειναν τπτ).

*υπάρχει τρομερή βιβλιογραφία για το πως συμπεριφέρεται αυτή η στρατηγική κάτω απο διαφορετικά μείγματα seeders και leechers, demand patterns κλπ κλπ.
xrokos wrote: Στο δικό μου router αν δεν κάνω port forward πολύ απλά δε δουλεύει ούτε μtorrent, ούτε dc++...
Eξαρτάται απο το τι κατεβάζεις και το πως δουλεύει ο tracker σου. Το μTorrent θα έπαιζε μια χαρά απλά θα ξεκίναγε μετά απο καμιά ώρα και να έπιανες 1kb/s :) :). Για το DC++ είναι άλλο P2P protocοl εντελώς διαφορετικό.

Posted: Wed Apr 18, 2007 1:53 pm
by Sreak
Ξέρεις τι θαυμάζω σε εσένα ? Την όρεξη που έχεις να τα εξηγείς όλα τόσο αναλυτικά :)
Εύγε bill ;)

Posted: Wed Apr 18, 2007 1:55 pm
by HdkiLLeR
Πάντα έχω όρεξη να εξηγώ και να συζητάμε ακόμη πιο ωραια πραγματάκιαι πχ πως ξεγελάμε τους trackers, πόσο anonymity υπάρχει τελικά με το torrent. Αλλά και περισσότερες φιλοσοφίες για στρατηγικές κλπ κλπ. Τι να κάνω έχω μπουχτήσει απο τα topics τι θα κάνω αύριο, γιατί δεν είναι ο κόσμος ωραίος. Καλά και αυτά αλλά τα P2P overlays είναι πιο attactive :) :)

Posted: Wed Apr 18, 2007 2:07 pm
by Ganther
Μαλιστα...

Καταρχας thanx για τις πληρεστατες απαντησεις!
Ουτως η αλλως βαζω κοφτη γυρω στα 9kb/sec γιατι αν δωσω πχ 12 αρχιζει και γινεται αργο το παραλληλο browsing και εκνευριζομαι!
Οποτε για τους λογους που εξηγησες (δινω σε οποιον παιρνω η καπως ετσι) το upload Μου δειχνει παντα καρφωμενο στα 9 (ειναι παντα στο οριο) οποτε μαλλον δεν αξιζει αν το αλλαξω!! :)

Posted: Wed Apr 18, 2007 2:14 pm
by HdkiLLeR
Εάν έχεις upload limit 9κb/sec και αυτά καταλαμβάνονται όλα δίνοντας στους users απο τους οποίους ήδη κατεβάζεις τότε δεν έχει νόημα να κάνεις τπτ άλλο. Απλά θα σε έβρισκαν μερικοί παραπάνω αλλά και πάλι δεν θα έδινες τπτ άλλο οπότε το swarm θα σε αντιμετώπιζε με τον ίδιο τρόπο.