Pourquoi cela se produit
ping utilise ICMP, tandis que SSH et HTTPS utilisent des ports TCP. Ces trafics sont distincts et un pare-feu peut rejeter l’un tout en laissant passer l’autre. De nombreux réseaux et groupes de sécurité cloud bloquent l’écho ICMP par défaut. Une absence de réponse ne signifie donc pas que le serveur est arrêté, et une réponse ne prouve pas que ses services fonctionnent.
Tester le service, pas ping
Vérifiez les ports et protocoles dont vous avez réellement besoin. Si les tests réussissent, le serveur est accessible pour ces services et l’échec de ping indique seulement la présence d’un filtre quelque part sur le trajet.
nc -vz -w 5 server.example 22
nc -vz -w 5 server.example 443
curl -sSI https://server.example/Tracer le chemin avec TCP
Un traceroute classique peut n’afficher que des astérisques lorsque ICMP ou UDP est filtré. Avec TCP vers un port ouvert, on peut souvent aller plus loin. Cela nécessite les droits root, et il faudra peut-être d’abord installer traceroute, car les systèmes minimaux ne l’incluent pas.
sudo traceroute -T -p 443 server.exampleRechercher le filtre sur votre serveur
Si vous administrez le serveur, examinez son pare-feu et le paramètre du noyau qui ignore les requêtes d’écho. N’oubliez pas que le blocage peut aussi se situer hors du serveur, dans un groupe de sécurité ou un routeur, et qu’un fournisseur peut filtrer ICMP sur son réseau sans qu’aucune règle ne vous soit visible.
sysctl net.ipv4.icmp_echo_ignore_all
sudo nft list ruleset | grep -i icmp
sudo ufw status verboseQuand le blocage d’ICMP provoque réellement des pannes
Bloquer l’écho est généralement sans conséquence, mais bloquer tout ICMP ne l’est pas. La découverte de la MTU du chemin dépend des messages signalant un paquet trop volumineux. Sans eux, les petits échanges fonctionnent et les gros se bloquent : par exemple, une connexion SSH réussit puis se fige lors d’une sortie volumineuse. IPv6 dépend encore davantage d’ICMPv6. La deuxième commande teste sous Linux un chemin pour une MTU de 1500 octets.
ip route get 192.0.2.10
ping -M do -s 1472 -c 3 192.0.2.10Comparaison dans CH-J Server Manager
Server Diagnostics exécute ping avec l’outil système, sans droits root, à côté de tests distincts de TCP, d’identification SSH, de HTTP et de TLS, pour interpréter l’échec de ping dans son contexte. Un échec de ping signifie ici qu’aucune réponse n’est arrivée. Il n’indique pas où le paquet a été rejeté, et traceroute ne permet pas forcément de le savoir non plus.