Mengapa ini berlaku
ping menggunakan ICMP, manakala SSH dan HTTPS menggunakan port TCP. Ini ialah trafik yang berasingan, dan firewall boleh menggugurkan satu jenis sambil membenarkan jenis yang lain. Banyak rangkaian dan kumpulan keselamatan awan menyekat ICMP echo secara lalai. Oleh itu, ketiadaan balasan tidak bermakna pelayan terhenti, dan balasan pula tidak membuktikan perkhidmatannya berfungsi.
Uji perkhidmatan, bukan ping
Semak port dan protokol yang benar-benar anda perlukan. Jika ujian ini berjaya, pelayan boleh dicapai untuk perkhidmatan tersebut dan ping yang gagal hanya menunjukkan adanya penapis di suatu tempat pada laluan.
nc -vz -w 5 server.example 22
nc -vz -w 5 server.example 443
curl -sSI https://server.example/Jejak laluan dengan TCP
traceroute biasa mungkin hanya menunjukkan tanda asterisk apabila ICMP atau UDP ditapis. Dengan TCP ke port yang terbuka, anda selalunya dapat menjejak lebih jauh. Ini memerlukan root, dan traceroute mungkin perlu dipasang dahulu kerana sistem minimum tidak menyertakannya.
sudo traceroute -T -p 443 server.exampleCari penapis pada pelayan anda
Jika anda mengurus pelayan itu, lihat firewall dan tetapan kernel yang mengabaikan permintaan echo. Ingat bahawa sekatan mungkin juga berada di luar pelayan, dalam kumpulan keselamatan atau penghala, dan penyedia mungkin menapis ICMP pada rangkaiannya tanpa anda melihat peraturan itu.
sysctl net.ipv4.icmp_echo_ignore_all
sudo nft list ruleset | grep -i icmp
sudo ufw status verboseBila sekatan ICMP benar-benar menyebabkan masalah
Menyekat echo kebanyakannya tidak memudaratkan, tetapi menyekat semua ICMP bukan begitu. Penemuan MTU laluan bergantung pada mesej yang menyatakan paket terlalu besar. Tanpanya, pertukaran kecil berfungsi tetapi pertukaran besar tergantung, contohnya log masuk SSH berjaya kemudian tergantung apabila keluarannya besar. IPv6 lebih bergantung pada ICMPv6. Perintah kedua menguji laluan untuk MTU 1500 bait pada Linux.
ip route get 192.0.2.10
ping -M do -s 1472 -c 3 192.0.2.10Membandingkan ujian dalam CH-J Server Manager
Server Diagnostics menjalankan ping melalui alat sistem, tanpa root, bersama ujian TCP, pengenalan SSH, HTTP dan TLS yang berasingan, supaya kegagalan ping dapat ditafsirkan dalam konteks. Kegagalan ping di situ bermakna tiada balasan tiba. Ia tidak menyatakan tempat paket digugurkan, dan traceroute juga mungkin tidak dapat menjawabnya.