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 TOSTOS Type Of Service (IPv4 のみ) です。
-r ホップ数指定したホップ数のルートを記録します (IPv4 のみ)。
-s ホップ数指定したホップ数のタイムスタンプを表示します (IPv4 のみ)。
-j ホスト一覧一覧で指定された緩やかなソース ルートを使用します。(IPv4 のみ)。
-k ホスト一覧一覧で指定された厳密なソース ルートを使用します。(IPv4 のみ)。
-w タイムアウト応答を待つタイムアウトの時間 (ミリ秒) です。
-Rルーティング ヘッダーを使用して逆ルートもテストします。
-S ソースアドレス使用するソース アドレスです。
-4IPv4 の使用を強制します。
-6IPv6 の使用を強制します。

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

C:\ping -n 10 192.168.1.254

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

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

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

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

Type 3 のエラー 一覧

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

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

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

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