Τρόπος χρήσης της εντολής Netstat

Παραδείγματα, διακόπτες και πολλά άλλα

Η εντολή netstat είναι μια εντολή Command Prompt που χρησιμοποιείται για την εμφάνιση πολύ λεπτομερών πληροφοριών σχετικά με τον τρόπο επικοινωνίας του υπολογιστή σας με άλλους υπολογιστές ή συσκευές δικτύου.

Συγκεκριμένα, η εντολή netstat μπορεί να παρουσιάσει λεπτομέρειες σχετικά με μεμονωμένες συνδέσεις δικτύου, γενικές στατιστικές δικτύου και στατιστικά δεδομένα δικτύου, και πολλά άλλα, τα οποία θα μπορούσαν να βοηθήσουν στην αντιμετώπιση συγκεκριμένων προβλημάτων δικτύωσης.

Διαθεσιμότητα εντολών Netstat

Η εντολή netstat είναι διαθέσιμη από τη γραμμή εντολών στις περισσότερες εκδόσεις των Windows, συμπεριλαμβανομένων των λειτουργικών συστημάτων Windows 10 , Windows 8 , Windows 7 , Windows Vista , Windows XP , Windows Server και μερικές παλαιότερες εκδόσεις των Windows.

Σημείωση: Η διαθεσιμότητα ορισμένων διακοπτών εντολών netstat και άλλων συντακτικών εντολών netstat ενδέχεται να διαφέρει από το λειτουργικό σύστημα στο λειτουργικό σύστημα.

Σύνταξη εντολών Netstat

netstat [ ] [ ] [ ] [ -f ] [ ] [ -ο ] [ πρωτόκολλο ] [ -r ] [ -s ] [ -t ] [ -x ] [ time_interval ] [ /? ]

Συμβουλή: Ανατρέξτε στην ενότητα Τρόπος ανάγνωσης της σύνταξης εντολών αν δεν είστε σίγουροι πώς να διαβάσετε τη σύνταξη της εντολής netstat όπως φαίνεται παραπάνω.

Εκτελέστε μόνο την εντολή netstat για να εμφανίσετε μια σχετικά απλή λίστα με όλες τις ενεργές συνδέσεις TCP, οι οποίες για κάθε μία θα εμφανίσουν την τοπική διεύθυνση IP (τον υπολογιστή σας), την ξένη διεύθυνση IP (τον άλλο υπολογιστή ή τη συσκευή δικτύου) τους αριθμούς θύρας, καθώς και την κατάσταση TCP.

-a = Αυτός ο διακόπτης εμφανίζει τις ενεργές συνδέσεις TCP, τις συνδέσεις TCP με την κατάσταση ακρόασης, καθώς και τις θύρες UDP που ακούγονται.

-b = Αυτός ο διακόπτης netstat είναι πολύ παρόμοιος με τον διακόπτη -o που παρατίθεται παρακάτω, αλλά αντί να εμφανίζει το PID, θα εμφανίσει το πραγματικό όνομα αρχείου της διαδικασίας. Χρησιμοποιώντας το -b πάνω από -ο μπορεί να φανεί σαν να σας σώζει ένα βήμα ή δύο, αλλά η χρήση του μπορεί μερικές φορές να επεκτείνει σημαντικά το χρόνο που χρειάζεται το netstat για να εκτελέσει πλήρως.

-e = Χρησιμοποιήστε αυτό το διακόπτη με την εντολή netstat για να εμφανίσετε στατιστικά στοιχεία σχετικά με τη σύνδεση δικτύου. Αυτά τα δεδομένα περιλαμβάνουν bytes, πακέτα unicast, πακέτα μη ενιαίας διανομής, απορρίψεις, σφάλματα και άγνωστα πρωτόκολλα που έχουν ληφθεί και αποστέλλονται από τη στιγμή που δημιουργήθηκε η σύνδεση.

-f = Ο διακόπτης -f θα αναγκάσει την εντολή netstat να εμφανίσει το πλήρες πιστοποιημένο όνομα τομέα (FQDN) για κάθε ξένη διεύθυνση IP, όταν είναι δυνατόν.

-n = Χρησιμοποιήστε το διακόπτη -n για να αποτρέψετε την προσπάθεια του netstat να προσδιορίσει τα ονόματα των ξενιστών για ξένες διευθύνσεις IP. Ανάλογα με τις τρέχουσες συνδέσεις δικτύου, η χρήση αυτού του διακόπτη θα μπορούσε να μειώσει σημαντικά το χρόνο που χρειάζεται για να εκτελεστεί πλήρως το netstat.

