導入
「サーバーにつながらない」——そんなとき最初に打つのが ping です。相手のホストへ小さなデータを送り、返ってくるかどうかで 通信が届いているか(TCP/IP のインターネット層が生きているか)を確かめます。ネットワーク調査のいちばん最初の一手です。
説明
ping ホスト名 で疎通を確認します。本物の ping は止めるまで送り続けるので、回数を決める -c(count)を付けるのが実用的です。
ping -c 4 becomecoder
各行の time=...ms が 往復にかかった時間(応答の速さ)です。小さいほど速く、返事が来ていれば「届いている」と分かります。最後の統計行では、送った数・返ってきた数・packet loss(届かなかった割合)が出ます。0.0% packet loss なら健全です。
IP アドレスを直接指定することもできます。自分自身(localhost)に届くかは、こう確かめます。
ping -c 2 127.0.0.1
存在しない名前に打つと、ping は「名前を解決できない(住所が分からない)」と教えてくれます。これは次のレッスンの DNS の話につながります。
ping -c 2 example.com
返事が返らない(
packet lossが高い)ときは、相手が落ちている・経路が切れている・ファイアウォールで弾かれている、などが疑われます。pingは「どこまで届くか」の切り分けに使う道具です。レッスン24で学んだ通り、「まずping(下の層)が通るか→次にcurl(上の層)」の順で調べます。
やってみよう
ping -c 4 becomecoder を打って、4回分の応答と最後の統計(0.0% packet loss)が出ることを確認しましょう。ping -c 2 127.0.0.1 で自分自身にも届くこと、-c の数字を変えると応答の行数が変わることも試してください。
演習
becomecoder に対して 3回だけ ping を送ってください。
ヒント1を見る
回数の指定は -c(count)です。
ヒント2を見る
ping -c 3 becomecoder