5.

Linux ping コマンドの使い方:疎通確認・回数指定・タイムアウト・トラブルシュート

編集
この記事の要点
  • ping は ICMP Echo Request を送って疎通と応答時間を確認するコマンド
  • 基本構文は ping <宛先>。Ctrl + C で停止、回数指定したい場合は -c オプション
  • 応答時間(RTT)・パケットロス率・TTL から、ネットワーク経路や相手ホストの状態をざっくり判定できる
  • ping が通らない=ホストが落ちている、とは限らない(ICMP がフィルタされているだけのケースも多い)

ping コマンドとは

ping は、指定したホストに ICMP Echo Request パケットを送り、Echo Reply が返ってくるかどうかでネットワークの疎通を確認するコマンドです。Linux / macOS / Windows すべてに標準搭載されており、トラブルシュートで最初に使うコマンドの一つです。応答時間(RTT: Round Trip Time)からネットワーク遅延の傾向もつかめます。

基本構文

ping [オプション] 宛先

シンプルな使用例

$ ping example.com
PING example.com (93.184.216.34) 56(84) bytes of data.
64 bytes from 93.184.216.34: icmp_seq=1 ttl=56 time=12.3 ms
64 bytes from 93.184.216.34: icmp_seq=2 ttl=56 time=12.1 ms
^C
--- example.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 12.123/12.234/12.345/0.111 ms

Linux ではデフォルトで連続実行されるため、Ctrl + C で停止します。Windows は既定で 4 回送信して自動終了します。

よく使うオプション

オプション意味
-c <回数>送信回数を指定(例: -c 4
-i <秒>送信間隔(既定 1 秒)
-W <秒>応答待ちタイムアウト
-s <サイズ>送信データのバイト数(既定 56)
-t <TTL>送信パケットの TTL(経路長制限の検証に)
-4 / -6IPv4 / IPv6 を明示
-q静かなモード(最後にサマリのみ表示)

使用例

1. 回数を指定して実行

$ ping -c 4 192.168.1.1

2. 短い間隔で疎通の安定度を観察

# 0.2 秒間隔で 50 回(要 root の場合あり)
$ sudo ping -i 0.2 -c 50 8.8.8.8

3. 大きめのパケットで MTU 周りを試す

$ ping -c 4 -s 1472 -M do example.com

-M do はフラグメント禁止。指定サイズで通れば MTU の余裕を確認できます。

結果の読み方

項目意味
icmp_seqパケットの通し番号(欠番があればロスト)
ttl残り TTL。経路上のルータ数の目安
timeRTT(ミリ秒)。遅延の目安
packet lossロス率。0% が理想
rtt min/avg/max/mdevRTT の最小・平均・最大・標準偏差

典型的なトラブルシューティングの流れ

  1. 自分のデフォルトゲートウェイに ping → ローカルセグメントの正常性確認
  2. 外部 DNS(8.8.8.8 など)に ping → 上流ネットワークの正常性確認
  3. 名前で ping(例: ping example.com) → 名前解決の正常性確認
  4. ロス率が高ければ traceroute / mtr で経路を追跡

ping が通らないときの注意

  • ICMP がファイアウォールでブロックされている場合がある(クラウドのセキュリティグループ既定値で多い)
  • サーバが ICMP Echo に応答しない設定(net.ipv4.icmp_echo_ignore_all = 1 など)の場合がある
  • ping が通らなくても TCP の Web アクセス(HTTP/HTTPS)は問題なく成立することがある
  • port 単位の疎通確認は ping ではなく nc -zv host portcurl -v を使う

関連記事

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. cd ディレクトリの移動
  2. dir ファイル/ディレクトリ一覧表示
  3. ipconfig IP構成の確認
  4. hostname ホスト名の確認
  5. ping コマンド
  6. start プログラムの実行

最近更新/作成されたページ