Skip to main content

Comment utiliser la commande Netstat

La commande netstat est une commande d'invite permettant d'afficher très des informations détaillées sur la manière dont votre ordinateur communique avec d'autres ordinateurs ou périphériques réseau.

En particulier, la commande netstat peut afficher des détails sur les connexions réseau individuelles, les statistiques de réseau globales et spécifiques à un protocole, et bien plus encore, ce qui peut aider à résoudre certains types de problèmes de réseau.

Disponibilité de la commande Netstat

La commande netstat est disponible à partir de l'invite de commande dans la plupart des versions de Windows, y compris Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, les systèmes d'exploitation Windows Server et certaines versions plus anciennes de Windows.

La disponibilité de certains commutateurs de commande netstat et de la syntaxe de commande netstat peut différer d'un système d'exploitation à l'autre.

Syntaxe de la commande Netstat

netstat [-une] [-b] [-e] [-F] [-n] [-o] [-p protocole] [-r] [-s] [-t] [-X] [-y] [intervalle de temps] [/?]

Comment lire la syntaxe de commande

Exécutez la commande netstat seule pour afficher une liste relativement simple de toutes les connexions TCP actives qui, pour chacune d’elles, afficheront l’adresse IP locale (votre ordinateur), l’adresse IP étrangère (l’autre ordinateur ou le périphérique réseau), ainsi que leurs noms respectifs. les numéros de port, ainsi que l'état TCP.

-une = Ce commutateur affiche les connexions TCP actives, les connexions TCP avec l'état d'écoute, ainsi que les ports UDP en cours d'écoute.

-b = Ce commutateur netstat est très similaire au -o Le commutateur répertorié ci-dessous, mais au lieu d’afficher le PID, affichera le nom de fichier actuel du processus. En utilisant -b plus de -o Cela peut sembler vous épargner une ou deux étapes, mais son utilisation peut parfois allonger considérablement le temps nécessaire à l'exécution de netstat.

-e = Utilisez ce commutateur avec la commande netstat pour afficher des statistiques sur votre connexion réseau. Ces données comprennent les octets, les paquets unicast, les paquets non unicast, les rejets, les erreurs et les protocoles inconnus reçus et envoyés depuis l'établissement de la connexion.

-F = Le -F switch forcera la commande netstat à afficher le nom de domaine complet (FQDN) pour chaque adresse IP étrangère lorsque cela est possible.

-n = Utilisez le -n commutateur pour empêcher netstat de tenter de déterminer les noms d’hôte pour les adresses IP étrangères. En fonction de vos connexions réseau actuelles, l’utilisation de ce commutateur pourrait réduire considérablement le temps nécessaire à l’exécution complète de netstat.

-o = Une option pratique pour de nombreuses tâches de dépannage, le -o Le commutateur affiche l'identificateur de processus (PID) associé à chaque connexion affichée. Voir l'exemple ci-dessous pour plus d'informations sur l'utilisation de netstat -o.

-p = Utilisez le -p passer à afficher les connexions ou les statistiques uniquement pour un particulier protocole. Vous ne pouvez pas définir plus d'un protocole à la fois, vous ne pouvez pas non plus exécuter netstat avec -p sans définir un protocole.

protocole = Lorsque vous spécifiez un protocole avec le -p option, vous pouvez utiliser tcp, UDP, tcpv6, ou udpv6. Si tu utilises -s avec -p pour afficher les statistiques par protocole, vous pouvez utiliser icmp, ip, icmpv6, ou ipv6 en plus des quatre premiers que j'ai mentionnés.

-r = Exécuter netstat avec -r pour afficher la table de routage IP. Cela revient à utiliser la commande route pour exécuter itinéraire d'impression.

-s = Le -s Cette option peut être utilisée avec la commande netstat pour afficher des statistiques détaillées par protocole. Vous pouvez limiter les statistiques affichées à un protocole particulier en utilisant le -s option et en spécifiant que protocole, mais assurez-vous d'utiliser -s avant -p protocole lorsque vous utilisez les interrupteurs ensemble.

-t = Utilisez le -t switch pour afficher l’état actuel de déchargement de la cheminée TCP à la place de l’état TCP généralement affiché.

-X = Utilisez le -X possibilité d'afficher tous les écouteurs NetworkDirect, les connexions et les points de terminaison partagés.

-y = Le -y switch peut être utilisé pour afficher le modèle de connexion TCP pour toutes les connexions. Vous ne pouvez pas utiliser -y avec toute autre option netstat.

intervalle de temps = Il s'agit du temps, en secondes, pendant lequel vous souhaitez que la commande netstat soit réexécutée automatiquement, en vous arrêtant uniquement lorsque vous utilisez Ctrl-C pour terminer la boucle.

/? = Utilisez le commutateur d'aide pour afficher des détails sur les différentes options de la commande netstat.

Utilisez plus facilement toutes les informations netstat de la ligne de commande en générant ce que vous voyez à l'écran dans un fichier texte à l'aide d'un opérateur de redirection. Voir Comment rediriger la sortie de la commande dans un fichier pour des instructions complètes.

Exemples de commandes Netstat

netstat -f

