pingコマンド

pingは、接続相手とのネットワーク疎通を確認する際に使用するコマンドです。

 このpingコマンドを使用することにより、到達可能であるかどうかだけでなく、様々なエラーに対応するステータスを確認することができます。また、統計値を確認することでネットワークの輻輳状態を簡単に計測することもできます。

 ping では、まずICMPのタイプ8のエコー要求(Echo)を宛先に送ります。これを受け取った宛先の端末は、ICMPのタイプ0ののエコー応答(Echo Reply)を返すようになっています。

※ただし、エコー要求(Echo)は、経路の途中や、PC上のファイアウォールでブロックされている場合があるので、必ず返事が返ってくるとは限りません。

 送信元は、このエコー応答を受け取ることによって、通信が可能であるかどうかを確認することできます。エラーの場合には、エラーメッセージから、なぜ、宛先に到達できないのかを知ることができます。

Windowsの場合の ping コマンドは、コマンドプロンプト上から実行します。使用方法は以下の通りです。

Windowsの場合

【使用法】
ping [-t] [-a] [-n 要求数] [-l サイズ] [-f] [-i TTL] [-v TOS][-r ホップ数] [-s ホップ数] [[-j ホスト一覧] | [-k ホスト一覧]][-w タイムアウト] [-R] [-S ソースアドレス] [-4] [-6] ターゲット名

例えば、「www.yahoo.co.jp」への ping の実行例は、下図のようになります。

ping コマンドのオプション

オプション 説明
-t 中断されるまで、指定されたホストを Ping します。
統計を表示して続行するには、Ctrl+Break を押します。
停止するには、Ctrl+C を押してください。
-a アドレスをホスト名に解決します。
-n 要求数 送信するエコー要求の数です。
-l サイズ 送信バッファのサイズです。
-f パケット内の Don't Fragment フラグを設定します (IPv4 のみ)。
-v TOS TOS Type Of Service (IPv4 のみ) です。
-r ホップ数 指定したホップ数のルートを記録します (IPv4 のみ)。
-s ホップ数 指定したホップ数のタイムスタンプを表示します (IPv4 のみ)。
-j ホスト一覧 一覧で指定された緩やかなソース ルートを使用します。(IPv4 のみ)。
-k ホスト一覧 一覧で指定された厳密なソース ルートを使用します。(IPv4 のみ)。
-w タイムアウト 応答を待つタイムアウトの時間 (ミリ秒) です。
-R ルーティング ヘッダーを使用して逆ルートもテストします。
-S ソースアドレス 使用するソース アドレスです。
-4 IPv4 の使用を強制します。
-6 IPv6 の使用を強制します。

オプションを指定したコマンドの使用例は、次のようになります。

C:\ping -n 10 192.168.1.254

デフォルトでは、送信するエコー要求の数は、4回ですが、ここでは、10回を指定しています。

ping コマンド(エラーメッセージ)

ここでは、Destination Unreachable(Type3)のエラーについて説明して行きます。

 IP通信において、何らかの問題が発生した場合には、経路の途中のルータや端末がを送信元へエラーを報告します。Destination Unreachable(Type3)エラーの場合は、次の一覧の情報が報告されるようになっています。

Type 3 のエラー 一覧

コード 情報 意味
0 Netwrok Unreachable ネットワークに到達不能
1 Host Unreachable 特定のホストに到達不能
2 Protocol Unreachable プロトコルに到達不能
3 Port Unreachable ポートに到達不能
4 Fragmentation Needed and DF set フラグメンテーションが必要
5 Source Route Failed ソースルート通りにルーティングできない。
6 Destination Network Unknown 宛先ネットワークを知らない。
7 Destination Host Unknown 宛先ホストを知らない。
8 Source Host Isolated 送信元が通信できない
9 Network Administartively Prohibited 送信先ネットワークが拒否している。
10 Destinantion Host Administartively Prohibited 送信先ホストが拒否している。
11 Network Unreachable For TOS 要求したTOSでネットワークに到達不能
12 Host Unreachable For TOS 要求したTOSでホストに到達不能
13 Communication Administratively Prohibited 通信が拒否されている。

Cisco ルータの場合のエラー 一覧

コード 情報
! 各感嘆符(!)は、応答の受信を示します。
. ピリオド(.)は、ネットワーク サーバが応答を待機中にタイムアウトしたことを示します。
U PDU が受信した宛先到達不能エラー
Q ソース クエンチ(宛先がビジー状態)
M 断片化不可
? パケット タイプ不明
& パケットの存続時間超過

このエラーメッセージからトラブルの原因を探ることができます。