Nik0s Δημοσ. 8 Μαρτίου 2010 Δημοσ. 8 Μαρτίου 2010 Kαλημερα, κοιτουσα το ΝΑΤ mapping του ρουτερ μου και εχω μια απορια. Πως στις εισερχομενες συνδεσεις απο διαφορους peers ειναι δυνατον μια συγκεκριμενη ip address χρησιμοπιωντας το ιδιο πορτ α ζηταει συνδεση με το ρουτερ μου? Τουλαχιθστον αν ηεθλε 2η ή 3η συνδεση επρεπε να προερχεται απο διαφορετικο πορτ της ιδιας ip και οχι του ιδιου. Ποια ειναι η γνωμη σας? > 16 TCP 192.168.1.2 53449 178.59.69.86 53449 84.254.18.38 35158 17 TCP 192.168.1.2 53462 178.59.69.86 53462 84.254.18.38 35158 18 TCP 192.168.1.2 52649 178.59.69.86 52649 84.254.18.38 35158 18 TCP 192.168.1.2 53927 178.59.69.86 53927 97.74.215.53 80 19 TCP 192.168.1.2 53886 178.59.69.86 53886 97.74.215.53 80 20 TCP 192.168.1.2 53869 178.59.69.86 53869 97.74.215.53 80
parsifal Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 Τουλαχιθστον αν ηεθλε 2η ή 3η συνδεση επρεπε να προερχεται απο διαφορετικο πορτ της ιδιας ip και οχι του ιδιου. Σωστός. Εκτός αν το προηγούμενο connection έχει ήδη τερματιστεί.
Nik0s Δημοσ. 8 Απριλίου 2010 Μέλος Δημοσ. 8 Απριλίου 2010 Aν ειχε τερματιστει γιατι ανφερεται στον τρεχοντα πινακα ΝΑΤ και μαλιστα σε πολλες παρομοιες περιπτωσεις? Εν το μεταξυ τοπικα δεν εχω δει ποτε κατι παρομοιο δηλαδη το localhost δεν το εδειξε ΠΟΤΕ να χρησιμοποιει ιδιο πορτ σε περισσοτερες του ενος συνδεσεις. Το ιδιο και με την WAN_IP kai WAN_Port Μονο στις Peer IPs kai Peer Ports συμβαινει συνεχως αυτο.
parsifal Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 Aν ειχε τερματιστει γιατι ανφερεται στον τρεχοντα πινακα ΝΑΤ και μαλιστα σε πολλες παρομοιες περιπτωσεις? Δεν γνωρίζω τί router έχεις και τί ισχυρίζεται ότι δείχνει στον πίνακα που αναφέρεις! Μήπως είναι κάποιου είδους log; Όπως και να 'χει, μπορείς να τρέξεις στον host κάποιο εργαλείο που να δείχνει λεπτομέρειες για τα εκάστοτε τρέχοντα network connections. Ξεκίνα με την netstat σε τερματικό.
Nik0s Δημοσ. 8 Απριλίου 2010 Μέλος Δημοσ. 8 Απριλίου 2010 > TCP 127.0.0.1:65283 Dell:65284 ESTABLISHED TCP 127.0.0.1:65284 Dell:65283 ESTABLISHED TCP 192.168.1.2:49396 95.82.2.6:printer ESTABLISHED TCP 192.168.1.2:50330 62:19817 ESTABLISHED TCP 192.168.1.2:50337 by2msg1010607:http ESTABLISHED TCP 192.168.1.2:50507 147.52.3.186:5938 ESTABLISHED TCP 192.168.1.2:50527 fx-in-f101:http ESTABLISHED TCP 192.168.1.2:50528 fx-in-f101:http ESTABLISHED TCP 192.168.1.2:50535 www-11-02:http ESTABLISHED TCP 192.168.1.2:50545 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50546 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50547 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50549 static-ip-62-41:http CLOSE_WAIT TCP 192.168.1.2:50640 65.54.172.213:http ESTABLISHED TCP 192.168.1.2:50646 fx-in-f113:https ESTABLISHED TCP 192.168.1.2:50650 channel55-09-01-snc1:http TIME_WAIT TCP 192.168.1.2:50705 fx-in-f102:http ESTABLISHED TCP 192.168.1.2:50710 74.125.14.80:http TIME_WAIT TCP 192.168.1.2:50734 channel55-09-01-snc1:http TIME_WAIT TCP 192.168.1.2:50736 178-50-20:23046 TIME_WAIT TCP 192.168.1.2:50741 78-19-30:36362 TIME_WAIT TCP 192.168.1.2:50755 178:27984 TIME_WAIT TCP 192.168.1.2:50768 1:http TIME_WAIT TCP 192.168.1.2:50772 1:http TIME_WAIT TCP 192.168.1.2:50773 1:http TIME_WAIT TCP 192.168.1.2:50775 178:19941 TIME_WAIT TCP 192.168.1.2:50779 62.1.42.20:http TIME_WAIT TCP 192.168.1.2:50780 62.1.42.20:http CLOSE_WAIT TCP 192.168.1.2:50783 fx-in-f156:http ESTABLISHED TCP 192.168.1.2:50784 fx-in-f156:http ESTABLISHED TCP 192.168.1.2:50786 62.1.42.20:http TIME_WAIT TCP 192.168.1.2:50787 fx-in-f149:http ESTABLISHED TCP 192.168.1.2:50793 fx-in-f149:http TIME_WAIT TCP 192.168.1.2:50794 mu-in-f102:http ESTABLISHED TCP 192.168.1.2:50816 ec2-184-73-242-255:http TIME_WAIT TCP 192.168.1.2:50818 adsl-165:61591 TIME_WAIT TCP 192.168.1.2:50822 cpc4-sgyl29-2-0-cust148:45282 FIN_WAIT_2 TCP 192.168.1.2:50832 channel55-09-01-snc1:http ESTABLISHED TCP 192.168.1.2:50854 ppp-94-66-147-126:12201 TIME_WAIT TCP 192.168.1.2:50856 212:56000 FIN_WAIT_2 TCP 192.168.1.2:50864 ppp079166039116:38078 TIME_WAIT TCP 192.168.1.2:50872 ppp079166157105:46196 TIME_WAIT TCP 192.168.1.2:50874 ppp-94-67-61-18:14318 TIME_WAIT TCP 192.168.1.2:50875 athedsl-139909:55626 TIME_WAIT TCP 192.168.1.2:50887 athedsl-4499965:55761 CLOSING TCP 192.168.1.2:50889 ppp-94-64-231-250:22035 CLOSING TCP 192.168.1.2:50893 adsl-93:23580 SYN_SENT TCP 192.168.1.2:50896 ppp-94-65-219-150:43365 SYN_SENT Ακομα και με την 'netstat' παλι το ιδιο φαινομενο παρατηρειται.... ---------- Προσθήκη στις 18:03 ---------- Προηγούμενο μήνυμα στις 18:02 ---------- για παραδεγιμα εδω TCP 192.168.1.2:50545 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50546 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50547 a92-122-216-122:http ESTABLISHED
parsifal Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 για παραδεγιμα εδω TCP 192.168.1.2:50545 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50546 a92-122-216-122:http ESTABLISHED TCP 192.168.1.2:50547 a92-122-216-122:http ESTABLISHED Εγώ βλέπω ίδιο destination port (http, συντόμευση για το port 80), αλλά τρία διαφορετικά source ports (50545, 50546 και 50547). Στον HTTP server που συνδέεσαι, αυτό σημαίνει 3 διαφορετικά network sockets, δεν είναι κάτι περίεργο. Για διάβασε λίγο εδώ τί λέει: http://en.wikipedia.org/wiki/Internet_socket An Internet socket is characterized by a unique combination of the following: * Protocol: A transport protocol (e.g., TCP, UDP), raw IP, or others. TCP port 53 and UDP port 53 are different, distinct sockets. * Local socket address: Local IP address and port number * Remote socket address: Only for established TCP sockets. As discussed in the Client-Server section below, this is necessary since a TCP server may serve several clients concurrently. The server creates one socket for each client, and these sockets share the same local socket address.
Nik0s Δημοσ. 8 Απριλίου 2010 Μέλος Δημοσ. 8 Απριλίου 2010 α μπερδευτηκα προκειται για εξερχομενη συνδεση και οχι για εισερχομενη. Αυτο επρεπε να δειχνει και ο πινακας NAT και γω σκφτομουν αναποδα.
parsifal Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 Δεν υπάρχει διαφορά, και εισερχόμενη σύνδεση να ήταν. Σε αυτήν την περίπτωση, κάτι τέτοιο θα σήμαινε πως στον host σου τρέχει μία ή περισσότερες υπηρεσίες που «ακούνε» στις θύρες 50545, 50546 και 50547 και έχουν εδραιωθεί 3 διαφορετικά connections με τον host a92-122-216-122, με source port την 80.
Nik0s Δημοσ. 8 Απριλίου 2010 Μέλος Δημοσ. 8 Απριλίου 2010 Εχεις απολυτο δικιο δεν εχει διαφορα και δεν μπορεις να καταλαβει κανεις για τι ειδους συνδση προκειται. Βασικα ομως σκεπτομενο οτι εγω δεν τρεχω 3 διαφορετικες υπηρεσιες τοπικα σε αυτες τις λογικες θυρες γιατι θα το ηξερα αρα προκειται για εξερχομενη συνδεση προς τον host a92-122-216-122, με source port την 80. Το θεμα τωρα αλλαζει την δυναμικη της ερωτησης κανοντας την "γιατι ενα ήδη εδραιωμενο tcp connection δεν ειναι αρκετο για συνδεση σε αυτον τον host και χρειαζονται 3?" Εχω δει και 5 σε αλλους servers.
nske Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 Στην προκειμένη, αφού πρόκειται για HTTP traffic, γιατί έτσι είναι πιο αποδοτική η λήψη ιστοσελίδων. Ένα HTML που σου σερβίρει ο server συνήθως περιέχει αναφορές και σε άλλα αντικείμενα ("resources"), πολλά από τα οποία εξυπηρετούνται από τον ίδιο server. Θα υπήρχε μεγαλύτερη καθυστέρηση αν ο client ζητούσε 1-1 αυτά τα αντικείμενα, περιμένοντας να ολοκληρωθεί η λήψη του πριν προχωρήσει σε κάποιο άλλο. Τώρα, για το γιατί δε γίνεται παράλληλη λήψη των resources που εξυπηρετεί ο ίδιος server μέσα στο ίδιο connection, το πρώτο πράγμα που έρχεται στο μυαλό είναι ότι κάτι τέτοιο θα εισήγαγε μάλλον άχρηστη περιπλοκότητα στο HTTP -γιατί να ξαναϋλοποιήσουν λογική που υπάρχει ήδη σε χαμηλότερο επίπεδο;
parsifal Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 Τυχαίο, τραβηγμένο παράδειγμα, με αφορμή τα 3 connections που παρέθεσες πιο πάνω από τη netstat: Έστω ότι σε ένα tab του browser σου έχεις επισκεφτεί μία ιστοσελίδα που έχει embdded 3 Flash videos (embedded μεν, αλλά τα videos να βρίσκονται στον ίδιο server με αυτόν της ιστοσελίδας). Έστω ότι κάνεις κλικ και στα 3 και αρχίζουν να παίζουν ταυτόχρονα. Δεν περιμένεις να δεις κατ' ελάχιστον 3 connections, ένα για κάθε video... ;
Nik0s Δημοσ. 8 Απριλίου 2010 Μέλος Δημοσ. 8 Απριλίου 2010 Πολυ σωστα, μεχρι τωρα νομιζα πως ενα http request εξυπηρετουντω απο ενα http response, 1 connection θελω να πω και οτι τα δεδομενα μεταφερονατς σειριακα, αλλα οπως με διαφωτισατε δεν ειναι ετσι για λογους ταχυτητας. Ευχαριστω δεν το γνωριζα. Παντως παιδια γενιακ κοιτωντα μια γραμμη νετστατ ή το NAT table του ρουτερ μας ειμαστε σε θεση να καταλαβουμε η καθε γραμμη του πινακα που αφορα ενα established connection αν πυροδοτηθηκε απο εισερχομενο ή εξερχομενο request ιδιαιτερα αν το source port < 1024(system services) ? Για ports > 1024 και με uPnP κλειστο θα καταλαβαιναμε οτι προκειται για εισερχομενη συνδεση σε υπηρεσιες που ακουνε τοπικα και τις ειχαμε ανοιξει οι ιδιοι. Αλλα ακομη περισσοτερο ας υποθεσουμε οτι δειχνουμε σε καποιον φιλο καλη ωρα σε εσας παιδια (parsifal, nske) το current NAT table ή την netstat..... Μπορειτε με ασφαλεια ν πειτε η καθε γραμμη του πινακα αν αφορα εισερχομενη ή εξερχομενη συνδεση και να το δικαιολογησετε κιολας? Αυτα χωρις να σας εχω πει τι τρεχω/δεν τρεχω στο pc μου. Διαγνωμη με αλλο λογια του incoming/outgoing traffic καθως και running proccesses.
nske Δημοσ. 8 Απριλίου 2010 Δημοσ. 8 Απριλίου 2010 νομιζα πως ενα http request εξυπηρετουντω απο ενα http response, 1 connection θελω να πω Ένα HTTP request εξυπηρετείται από ένα connection, απλά εσύ στέλνεις πολλά HTTP requests παράλληλα για να απεικονίσεις το περιεχόμενο μιας τυπικής τοποθεσίας. Βέβαια ένα HTTP requests μπορεί να χρησιμοποιήσει το ίδιο connection με ένα προγενέστερο HTTP request, αν είναι ακόμα ζωντανό και ελεύθερο, δεν είναι απαραίτητο κάθε connection να τερματίζει μετά την εξυπηρέτηση ενός request. Παντως παιδια γενιακ κοιτωντα μια γραμμη νετστατ ή το NAT table του ρουτερ μας ειμαστε σε θεση να καταλαβουμε η καθε γραμμη του πινακα που αφορα ενα established connection αν πυροδοτηθηκε απο εισερχομενο ή εξερχομενο request ιδιαιτερα αν το source port < 1024(system services) Δηλαδή θέλεις να γνωρίζεις ποιο ήταν το άκρο που ξεκίνησε το handshake μιας ενεργούς σύνδεσης. Η netstat είναι ένα απλό εργαλείο για να απεικονίζεις τις αναγκαίες πληροφορίες που έχει το λειτουργικό για τα ανοικτά sockets, αυτή η πληροφορία δε νομίζω ότι κρατιέται από το λειτουργικό κανονικά, επειδή δεν είναι αναγκαία. Οπότε για να μπορείς να τη γνωρίζεις με βεβαιότητα θα πρέπει να χρησιμοποιήσεις κάποιο ανεξάρτητο πρόγραμμα (το οποίο θα τρέχει διαρκώς). Στο Linux με ενεργοποιημένο netfilter και το κατάλληλο iptables configuration, μπορείς να αντλήσεις αυτήν την πληροφορία με βεβαιότητα, όμως αν αυτό που ψάχνεις είναι ένα προγραμματάκι που θα σου την δίνει απλά και γρήγορα για όλες τις ενεργές συνδέσεις δεν θα βολέψει. Πάντως πρακτικά στις περισσότερες περιπτώσεις είναι αρκετό να δεις τα listening sockets (netstat -l), για να συμπεράνεις ότι, αν κάτι κρατάει ένα listening socket σε κάποια port της τοπικής σου διεύθυνσης και υπάρχει μια ενεργή σύνδεση σε αυτό το port, το άλλο άκρο είναι που την ξεκίνησε -και το αντίστροφο. Επίσης πρακτικά, μπορείς με τη netstat να δεις ποιο process έχει ανοίξει το socket, και, αν είναι έμπιστο και γνωρίζεις τι κάνει, να συμπεράνεις έτσι. Αλλα ακομη περισσοτερο ας υποθεσουμε οτι δειχνουμε σε καποιον φιλο καλη ωρα σε εσας παιδια (parsifal' date=' nske) το current NAT table ή την netstat..... Μπορειτε με ασφαλεια ν πειτε η καθε γραμμη του πινακα αν αφορα εισερχομενη ή εξερχομενη συνδεση και να το δικαιολογησετε κιολας? Αυτα χωρις να σας εχω πει τι τρεχω/δεν τρεχω στο pc μου.[/quote'] Κανείς δε μπορεί να το πει με ασφάλεια αποκλειστικά και μόνο από αυτήν την έξοδο της netstat. Τώρα για το συγκεκριμένο NAT table, φαντάζομαι ότι εξαρτάται από το ποιες συνδέσεις συμπεριλαμβάνει και από το τι δηλώνει η σειρά των στηλών. Πρακτικά ο πιο γρήγορος τρόπος να βγάλεις τα συμπεράσματά σου είναι να σηκώσεις κάτι στο 192.168.1.2, να βάλεις τον router να κάνει Destination NAT (port forwarding) εκεί, να ανοίξεις μια σύνδεση απ' έξω εκεί και τότε να συγκρίνεις σε αυτό το NAT table αν και πώς απεικονίζονται συνδέσεις στις οποίες ξέρεις ότι γίνεται Source NAT και συνδέσεις στις οποίες ξέρεις ότι γίνεται Destination NAT.
_Anonymous_ Δημοσ. 9 Απριλίου 2010 Δημοσ. 9 Απριλίου 2010 νικο καλημερα. Πρεπει να διαβασεις routing και upnp και tables και θα κατανοησεις τα παντα. Συγνωμη για το κυνικο της απαντησης αλλα με τετοιου ειδους πληροφοριες θα εχεις αρκετα κενα, ασχετα αν ειναι σωστα αυτα που λενε τα παιδια. Να ξερεις παντως οτι τα connections δεν τερματιζοντε και εχουν lease time καπου στις 48 ωρες by default...... ενα βασικο προβλημα των προγραμματιστων. η by default γκαμα ας πουμε των πορτων που χρησιμοποιει το tcp/ip στα connectons εκτος απο τα δηλωμενα (http, msn, k.l.p.) ειναι απο 16384 - 49152 πορτες με 10 concurrent simultaneous connections per netbios socket (m$ networking me upnp). Αν γνωριζεις τα ανωτερω ας πουμε για παραδειγμα και χρησιμοποιεις torrents κανεις απο μονος σου 2 αλλαγες και παιζεις παντα τερματισμενος με δυνατοτητα να σερφαρεις και σχετικα ανετα ταυτοχρονα. Αυτο βεβαια δε θα σε σωσει αν δε πειραξεις και καμια 20ρια αλλα πραγματα ταυτοχρονα, ουτε να το δεις σαν καποια επιδειξη, αλλα το routing θελει διαβασμα που θα σου δωσει λυσεις που δε θα τις βρεις σε κανενα google
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.