トレースルートの「***」は何を意味するのか

トレースルートの「***」は何を意味するのか

これは私のトレースルートの結果です

トレースルート 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 を超えるホップがあることを意味するのかを知りたいです。

答え1

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

このプログラムは、小さな ttl (存続時間) で UDP プローブ パケットを開始し、ゲートウェイからの ICMP "time exceeded" 応答を待機することで、トレース ルートを試みます。プローブは ttl 1 から開始し、ICMP "port unreachable" (つまり "host" に到達した) を受信するか、最大値 (デフォルトでは 30 ホップで、-m フラグで変更できます) に達するまで、1 ずつ増加します。各 ttl 設定で 3 つのプローブ (-q フラグで変更) が送信され、各プローブの ttl、ゲートウェイのアドレス、および往復時間を示す行が印刷されます (つまり、3 つの * )。5 秒のタイムアウト間隔 (-w フラグで変更) 内に応答がない場合は、そのプローブに対して "*" が印刷されます。

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

答え2

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

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

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

質問の 2 番目の部分に答えると、いいえ、この traceroute は、ユーザーとターゲット サーバーの間のホップが正確に 30 であることを意味するわけではありません。traceroute は、一定のホップ数に達すると「諦めます」。これは、パケットの最大 TTL を制限することによって行われます。Linux では、デフォルトでは 30 です。オプションを使用してこれを変更できます-m。ホップ数はもっと多いか少ない可能性がありますが、6 番目以降のホップはどれも応答しないので、わかりません。

関連情報