-o = Μια εύχρηστη επιλογή για πολλές εργασίες αντιμετώπισης προβλημάτων, ο διακόπτης -o εμφανίζει το αναγνωριστικό διαδικασίας (PID) που σχετίζεται με κάθε εμφανιζόμενη σύνδεση. Δείτε το παρακάτω παράδειγμα για περισσότερες πληροφορίες σχετικά με τη χρήση του netstat -o .

-p = Χρησιμοποιήστε το διακόπτη -p για να εμφανίσετε συνδέσεις ή στατιστικά στοιχεία μόνο για ένα συγκεκριμένο πρωτόκολλο . Δεν μπορείτε να ορίσετε περισσότερα από ένα πρωτόκολλα ταυτόχρονα, ούτε μπορείτε να εκτελέσετε netstat με -p χωρίς να ορίσετε ένα πρωτόκολλο .

protocol = Όταν καθορίζετε ένα πρωτόκολλο με την επιλογή -p , μπορείτε να χρησιμοποιήσετε tcp , udp , tcpv6 ή udpv6 . Εάν χρησιμοποιείτε -s με -p για την προβολή στατιστικών στοιχείων βάσει πρωτοκόλλου, μπορείτε να χρησιμοποιήσετε τα icmp , ip , icmpv6 ή ipv6 εκτός από τα πρώτα τέσσερα που ανέφερα.

-r = Εκτελέστε netstat με -r για να εμφανίσετε τον πίνακα δρομολόγησης IP. Αυτό είναι το ίδιο με τη χρήση της εντολής διαδρομής για εκτέλεση εκτύπωσης διαδρομής .

-s = Η επιλογή -s μπορεί να χρησιμοποιηθεί με την εντολή netstat για την εμφάνιση λεπτομερών στατιστικών με βάση το πρωτόκολλο. Μπορείτε να περιορίσετε τα στατιστικά στοιχεία που εμφανίζονται σε ένα συγκεκριμένο πρωτόκολλο χρησιμοποιώντας την επιλογή -s και να καθορίσετε αυτό το πρωτόκολλο , αλλά βεβαιωθείτε ότι χρησιμοποιείτε -s πριν από το πρωτόκολλο -p όταν χρησιμοποιείτε τους διακόπτες μαζί.

-t = Χρησιμοποιήστε το διακόπτη -t για να εμφανίσετε την τρέχουσα κατάσταση φόρτωσης της καπνοδόχου TCP στη θέση της κατά κανόνα εμφανιζόμενης κατάστασης TCP.

-x = Χρησιμοποιήστε την επιλογή -x για να εμφανίσετε όλους τους ακροατές του NetworkDirect, τις συνδέσεις και τα κοινά τελικά σημεία.

-y = Ο διακόπτης -y μπορεί να χρησιμοποιηθεί για την εμφάνιση του προτύπου σύνδεσης TCP για όλες τις συνδέσεις. Δεν μπορείτε να χρησιμοποιήσετε -y με οποιαδήποτε άλλη επιλογή netstat.

time_interval = Αυτή είναι η ώρα, σε δευτερόλεπτα, που θέλετε η εντολή netstat να εκτελεστεί ξανά αυτόματα, σταματώντας μόνο όταν χρησιμοποιείτε το Ctrl-C για να τερματίσετε το βρόχο.

/? = Χρησιμοποιήστε το διακόπτη βοήθειας για να εμφανίσετε λεπτομέρειες σχετικά με τις διάφορες επιλογές της εντολής netstat.

Συμβουλή: Κάντε πιο εύκολη την επεξεργασία όλων των πληροφοριών netstat στη γραμμή εντολών, εξάγοντας αυτό που βλέπετε στην οθόνη σε ένα αρχείο κειμένου χρησιμοποιώντας έναν χειριστή ανακατεύθυνσης . Ανατρέξτε στην ενότητα Τρόπος ανακατεύθυνσης εξόδου εντολών σε ένα αρχείο για πλήρεις οδηγίες.

Παραδείγματα εντολών Netstat

netstat -f

Σε αυτό το πρώτο παράδειγμα, εκτελώ το netstat για να εμφανίσω όλες τις ενεργές συνδέσεις TCP. Ωστόσο, θέλω να δω τους υπολογιστές στους οποίους είμαι συνδεδεμένος σε μορφή FQDN [ -f ] αντί για μια απλή διεύθυνση IP.

Ακολουθεί ένα παράδειγμα αυτού που μπορεί να δείτε:

