La commande netstat affiche les connexions réseau TCP/IP actuelles, les tables de routage, les statistiques d'interface, les connexions masquées et les appartenances à la multidiffusion. Le ss La commande fournit des statistiques de socket de vidage mais affiche également des informations similaires à netstat.
Un certain nombre d'options et d'arguments de ligne de commande existent, mais netstat affiche lui-même une liste de sockets ouverts. Les sockets sont l'interface entre le processus utilisateur et les piles de protocoles réseau dans le noyau. Les modules de protocole sont regroupés en familles de protocoles telles que AF_INET, AF_IPX et AF_PACKET, et en types de socket tels que SOCK_STREAM ou SOCK_DGRAM. Si vous ne spécifiez aucune famille d'adresses, les sockets actifs de toutes les familles d'adresses configurées sont imprimés.
Exemples d'utilisation de la commande netstat
Plusieurs options existent avec la commande netstat. Certaines des options les plus couramment utilisées sont répertoriées ci-dessous :
Options | Description |
---|---|
-A | Spécifiez la famille d'adresses. |
-r | Afficher la table de routage. |
-i | Afficher les informations sur l'interface réseau. |
-s | Afficher les statistiques récapitulatives pour chaque protocole. |
-g | Afficher les informations d'appartenance au groupe de multidiffusion. |
-n | Afficher les adresses IP au lieu des noms résolus. |
-c | Imprimer des informations toutes les secondes en continu. |
-e | Afficher des informations étendues. |
1. Spécification de la famille d'adresses
Pour spécifier les familles d'adresses (protocoles de bas niveau) pour lesquelles les connexions doivent être affichées, utilisez l'option -A suivie d'une liste de mots clés de famille d'adresses séparés par des virgules. Les mots clés de famille d'adresses possibles sont inet, inet6, unix, ipx, ax25, netrom et ddp. Exemple :
# netstat -A unix Active UNIX domain sockets (w/o servers) Proto RefCnt Flags Type State I-Node Path unix 2 [ ] DGRAM 13229 @/org/freedesktop/hal/udev_event unix 2 [ ] DGRAM 972047754 @/org/kernel/udev/udevd unix 2 [ ] DGRAM 29633 /var/opt/OV/tmp/ovcd.sock unix 20 [ ] DGRAM 972084949 /dev/log unix 2 [ ] DGRAM 1603505216 unix 2 [ ] DGRAM 1603410473 unix 2 [ ] DGRAM 1603410454 unix 3 [ ] STREAM CONNECTED 1603410341 unix 3 [ ] STREAM CONNECTED 1603410340
2. Afficher la table de routage du noyau
Utilisez le -r ou –route option pour afficher la table de routage du noyau.
# netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 link-local * 255.255.0.0 U 0 0 0 eth0 default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
3. Afficher la table d'interface du noyau pour une interface spécifique
Afficher un tableau de toutes les interfaces réseau ou de l'iface spécifié à l'aide des options -i [pour toutes les interfaces] ou -I=[ifname] [ pour une interface spécifique]. Des exemples des deux options sont affichés ci-dessous.
# netstat -I=eth0 Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 1318844666 0 0 0 682418030 0 0 0 BMRU
# netstat -i Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 1318847618 0 0 0 682419336 0 0 0 BMRU lo 65536 0 1297056515 0 0 0 1297056515 0 0 0 LRU
4. Afficher des statistiques récapitulatives pour chaque protocole
Vous pouvez afficher un résumé des statistiques pour chaque protocole en utilisant l'option -s ou –statistiques .
# netstat -s Ip: 67012 total packets received 0 forwarded 0 incoming packets discarded 66996 incoming packets delivered 36916 requests sent out 18 outgoing packets dropped Icmp: 59 ICMP messages received 0 input ICMP message failed. ICMP input histogram: destination unreachable: 36 echo requests: 23 59 ICMP messages sent ....
5. Afficher les ports à l'écoute de l'entrée
Pour afficher tous les ports sur lesquels un processus écoute actuellement une entrée, utilisez l'option -l ou –écouter comme indiqué ci-dessous.
# netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN tcp 0 0 localhost:findviatv 0.0.0.0:* LISTEN tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:ms-wbt-server 0.0.0.0:* LISTEN ....
6. Afficher les informations d'adhésion au groupe de multidiffusion
Le -g ou –groupes options, affichez les informations d'appartenance au groupe de multidiffusion pour IPv4 et IPv6. L'exemple de l'option suit ci-dessous.
# netstat -g IPv6/IPv4 Group Memberships Interface RefCnt Group --------------- ------ --------------------- lo 1 all-systems.mcast.net eth0 1 all-systems.mcast.net lo 1 ff02::1 lo 1 ff01::1 eth0 1 ff02::1:ff84:1048 eth0 1 ff02::1 eth0 1 ff01::1
Quelques options supplémentaires à utiliser avec netstat
Le tableau ci-dessous répertorie d'autres options qui peuvent être utilisées avec la commande netstat pour recueillir plus de données d'information sur l'extrémité du réseau.
Option | Description |
---|---|
-n ou –numérique | Afficher les adresses IP au lieu des noms résolus. |
-c ou –continu | Imprimer des informations toutes les secondes en continu. |
-e ou –extend | Afficher des informations supplémentaires. Utilisez cette option deux fois pour un maximum de détails. |
-p ou –programme | Afficher le PID et le nom du programme auquel appartient chaque socket. |
Toute option ou argument non valide affiche un écran d'aide répertoriant l'utilisation et une brève description des options disponibles.