用語辞典・コマンド・確認ツール

pingコマンド

pingコマンドとは

ping(ピング)コマンドは、ICMPの応答を使い、接続先への到達性や往復時間を確認するコマンドです。pingは一般にツール名として扱われ、正式名称を短くした頭字語ではありません。

宛先へ小さなEcho Request(エコー・リクエスト)を送り、相手からEcho Reply(エコー・リプライ)が戻るまでを測ります。結果は、その時点にICMPの往復が成立したかを示します。

pingが成功して分かるのは、指定したIPアドレスとのICMP往復が成立したことです。Webサイト、特定ポート、ログイン、通信速度が正常だとまでは言えません。

宛先名をIPアドレスへ解決し、Echo 要求とEcho 応答の往復を端末側の時計で測る応答、時間切れ、到達不能が示す範囲を分けて読む
利用者の端末からルーターと複数の中継点を経て接続先へ小さな確認信号を送り、返答を受けて往復時間を測り、別の経路では時間切れ、途中の機器から到達不能が返る場合を示すピクトグラム図解
図1表示される時間は片道ではなく往復です。途中のどの区間で時間を使ったかは、ping一つでは分かりません。

実行から結果までを六段階で読む

1. Target名前またはIPアドレスを指定

ホスト名なら先にDNSなどでIPアドレスへ解決します。IPを直接指定すれば名前解決を切り離せます。

2. 要求ICMP Echo 要求を作る

識別子、通し番号、確認用データなどを含むメッセージを宛先へ送ります。

3. Forwardルーターが宛先へ転送

IPパケットとして経路を進みます。各ルーターでTTLまたはHop Limitが減ります。

4. 応答宛先がEcho 応答を返す

要求を受け付ける設定なら、対応する通し番号とデータを含む応答を返します。

5. Measure送信元が往復時間を計算

送ってから応答を受けるまでを送信元の時計で測り、通常はミリ秒で表示します。

6. Summary応答数と時間を集計

複数回の送信後に損失率、最小・最大・平均時間などを表示します。項目はOSで異なります。

ホスト名を指定すると名前解決も含まれる

ping example.comのように名前を指定すると、送信前にDNSなどからIPアドレスを得ます。「ホストが見つからない」なら、ICMPを送る前の名前解決で止まった可能性があります。

同じ接続先のIPアドレスを直接指定して応答し、名前では失敗するなら、DNS設定、検索ドメイン、名前の綴りなどを調べます。ただし、大規模サイトは複数のIPアドレス、CDN、IPv4・IPv6を使うため、適当なIPを固定すると通常のアクセスと違う接続先になる場合があります。

IPv4とIPv6ではICMPの版が違う

IPv4ではICMP Echo 要求・Echo 応答、IPv6ではICMPv6 Echo 要求・Echo 応答を使います。目的は似ていますが、メッセージ形式とプロトコルは別です。名前にAとAAAAの両方がある場合、OSの選択によってどちらを試すかが変わります。

一方だけを試したいときは、利用中のOSのヘルプでIPv4またはIPv6を指定するオプションを確認します。オプションの記号や既定の送信回数はWindows、macOS、Linuxで異なるため、別OSの例をそのまま入力しないようにします。

応答時間は往復の合計

RTTRound-Trip Time(ラウンド・トリップ・タイム)の略で、要求を送ってから返答を受けるまでの往復時間です。片道の遅延を二倍した値と常に一致するわけではなく、往路と復路が別経路を通ることもあります。

一回だけ短くても安定しているとは限りません。複数回の最小、最大、平均、ばらつき、損失を見ると、一時的な混雑や無線品質の変動を見つけやすくなります。ping自体のパケットは小さいため、大容量転送時の速度や遅延を再現する試験ではありません。

応答なしは原因を一つに決められない

時間内にEcho 応答を受け取れない場合、宛先停止、経路断、パケット損失、ファイアウォール、ICMPの優先度低下、応答回数制限、誤ったアドレスなど複数の原因があります。安全対策としてpingへ応答しないサーバーもあります。

そのため「ping失敗=相手が停止」とは断定できません。逆にping成功でも、WebサーバーのTCP 443番ポートやアプリケーションが停止している場合があります。確認したい機能に合わせ、HTTPアクセス、DNS照会、ポート接続、アプリのログなどを組み合わせます。

