web-dev-qa-db-ja.com

tracerouteの「***」の意味

これは私のtracerouteの結果です

traceroute 211.140.5.120

 1  141.1.31.2 (111.1.31.2)  0.397 ms  0.380 ms  0.366 ms
 2  141.1.28.38 (111.1.28.38)  3.999 ms  3.971 ms  3.982 ms
 3  142.11.124.193 (112.11.124.133)  1.315 ms  1.533 ms  1.455 ms
 4   (201.141.0.261)  2.615 ms  2.749 ms  2.572 ms
 5   (201.141.0.82)  2.705 ms  2.564 ms  2.680 ms
 6   (201.118.231.14)  5.375 ms  5.126 ms  5.252 ms
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

***の意味を知りたいと思います。結果は、ホストとターゲットサーバーの間に実際に30を超えるホップがあることを意味していますか?

55
larry

Tracerouteのすべての実装は、発信元に送信されるICMP(タイプ11)パケットに依存しています。

このプログラムは、小さなttl(存続時間)でUDPプローブパケットを起動し、ゲートウェイからのICMPの「超過時間」応答をリッスンすることにより、ルートのトレースを試みます。これは、1のttlでプローブを開始し、ICMPの「ポート到達不能」(「ホスト」に到達したことを意味します)または最大値(デフォルトは30ホップ)に到達するまで1ずつ増加し、-mフラグで変更できます。 )。 3つのプローブ(-qフラグで変更)が各ttl設定で送信され、ttl、ゲートウェイのアドレス、各プローブの往復時間を示す行が印刷されます(3つ*)。 5秒以内に応答がない場合。タイムアウト間隔(-wフラグで変更)、そのプローブに対して「*」が出力されます。

したがって、あなたのケースでは、201.118.231.14までしか応答がないと結論付けることができます。その後、ノードは、最大生存時間(最大ホップ数)であるホップ30までのICMPパケット(タイプ11)に応答しません。 -mフラグを使用してmax-time-to-liveを増やすことができます。

48
Sachin Divekar

Traceouteが出力を作成するには、ターゲットサーバーと各中間ホップからの応答が必要です。ルーターがTime-to-live exceeded応答を生成しない場合、tracerouteはそのホップについて何も認識しません。 * * *を出力するホップは、そのホップのルーターがtracerouteに使用していたパケットのタイプに応答しないことを意味します(デフォルトでは、UnixライクのUDPとWindowsのICMP)。

Tracerouteの同じバージョンを使用している場合は、-eオプションを使用してファイアウォールを回避しようとすることができます。-Pオプションを使用してICMPを使用することもできます。TCPまたは [〜#〜 ] gre [〜#〜] UDPの代わりにパケット。-pオプションを使用して、フィルタリングされる可能性が低い特定のポート(80や25など)を指定することもできます。

応答を返すのに役立つ他のオプションがあるかもしれません。 tracerouteのマニュアルページ を確認します。

質問の2番目の部分に答えると、いいえ、このtracerouteは、ユーザーとターゲットサーバーの間に正確に30ホップがあることを意味しません。 Tracerouteは、特定のホップ数が経過すると「回復」します。これは、パケットの最大TTLを制限することで行われます。これは、Linuxではデフォルトで30です。これは、-mオプションで変更できます。ホップは多かれ少なかれ6番目が応答した後、私たちは知りません。

36
Ladadadada