Active Connections Proto Τοπική διεύθυνση Εξωτερική κατάσταση διεύθυνσης TCP 127.0.0.1:5357 VM-Windows-7: 49229 TIME_WAIT TCP 127.0.0.1:49225 VM-Windows-7: 12080 TIME_WAIT TCP 192.168.1.14:49194 75.125.212.75:http CLOSE_WAIT TCP 192.168 .1.14: 49196 a795sm.avast.com:http CLOSE_WAIT TCP 192.168.1.14:49197 a795sm.avast.com:http CLOSE_WAIT TCP 192.168.1.14:49230 TIM-PC: wsd TIME_WAIT TCP 192.168.1.14:49231 TIM-PC: icslap ESTABLISHED TCP 192.168.1.14:49232 TIM-PC: netbios-ssn TIME_WAIT TCP 192.168.1.14:49233 TIM-PC: netbios-ssn TIME_WAIT TCP [:: 1]: 2869 VM-Windows-7: : 49226 VM-Windows-7: icslap ΕΓΚΑΤΑΣΤΑΣΗ

Όπως μπορείτε να δείτε, είχα 11 ενεργές συνδέσεις TCP τη στιγμή που εκτέλεσα netstat. Το μόνο πρωτόκολλο (στη στήλη Proto ) που αναγράφεται είναι το TCP, το οποίο αναμενόταν επειδή δεν χρησιμοποίησα το -a .

Μπορείτε επίσης να δείτε τρία σύνολα διευθύνσεων IP στη στήλη Τοπική διεύθυνση - την πραγματική διεύθυνση IP του 192.168.1.14 και τις εκδόσεις IPv4 και IPv6 των διευθύνσεων loopback μου, μαζί με τη θύρα που χρησιμοποιεί κάθε σύνδεση. Η στήλη Εξωτερική διεύθυνση παραθέτει το FQDN ( 75.125.212.75 δεν επιλύθηκε για κάποιο λόγο) μαζί με αυτό το λιμάνι επίσης.

Τέλος, η στήλη κράτους αναφέρει την κατάσταση TCP αυτής της συγκεκριμένης σύνδεσης.

netstat -o

Σε αυτό το παράδειγμα, θέλω να τρέχω κανονικά το netstat, ώστε να δείχνει μόνο ενεργές συνδέσεις TCP, αλλά θέλω επίσης να δω το αντίστοιχο αναγνωριστικό διεργασίας [ -o ] για κάθε σύνδεση, ώστε να μπορώ να καθορίσω ποιο πρόγραμμα στον υπολογιστή μου ξεκίνησε το καθένα.

Εδώ εμφανίζεται ο υπολογιστής μου:

Ενεργές συνδέσεις Proto Τοπική διεύθυνση Εξωτερική κατάσταση διεύθυνσης PID TCP 192.168.1.14:49194 75.125.212.75:http CLOSE_WAIT 2948 TCP 192.168.1.14:49196 a795sm: http CLOSE_WAIT 2948 TCP 192.168.1.14:49197 a795sm: http CLOSE_WAIT 2948

Ίσως έχετε παρατηρήσει τη νέα στήλη PID . Σε αυτήν την περίπτωση, τα PID είναι όλα τα ίδια, πράγμα που σημαίνει ότι το ίδιο πρόγραμμα στον υπολογιστή μου άνοιξε αυτές τις συνδέσεις.

Για να καθορίσω ποιο πρόγραμμα αντιπροσωπεύεται από το PID του 2948 στον υπολογιστή μου, το μόνο που έχω να κάνω είναι να ανοίξω Task Manager , να κάνω κλικ στην καρτέλα Processes και να σημειώσω το όνομα εικόνας που εμφανίζεται δίπλα στο PID που ψάχνω στη στήλη PID . 1

Η χρήση της εντολής netstat με την επιλογή -o μπορεί να είναι πολύ χρήσιμη όταν εντοπίζετε ποιο πρόγραμμα χρησιμοποιεί πολύ μεγάλο μερίδιο του εύρους ζώνης . Μπορεί επίσης να βοηθήσει στον εντοπισμό του προορισμού, όπου κάποιο είδος κακόβουλου λογισμικού , ή ακόμα και άλλου νόμιμου λογισμικού, ενδέχεται να στέλνει πληροφορίες χωρίς την άδειά σας.

Σημείωση: Ενώ το παρόν και το προηγούμενο παράδειγμα εκτελέστηκαν και στον ίδιο υπολογιστή και μέσα σε ένα λεπτό το ένα από το άλλο, μπορείτε να δείτε ότι η λίστα των ενεργών συνδέσεων TCP είναι σημαντικά διαφορετική. Αυτό συμβαίνει επειδή ο υπολογιστής σας συνδέεται συνεχώς και αποσυνδέεται από διάφορες άλλες συσκευές στο δίκτυό σας και μέσω του διαδικτύου.

