Aller au contenu
Administration Linux medium

Tester la connectivité réseau

8 min de lecture

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.

  • 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

ping envoie des paquets ICMP vers une cible et affiche le temps d’aller-retour :

Fenêtre de terminal
ping -c 4 8.8.8.8
Résultat
PING 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 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=11.8 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=12.1 ms
64 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 3004ms
rtt 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.
Fenêtre de terminal
ping -c 4 google.com

Si 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.

Avant de diagnostiquer un problème réseau, vérifiez que votre interface a bien une adresse IP :

Fenêtre de terminal
ip addr show
Résultat (extrait)
2: ens33: <BROADCAST,MULTICAST,UP> mtu 1500
inet 192.168.1.10/24 brd 192.168.1.255 scope global ens33

Vérifiez deux choses :

  • UP apparaît dans les flags : l’interface est active.
  • inet est suivi d’une adresse : la machine a une IP.

Si l’interface est DOWN :

Fenêtre de terminal
sudo ip link set ens33 up

Assurez-vous que la route par défaut existe :

Fenêtre de terminal
ip route show
Résultat
default via 192.168.1.1 dev ens33

Si cette ligne est absente, votre machine ne sait pas où envoyer le trafic vers Internet.

ss (socket statistics) remplace l’ancien netstat. Il affiche les connexions réseau et les ports en écoute :

Fenêtre de terminal
ss -tlnp
OptionRôle
-tTCP uniquement
-lPorts en écoute (listening)
-nAfficher les numéros de port (pas les noms)
-pAfficher le processus associé
Résultat (extrait)
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 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.

dig interroge les serveurs DNS pour traduire un nom en adresse IP :

Fenêtre de terminal
dig google.com
Résultat (extrait)
;; 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 :

Fenêtre de terminal
dig +short google.com
Résultat
142.250.179.110
Fenêtre de terminal
sudo apt install dnsutils

curl envoie une requête HTTP et affiche le résultat. C’est utile pour vérifier qu’un serveur web répond :

Fenêtre de terminal
curl -I http://localhost
Résultat
HTTP/1.1 200 OK
Server: nginx/1.24.0
Content-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 :

Fenêtre de terminal
curl -I https://blog.stephane-robert.info

traceroute affiche chaque routeur traversé entre votre machine et la destination :

Fenêtre de terminal
traceroute google.com
Résultat (extrait)
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 ms

Chaque ligne est un « saut » (hop). Si une ligne affiche * * *, ce routeur bloque les paquets ICMP ou ne répond pas.

Fenêtre de terminal
sudo apt install traceroute
CommandeRôle
ping -c 4 cibleTester la connectivité vers une cible
ip addr showVérifier ses interfaces et adresses IP
ip route showVérifier la passerelle par défaut
ss -tlnpLister les ports TCP en écoute
dig +short domaineRésoudre un nom DNS
curl -I urlTester un service HTTP
traceroute cibleTracer l’itinéraire réseau
SymptômeCause probableSolution
ping: connect: Network is unreachablePas de passerelle configuréeVérifier avec ip route show
ping: Name or service not knownRésolution DNS en échecTester ping 8.8.8.8 ; si ça marche, le DNS est en cause
100% packet loss avec pingPare-feu ou machine éteinteTester une autre cible, vérifier le pare-feu
ss -tlnp n’affiche rienAucun service en écouteNormal si rien n’est installé ; lancer un service (ex : sshd)
dig renvoie connection timed outServeur DNS injoignableVérifier /etc/resolv.conf et la connectivité réseau
curl: (7) Failed to connectLe service cible n’écoute pas ou pare-feu bloqueVérifier avec ss -tlnp sur la cible
  • ping est 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 addr vérifie les interfaces, ip route la passerelle.
  • ss -tlnp montre les ports en écoute sur votre machine.
  • dig et curl testent respectivement le DNS et les services HTTP.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn