ping est la première commande à lancer quand le réseau ne répond pas.
Elle envoie un petit paquet vers une cible et mesure le temps de réponse. Ce
guide regroupe les outils de diagnostic réseau indispensables pour un débutant.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Tester la connectivité avec
ping - Vérifier ses interfaces avec
ip addr - Lister les ports ouverts avec
ss - Résoudre un nom DNS avec
dig - Tester un service HTTP avec
curl
Tester la connectivité avec ping
Section intitulée « Tester la connectivité avec ping »ping envoie des paquets ICMP vers une cible et affiche le temps
d’aller-retour :
ping -c 4 8.8.8.8PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=12.3 ms64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=11.8 ms64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=12.1 ms64 bytes from 8.8.8.8: icmp_seq=4 ttl=117 time=11.9 ms
--- 8.8.8.8 ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 3004msrtt min/avg/max/mdev = 11.800/12.025/12.300/0.183 ms-c 4: envoie exactement 4 paquets (sans-c, ping tourne indéfiniment).0% packet loss: tout fonctionne.time=12.3 ms: temps d’aller-retour en millisecondes.
Tester avec un nom de domaine
Section intitulée « Tester avec un nom de domaine »ping -c 4 google.comSi ping 8.8.8.8 fonctionne mais ping google.com échoue, le problème est
lié au DNS, pas au réseau lui-même.
Vérifier ses interfaces avec ip addr
Section intitulée « Vérifier ses interfaces avec ip addr »Avant de diagnostiquer un problème réseau, vérifiez que votre interface a bien une adresse IP :
ip addr show2: ens33: <BROADCAST,MULTICAST,UP> mtu 1500 inet 192.168.1.10/24 brd 192.168.1.255 scope global ens33Vérifiez deux choses :
UPapparaît dans les flags : l’interface est active.inetest suivi d’une adresse : la machine a une IP.
Si l’interface est DOWN :
sudo ip link set ens33 upVérifier la passerelle
Section intitulée « Vérifier la passerelle »Assurez-vous que la route par défaut existe :
ip route showdefault via 192.168.1.1 dev ens33Si cette ligne est absente, votre machine ne sait pas où envoyer le trafic vers Internet.
Lister les ports ouverts avec ss
Section intitulée « Lister les ports ouverts avec ss »ss (socket statistics) remplace l’ancien netstat. Il affiche les connexions
réseau et les ports en écoute :
ss -tlnp| Option | Rôle |
|---|---|
-t | TCP uniquement |
-l | Ports en écoute (listening) |
-n | Afficher les numéros de port (pas les noms) |
-p | Afficher le processus associé |
State Recv-Q Send-Q Local Address:Port Peer Address:Port ProcessLISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=850,fd=3))LISTEN 0 511 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1200,fd=6))Ici, SSH écoute sur le port 22 et Nginx sur le port 80.
Résoudre un nom DNS avec dig
Section intitulée « Résoudre un nom DNS avec dig »dig interroge les serveurs DNS pour traduire un nom en adresse IP :
dig google.com;; ANSWER SECTION:google.com. 300 IN A 142.250.179.110
;; Query time: 15 msec;; SERVER: 192.168.1.1#53(192.168.1.1)ANSWER SECTION: la réponse du DNS.A: enregistrement IPv4.SERVER: le serveur DNS qui a répondu.
Pour une réponse courte :
dig +short google.com142.250.179.110sudo apt install dnsutilssudo dnf install bind-utilsTester un service HTTP avec curl
Section intitulée « Tester un service HTTP avec curl »curl envoie une requête HTTP et affiche le résultat. C’est utile pour
vérifier qu’un serveur web répond :
curl -I http://localhostHTTP/1.1 200 OKServer: nginx/1.24.0Content-Type: text/html-I: affiche uniquement les en-têtes (pas le contenu complet).200 OK: le serveur répond correctement.
Pour tester un site distant :
curl -I https://blog.stephane-robert.infoTracer la route avec traceroute
Section intitulée « Tracer la route avec traceroute »traceroute affiche chaque routeur traversé entre votre machine et la
destination :
traceroute google.com 1 192.168.1.1 (192.168.1.1) 1.234 ms 2 10.0.0.1 (10.0.0.1) 5.678 ms 3 72.14.216.8 (72.14.216.8) 12.345 msChaque ligne est un « saut » (hop). Si une ligne affiche * * *, ce routeur
bloque les paquets ICMP ou ne répond pas.
sudo apt install traceroutesudo dnf install tracerouteRécapitulatif des commandes
Section intitulée « Récapitulatif des commandes »| Commande | Rôle |
|---|---|
ping -c 4 cible | Tester la connectivité vers une cible |
ip addr show | Vérifier ses interfaces et adresses IP |
ip route show | Vérifier la passerelle par défaut |
ss -tlnp | Lister les ports TCP en écoute |
dig +short domaine | Résoudre un nom DNS |
curl -I url | Tester un service HTTP |
traceroute cible | Tracer l’itinéraire réseau |
Dépannage
Section intitulée « Dépannage »| Symptôme | Cause probable | Solution |
|---|---|---|
ping: connect: Network is unreachable | Pas de passerelle configurée | Vérifier avec ip route show |
ping: Name or service not known | Résolution DNS en échec | Tester ping 8.8.8.8 ; si ça marche, le DNS est en cause |
100% packet loss avec ping | Pare-feu ou machine éteinte | Tester une autre cible, vérifier le pare-feu |
ss -tlnp n’affiche rien | Aucun service en écoute | Normal si rien n’est installé ; lancer un service (ex : sshd) |
dig renvoie connection timed out | Serveur DNS injoignable | Vérifier /etc/resolv.conf et la connectivité réseau |
curl: (7) Failed to connect | Le service cible n’écoute pas ou pare-feu bloque | Vérifier avec ss -tlnp sur la cible |
À retenir
Section intitulée « À retenir »pingest le premier réflexe pour tester la connectivité.- Testez d’abord en IP (
8.8.8.8), puis en nom (google.com) pour isoler un problème DNS. ip addrvérifie les interfaces,ip routela passerelle.ss -tlnpmontre les ports en écoute sur votre machine.digetcurltestent respectivement le DNS et les services HTTP.