netstat -s -p tcp -f

Σε αυτό το τρίτο παράδειγμα, θέλω να δω συγκεκριμένα στατιστικά στοιχεία για το πρωτόκολλο [ -s ], αλλά όχι όλα αυτά, μόνο TCP stats [ -p tcp ]. Θέλω επίσης τις ξένες διευθύνσεις να εμφανίζονται σε μορφή FQDN [ -f ].

Αυτό είναι που η εντολή netstat, όπως φαίνεται παραπάνω, παράγεται στον υπολογιστή μου:

Στατιστικά TCP για τα ενεργά ανοίγματα IPv4 = 77 Παθητικά ανοίγματα = 21 Αποτυχημένες προσπάθειες σύνδεσης = 2 Επαναφορά συνδέσεων = 25 Τρέχουσες συνδέσεις = 5 Τμήματα που ελήφθησαν = 7313 Τμήματα που στάλθηκαν = 4824 Αναμεταδόσιμα τμήματα = 5 Ενεργές συνδέσεις Proto Local Address Εξωτερική διεύθυνση TCP 127.0.0.1: 2869 VM-Windows-7: 49235 TIME_WAIT TCP 127.0.0.1:2869 VM-Windows-7: 49238 ESTABLISHED TCP 127.0.0.1:49238 VM-Windows-7: icslap ESTABLISHED TCP 192.168.1.14:49194 75.125.212.75:http CLOSE_WAIT TCP 192.168.1.14:49196 a795sm.avast.com:http CLOSE_WAIT TCP 192.168.1.14:49197 a795sm.avast.com:http CLOSE_WAIT

Όπως μπορείτε να δείτε, εμφανίζονται διάφορες στατιστικές για το πρωτόκολλο TCP, όπως και όλες οι ενεργές συνδέσεις TCP τη δεδομένη χρονική στιγμή.

netstat -e -t 5

Σε αυτό το τελικό παράδειγμα, εκτέλεσα την εντολή netstat για να δείξω μερικές βασικές στατιστικές διεπαφής δικτύου [ -e ] και θέλαμε να ενημερώνονται συνεχώς αυτά τα στατιστικά στοιχεία στο παράθυρο εντολών κάθε πέντε δευτερόλεπτα [ -t 5 ].

Εδώ είναι τι παράγεται στην οθόνη:

Στατιστικά διασύνδεσης που ελήφθησαν Απεσταλμένα Bytes 22132338 1846834 Πακέτα Unicast 19113 9869 Πακέτα μη ενιαίας διανομής 0 0 Απόρριψεις 0 0 Λάθη 0 0 Άγνωστα πρωτόκολλα 0 Στατιστικά διασύνδεσης που λήφθηκαν Απεσταλμένα αποστάματα 22134630 1846834 Πακέτα Unicast 19128 9869 Πακέτα μη ενιαίας διανομής 0 0 Απορρίψεις 0 0 Λάθη 0 0 Άγνωστα πρωτόκολλα 0 ° C

Εμφανίζονται διάφορα στοιχεία πληροφοριών, τα οποία μπορείτε να δείτε εδώ και αυτά που αναφέρονται στη σύνταξη -e παραπάνω.

Αφήνω μόνο την εντολή netstat να εκτελέσει αυτόματα ένα επιπλέον χρόνο, όπως μπορείτε να δείτε στους δύο πίνακες στο αποτέλεσμα. Σημειώστε το ^ C στο κάτω μέρος, υποδεικνύοντας ότι χρησιμοποίησα την εντολή Ctrl-C abort για να σταματήσω την εκ νέου εκτέλεση της εντολής.

Σχετικές εντολές Netstat

Η εντολή netstat χρησιμοποιείται συχνά με άλλες εντολές που σχετίζονται με τη δικτύωση, όπως nslookup, ping , tracert , ipconfig και άλλες.

[1] Μπορεί να χρειαστεί να προσθέσετε με μη αυτόματο τρόπο τη στήλη PID στο Task Manager. Μπορείτε να το κάνετε επιλέγοντας το πλαίσιο ελέγχου "PID (Process Identifier)" από το View -> Select Columns στο Task Manager. Ενδέχεται επίσης να χρειαστεί να κάνετε κλικ στο κουμπί "Εμφάνιση επεξεργασιών από όλους τους χρήστες" στην καρτέλα Διεργασίες, εάν το PID που αναζητάτε δεν παρατίθεται.