到達不能は途中の機器が返すこともある

Destination Unreachable(デスティネーション・アンリーチャブル)は、宛先ホストだけでなく途中のルーターが「転送先がない」「規則で通せない」などの理由で返す場合があります。メッセージを返したIPアドレスと種別を見ます。

「要求がタイムアウトしました」は、明示的なエラー応答も届かなかった状態です。無応答と到達不能では観測できたことが違いますが、表示文や細分化はOSとICMPの版で異なります。

TTLとHop Limitから総中継数は断定できない

IPv4のTTLTime To Live(タイム・トゥ・リブ)、IPv6のHop Limit(ホップ・リミット)は、ルーターを通るたびに減る上限値です。ゼロになると転送を止め、ループし続けることを防ぎます。

ping結果に表示される値は、返答パケットに残っている値です。相手OSの初期値が分からず、復路も往路と同じとは限らないため、その値だけから正確な総ホップ数を決められません。経路上の中継点を調べる目的にはtracerouteまたはtracertを使います。

調べたい対象ごとに道具を変える

家庭内の切り分けでは、自分のループバック、LAN内のルーター、外部のIPアドレス、外部のホスト名の順に試すと、TCP/IP機能、LAN、インターネット到達、名前解決を段階的に見られます。ただし各装置がICMPに応答する設定であることが前提です。

通過経路はtraceroute、名前解決はnslookupやdig、Webの状態はブラウザやcurl、特定TCPポートは接続試験、実用帯域は速度測定を使います。pingの結果を他の検査の代わりにせず、最初の小さな観測として位置付けます。

pingはICMP Echoの往復を観測する道具です。成功はその往復の成立、時間は往復時間、無応答は複数原因の可能性を示します。Webやポート、速度まで正常と結論づけず、目的に合う次の検査へつなげます。

Windows版pingの構文、IPv4・IPv6、応答時間、TTL、エラー表示:Microsoft Learn「ping」、IPv4 ICMP Echoの定義:RFC 792「Internet Control Message Protocol」、ICMPv6 Echoの定義:RFC 4443「ICMPv6」

関連用語

インターネットWebWWWWebサイト検索エンジンURLURIハイパーリンククラウドデータセンタープロトコルパケットオンラインサービスIPアドレスIPv4IPv6グローバルIPアドレスプライベートIPアドレス動的IPアドレス固定IPアドレスループバックアドレスリンクローカルアドレスサブネットサブネットマスクプレフィックス長デフォルトゲートウェイDHCPNATNAPTCGNATポート番号ソケットMTUDNSDNSリゾルバー再帰DNSサーバー権威DNSサーバー名前解決DNSキャッシュTTLAレコードAAAAレコードCNAMEレコードMXレコードTXTレコードNSレコードSOAレコードPTRレコードSRVレコードCAAレコードDNSSECドメインサブドメインIPv6プレフィックスインターフェースIDSLAACDHCPv6RANDPICMPv6デュアルスタックIPoEPPPoEIPv4 over IPv6MAP-EDS-LiteNAT64DNS64464XLATトンネルカプセル化パスMTU探索Happy EyeballsSSIDBSSIDアクセスポイントメッシュWi-FiWi-Fi中継機2.4GHz帯5GHz帯6GHz帯Wi-Fiチャンネルチャンネル幅DFSバンドステアリングWi-FiローミングWPA2WPA3WPSキャプティブポータルゲストネットワークONUモデムホームゲートウェイスイッチングハブL2スイッチL3スイッチイーサネットLANケーブルRJ45NIC無線LANアダプターアンテナブリッジモードルーターファイアウォール機器NASUPSPoEメディアコンバーター光トランシーバーTCPUDPSSLQUICWebSocketMbpsGbpsMB/sレイテンシPingジッターパケットロススループット帯域幅ベストエフォート輻輳バッファブロートQoSトラフィックシェーピング実効速度グッドプット応答時間ホップ速度測定ヘッダーFromReturn-PathMessage-IDMIME添付ファイルバウンスメール迷惑メールフィッシングメールWebメールメーリングリストレンタルサーバー共用サーバーVPS専用サーバークラウドサーバーWebサーバーApacheNginxPHPデータベースMySQLネットワークプロファイル