Menu
Coddy logo textTech

pingが嘘をつくとき

Coddyの「ターミナルで学ぶネットワーク」コースのレッスン 17/47。

Ping は、誰もが最初に試すものですが、答えられる質問は多くの人が考えるよりも限定的です。それはマシンが稼働していることを示します。実際に必要としているものが動作しているかどうかについては、何も示しません。

サーバーはすべての ping に完璧に応答しながら、その上で動作している Web サーバーがクラッシュしていることがあります。マシンは稼働中でも、サービスは停止中です。Ping はサービスと通信することがないため、この違いを見分けられません。

逆方向にも誤解を招きます。多くのホストはICMP を完全に無視するよう設定されているため、トラフィックを問題なく処理しているマシンに対しても、ping は 100 パーセントの損失を報告します。ping の失敗は、何かに問題がある証拠ではありません。

つまり、ping は診断の階段の最初の一歩であって、診断のすべてではありません。二歩目は、ポート自体に問い合わせることです。

challenge icon

チャレンジ

中級

ping では確認できない、まさにその状況を示します。応答するマシンですが、ポートでは何もサービスを提供していません。

127.0.0.1 に対して、サーバーをまったく起動せずに実行します。

  1. 1 回 ping を実行し、host up と出力する
  2. nc -z でポート 9999 を確認し、port closed と出力する

期待される出力:

host up
port closed

マシンが稼働していることは明らかです。まさにそこがポイントです。稼働していることと、サービスを提供していることは同じではありません。

自分で試してみよう

ターミナル
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ターミナルで学ぶネットワークのすべてのレッスン

自分で練習してみよう: Terminalプレイグラウンド