Outils de diagnostic réseau
Définition
Les outils de diagnostic réseau permettent d'observer ce qui se passe sur la carte réseau d'une machine : ports ouverts, résolution de noms, trafic capturé. netstat, nslookup, tcpdump et Wireshark couvrent la majorité des besoins courants.
netstat : les connexions et les ports
netstat affiche les connexions actives, les ports en écoute et les tables de routage.
netstat -a liste toutes les connexions. netstat -tulpn ajoute les ports TCP/UDP en écoute avec le processus propriétaire (option -p).
Un port en écoute (LISTEN) attend des connexions. Un port ESTABLISHED correspond à une connexion active. Quand un technicien demande si le service tourne, netstat répond en montrant le port ouvert et le processus.
nslookup : la résolution de noms
nslookup interroge les serveurs DNS. nslookup www.example.com renvoie l'adresse IP associée.
Le mode interactif permet d'enchaîner les requêtes : nslookup, puis serveur 8.8.8.8 pour changer de résolveur, puis www.example.com.
Un échec de résolution peut venir du DNS ou du client. Tester avec un autre résolveur (1.1.1.1, 8.8.8.8) sépare les deux causes.
tcpdump : la capture de paquets
tcpdump capture les paquets qui traversent une interface réseau.
tcpdump -i eth0 capture sur l'interface eth0. tcpdump -i eth0 port 80 ne garde que le trafic HTTP. tcpdump -n affiche les adresses sans résolution DNS, plus rapide et plus fiable.
La capture demande les droits root. Sur un réseau partagé, tcpdump ne voit que le trafic destiné à la machine, sauf en mode promiscuité.
Wireshark : l'analyse graphique
Wireshark fait la même capture que tcpdump avec une interface graphique : filtres d'affichage, suivi de flux TCP, décodage des protocoles.
Un filtre d'affichage s'écrit en langage de filtre, par exemple http.request ou dns.qry.name == "example.com". Wireshark sert à comprendre un échange complet, pas seulement à détecter qu'il existe.
Exemple concret
Un utilisateur ne peut pas ouvrir le site web de l'entreprise. Le technicien lance nslookup : le nom résout correctement. Il lance netstat -tulpn : le port 443 n'apparaît pas en écoute. Le problème est côté serveur, pas côté DNS. tcpdump confirme qu'aucun paquet SYN n'arrive sur le port 443.