Dans ce premier exemple, j'exécute netstat pour afficher toutes les connexions TCP actives. Cependant, je souhaite voir les ordinateurs auxquels je suis connecté au format FQDN [-F] au lieu d'une simple adresse IP.

Voici un exemple de ce que vous pourriez voir:

Connexions actives Adresse locale du proto Adresse étrangère 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 ESTABLISHED TCP [:: 1]: 49226 VM-Windows-7: icslap ESTABLISHED

Comme vous pouvez le constater, il y avait 11 connexions TCP actives au moment de l'exécution de netstat dans cet exemple. Le seul protocole (dans le Proto colonne) indiquée est TCP, ce qui était prévu car je n’ai pas utilisé -une.

Vous pouvez également voir trois ensembles d’adresses IP dans Adresse locale colonne: mon adresse IP réelle de 192.168.1.14 et les versions IPv4 et IPv6 de mes adresses de bouclage, ainsi que le port utilisé par chaque connexion. le adresse étrangère la colonne répertorie le nom de domaine complet (75.125.212.75 pas résolu pour une raison quelconque) avec ce port aussi.

Finalement, le Etat La colonne répertorie l'état TCP de cette connexion particulière.

netstat -o

Dans cet exemple, netstat sera exécuté normalement afin de ne montrer que les connexions TCP actives, mais nous souhaitons également voir l'identificateur de processus correspondant [-o] pour chaque connexion afin que nous puissions déterminer quel programme de l'ordinateur a initié chacune d'entre elles.

Voici ce que l'ordinateur affiche:

Connexions actives Adresse locale du proto Adresse étrangère Adresse 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

Vous avez probablement remarqué le nouveau PID colonne. Dans ce cas, les PID sont tous identiques, ce qui signifie que le même programme sur mon ordinateur a ouvert ces connexions.

Pour déterminer quel programme est représenté par le PID de 2948 sur l'ordinateur, tout ce que vous avez à faire est d'ouvrir le Gestionnaire des tâches, cliquez sur l'icône Les processus onglet, et notez le Nom de l'image énumérés à côté du PID que je cherche dans le PID colonne.1

Utilisation de la commande netstat avec le -o Cette option peut s'avérer très utile pour déterminer quel programme utilise une part trop importante de votre bande passante. Cela peut également vous aider à localiser la destination où un type de malware, voire un logiciel légitime, pourrait envoyer des informations sans votre permission.

Cet exemple et l'exemple précédent ont tous deux été exécutés sur le même ordinateur et à une minute d'intervalle près, mais vous pouvez constater que la liste des connexions TCP actives est très différente. En effet, votre ordinateur se connecte et se déconnecte en permanence de divers autres périphériques sur votre réseau et sur Internet.

netstat -s -p tcp -f

Dans ce troisième exemple, nous voulons voir des statistiques spécifiques à un protocole [-s] mais pas tous, juste des statistiques TCP [-p tcp]. Nous voulons également que les adresses étrangères soient affichées au format FQDN [-F].

Voici ce que la commande netstat, illustrée ci-dessus, a généré sur l'ordinateur exemple:

Statistiques TCP pour IPv4 Ouvert actif = 77 Passif ouvre = 21 Échec des tentatives de connexion = 2 Réinitialiser les connexions = 25 Connexions actuelles = 5 Segments reçus = 7313 Segments envoyés = 4824 Segments retransmis = 5Connexions actives Adresse locale du proto Adresse étrangère 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

Comme vous pouvez le constater, diverses statistiques relatives au protocole TCP sont affichées, de même que toutes les connexions TCP actives à la fois.

netstat -e -t 5

Dans ce dernier exemple, la commande netstat est exécutée pour afficher des statistiques de base sur l’interface réseau [-e] et que ces statistiques soient continuellement mises à jour dans la fenêtre de commande toutes les cinq secondes [-t 5].

Voici ce qui est produit à l'écran:

Statistiques d'interface Reçu envoyé Octets 22132338 1846834 Paquets de monodiffusion 19113 9869 Paquets non monodiffusés 0 0 Rejets 0 0 Erreurs 0 0 Protocoles inconnus 0Statistiques d'interface Reçu envoyé Octets 22134630 1846834 Paquets de monodiffusion 19128 9869 Paquets non monodiffusés 0 0 Rejets 0 0 Erreurs 0 0 Protocoles inconnus 0^ C

Diverses informations, que vous pouvez voir ici et que j’ai énumérées dans le -e syntaxe ci-dessus, sont affichés.

La commande netstat ne s’exécute automatiquement qu’une fois de plus, comme le montrent les deux tables du résultat. Noter la ^ C en bas, indiquant que la commande d'abandon Ctrl-C a été utilisée pour arrêter la réexécution de la commande.

Commandes liées à Netstat

La commande netstat est souvent utilisée avec d'autres commandes d'invite de commandes liées au réseau, telles que nslookup, ping, tracert, ipconfig, etc.

[1] Vous devrez peut-être ajouter manuellement la colonne PID au gestionnaire de tâches. Pour ce faire, cochez la case "PID (Process Identifier)" dans View -> Select Columns dans le gestionnaire de tâches. Vous devrez peut-être également cliquer sur le bouton "Afficher les processus de tous les utilisateurs" dans l'onglet Processus si le PID que vous recherchez ne figure pas dans la liste.