ping [-l テストデータバイト数][-i TTL値] 宛先IPアドレス
ホスト間の接続を確認するコマンドです。
これは、ICMP(インターネット制御メッセージプロトコル)の
type0のエコー応答と、type8のエコー要求を利用して行われます。
任意の宛先へエコー要求を送りつけ、応答にかかる時間やTTLを表示するコマンドです。
TTLは応答パケット内の値で、これをパケットを送る時にTTLから引くことで、
途中で通過したルータの数が得られます。
これを4回行って、その結果、失ったパケット数や
最小・最大・平均時間を表示します。
Z:\>ping -l 100 219.101.42.114
Pinging 219.101.42.114 with 100 bytes of data:
Reply from 219.101.42.114: bytes=100 time=17ms TTL=116
Reply from 219.101.42.114: bytes=100 time=19ms TTL=116
Reply from 219.101.42.114: bytes=100 time=18ms TTL=116
Reply from 219.101.42.114: bytes=100 time=18ms TTL=116
Ping statistics for 219.101.42.114:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 17ms, Maximum = 19ms, Average = 18ms
Z:\>
パケットがたどり着かない場合の例も示します。
Z:\>ping 192.168.0.10
Pinging 192.168.0.10 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 192.168.0.10:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Z:\>
tracert [-h 最大ホップ数] 宛先IPアドレス
windowsのtracertコマンドは、指定したホストまで経路を表示します。
(宛先に届くまでに経由するルータを調べるコマンドです。)
これは、ICMPのtype11の時間超過を利用しています。
パケット内のTTL(Time To Live)は、ルータを経由するごとに1を引いた値にして、
この値が0になった段階にそのパケットを破棄し、
パケット送信元へtype11の時間超過パケットとして送り返す規則でした。
この時の送り返す時間超過のICMPには、
送信ルータのIPアドレスが送信元アドレスとして記憶されます。
よってTTLを1にした要求信号送信で、最初のルータが時間超過パケットを返します。
次にTTLを2にした要求信号送信で、次のルータが時間超過パケットを返します。
このように、TTLを1ずつ増やして送信すれば、それで辿り付くルータまでの時間超過パケットが
得られて、それより経路が分かるという仕組みです。以下で例を示します。
Z:\>tracert 219.101.42.114 Tracing route to dns1.sundaidenshi.ac.jp [219.101.42.114] over a maximum of 30 hops: 1 <1 ms <1 ms <1 ms 192.168.0.1 2 16 ms 16 ms 19 ms r002.tkyoac00.ap.so-net.ne.jp [219.98.208.1] 3 16 ms 15 ms 15 ms 61.211.9.177 4 15 ms 15 ms 15 ms note-19Gi2-3.net.so-net.ne.jp [61.211.9.137] 5 15 ms 15 ms 15 ms note-gw8Vl54.net.so-net.ne.jp [211.10.63.113] 6 15 ms 23 ms 15 ms 202.213.197.46 7 17 ms 15 ms 15 ms 211.9.55.141 8 16 ms 15 ms 15 ms 202.94.142.173 9 16 ms 15 ms 15 ms 211.9.32.98 10 15 ms 15 ms 15 ms 202.94.141.94 11 16 ms 15 ms 15 ms 202.94.141.142 12 18 ms 18 ms 20 ms 219.101.42.113 13 20 ms 18 ms 16 ms dns1.sundaidenshi.ac.jp [219.101.42.114] Trace complete. Z:\>
3つの時間が表示されますが、3回のEcho要求に対する時間です。
これより、どの部分が遅くなる要因になっているかという
ネットワークの状態も判断できます。
なお、これらで得られる情報は、クラッカーのアタックにも役に立ち、 悪用される危険が多いことから、 Time Exceeded(時間超過)を返さない設定にしてあるルータや、 ICMPをルーティングしない設定にしてあるルータも多い状況になっています。
使い方:
pathping 宛先IPアドレス
tracerouteとpingを組み合わせたようなコマンドで、Windows2000以降のウインドウ(XPなど)でのみ
使えるコマンドです。
宛て先までの経路とパケット損失の統計情報などが表示されます。
実行例を示します。
Z:\>pathping 30 219.101.42.114
Tracing route to dns1.sundaidenshi.ac.jp [219.101.42.114]
over a maximum of 30 hops:
0 vista [192.168.0.33]
1 192.168.0.1
2 r002.tkyoac00.ap.so-net.ne.jp [219.98.208.1]
3 61.211.9.177
4 note-19Gi2-3.net.so-net.ne.jp [61.211.9.137]
5 note-gw7Vl52.net.so-net.ne.jp [211.10.63.33]
6 202.213.197.38
7 211.9.55.141
8 202.94.142.173
9 211.9.33.58
10 202.94.141.98
11 202.94.141.158
12 219.101.42.113
13 * * *
Computing statistics for 325 seconds...
Source to Here This Node/Link
Hop RTT Lost/Sent = Pct Lost/Sent = Pct Address
0 vista [192.168.0.33]
0/ 100 = 0% |
1 0ms 0/ 100 = 0% 0/ 100 = 0% 192.168.0.1
0/ 100 = 0% |
2 17ms 0/ 100 = 0% 0/ 100 = 0% r002.tkyoac00.ap.so-net.ne.jp [219.98.208.1]
0/ 100 = 0% |
3 15ms 0/ 100 = 0% 0/ 100 = 0% 61.211.9.177
0/ 100 = 0% |
4 16ms 0/ 100 = 0% 0/ 100 = 0% note-19Gi2-3.net.so-net.ne.jp [61.211.9.137]
0/ 100 = 0% |
5 20ms 0/ 100 = 0% 0/ 100 = 0% note-gw7Vl52.net.so-net.ne.jp [211.10.63.33]
0/ 100 = 0% |
6 28ms 0/ 100 = 0% 0/ 100 = 0% 202.213.197.38
0/ 100 = 0% |
7 19ms 0/ 100 = 0% 0/ 100 = 0% 211.9.55.141
0/ 100 = 0% |
8 16ms 0/ 100 = 0% 0/ 100 = 0% 202.94.142.173
0/ 100 = 0% |
9 25ms 0/ 100 = 0% 0/ 100 = 0% 211.9.33.58
0/ 100 = 0% |
10 16ms 0/ 100 = 0% 0/ 100 = 0% 202.94.141.98
0/ 100 = 0% |
11 17ms 0/ 100 = 0% 0/ 100 = 0% 202.94.141.158
0/ 100 = 0% |
12 17ms 0/ 100 = 0% 0/ 100 = 0% 219.101.42.113
100/ 100 =100% |
13 --- 100/ 100 =100% 0/ 100 = 0% vista [0.0.0.0]
Trace complete.
Z:\>
各ルータに対してpingを行うような仕組みより、 途中のルータ間での情報が表示できます。