ping は相手のホストに届くかどうかを確かめるコマンドです。`-c` で回数を決める書き方、出力の読み方、返ってこないときの切り分け方を、ブラウザ上のターミナルで打ちながら確認できます。
最終更新: 2026-09-11
ping [-c 回数] ホスト
小さなパケットを送り、返ってくるかどうかを確かめます。
回数を決めて打つのが基本です。
$ ping -c 3 example.com
PING example.com (140.32.182.253) 56(84) bytes of data.
64 bytes from 140.32.182.253: icmp_seq=1 ttl=55 time=25.3 ms
64 bytes from 140.32.182.253: icmp_seq=2 ttl=55 time=22.6 ms
64 bytes from 140.32.182.253: icmp_seq=3 ttl=55 time=26.2 ms
--- example.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 22.647/24.713/26.172/1.502 ms
-c 3 は「3回送って終わる」という意味です。
付けないと止めるまで送り続けるので、まずはこの形で打つのが確実です。
| 場所 | 分かること |
|---|---|
1行目の (140.32.182.253) | 名前がどの IP に解決されたか |
icmp_seq | 何回目のパケットか。抜けていれば落ちている |
time=25.3 ms | 往復にかかった時間 |
0% packet loss | 送った数のうち、返ってこなかった割合 |
rtt min/avg/max | 往復時間の最小・平均・最大 |
見るのはこの2つです。
packet loss が0%でなければ届いていない、time が普段より大きければ遅い。
名前ではなくアドレスをそのまま渡せます。
$ ping -c 2 10.0.0.5
PING 10.0.0.5 (10.0.0.5) 56(84) bytes of data.
64 bytes from 10.0.0.5: icmp_seq=1 ttl=64 time=1.08 ms
64 bytes from 10.0.0.5: icmp_seq=2 ttl=64 time=1.31 ms
--- 10.0.0.5 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1003ms
rtt min/avg/max/mdev = 1.076/1.194/1.312/0.118 ms
自分自身に届くかは localhost です。
$ ping -c 1 localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.060 ms
--- localhost ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.060/0.060/0.060/0.000 ms
そもそも名前を IP に変換できないと、パケットを送る前に止まります。
$ ping nosuchname
ping: nosuchname: Name or service not known
これは通信の問題ではなく名前解決の問題です。 同じ相手に IP アドレスで ping が通るなら、DNS の設定を疑ってください。
ping は、つながらないと言われたときの一段目に打つコマンドです。
| 場面 | 打ち方 |
|---|---|
| 相手に届くか確かめる | ping -c 3 server.example.com |
| 名前解決の問題か切り分ける | 名前で失敗 → ping -c 3 10.0.0.5 を試す |
| 回線の遅さを見る | ping -c 10 8.8.8.8 して time の平均を見る |
| 自分のネットワーク設定を確かめる | ping -c 1 localhost |
届くと分かったら、次は curl でアプリの応答を確かめる。
この順で切り分けると、どこで止まっているかが早く分かります。
-c を付けないと止まりません。
既定では送り続けます。
Ctrl+C で止められますが、最初から -c 3 と書くほうが楽です。
ping が通らない=落ちている、ではありません。 ICMP を落とす設定のサーバーやクラウドは珍しくありません。 「ping は返らないが Web は動いている」は普通に起こります。
ping が通る=アプリが動いている、でもありません。
ping で分かるのは経路の話までです。
サービスが応えるかは curl、ログインできるかは ssh で確かめてください。
回数の指定は1以上です。
$ ping -c 0 example.com
ping: invalid argument: '0': out of range: 1 <= value <= 2147483647webterm.appこのサイト
ターミナル応用
特定場面で役立つコマンドを学ぶ
learn.webterm.app別のサイト
