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を行うような仕組みより、 途中のルータ間での情報が表示できます。