De ce se întâmplă acest lucru
ping folosește ICMP, în timp ce SSH și HTTPS folosesc porturi TCP. Sunt tipuri de trafic separate, iar un firewall poate elimina unul și îl poate permite pe celălalt. Multe rețele și grupuri de securitate din cloud blochează implicit ICMP echo. Prin urmare, lipsa unui răspuns nu înseamnă că serverul este oprit, iar un răspuns nu dovedește că serviciile lui funcționează.
Testează serviciul, nu ping
Verifică porturile și protocoalele de care ai cu adevărat nevoie. Dacă aceste teste reușesc, serverul este accesibil pentru acele servicii, iar eșecul ping indică doar un filtru undeva pe traseu.
nc -vz -w 5 server.example 22
nc -vz -w 5 server.example 443
curl -sSI https://server.example/Urmărește traseul cu TCP
Un traceroute clasic poate afișa doar asteriscuri când ICMP sau UDP este filtrat. Cu TCP către un port deschis, poți adesea ajunge mai departe. Ai nevoie de drepturi root și poate fi necesar să instalezi mai întâi traceroute, deoarece sistemele minimale nu îl includ.
sudo traceroute -T -p 443 server.exampleCaută filtrul pe serverul tău
Dacă administrezi serverul, verifică firewallul lui și setarea din nucleu care ignoră cererile echo. Reține că blocarea poate fi și în afara serverului, într-un grup de securitate sau într-un router, și că un furnizor poate filtra ICMP în rețeaua sa fără să vezi vreo regulă.
sysctl net.ipv4.icmp_echo_ignore_all
sudo nft list ruleset | grep -i icmp
sudo ufw status verboseCând blocarea ICMP chiar provoacă defecțiuni
Blocarea echo este în general inofensivă, dar blocarea întregului trafic ICMP nu este. Descoperirea MTU pe traseu se bazează pe mesajele care semnalează un pachet prea mare. Fără ele, schimburile mici de date funcționează, iar cele mari se blochează, de exemplu, o autentificare SSH care reușește, dar apoi se blochează la afișarea unui volum mare de date. IPv6 depinde și mai mult de ICMPv6. A doua comandă testează un traseu pentru un MTU de 1500 de octeți pe Linux.
ip route get 192.0.2.10
ping -M do -s 1472 -c 3 192.0.2.10Comparație în CH-J Server Manager
Server Diagnostics rulează ping prin instrumentul sistemului, fără drepturi root, alături de teste separate pentru TCP, identificare SSH, HTTP și TLS, astfel încât eșecul ping să poată fi interpretat în context. Un ping eșuat aici înseamnă că nu a sosit niciun răspuns. Nu arată unde a fost eliminat pachetul, iar nici traceroute nu poate oferi întotdeauna răspunsul.