RHEL 8でTracerouteをお探しですか? Tracepathをお試しください
公開: 2022-06-14ネットワーク診断は、さまざまなタイプのネットワーク問題の分析とトラブルシューティングを含む、ネットワーク/システム管理者の仕事の重要な部分です。
IPパケットがネットワーク内の2つのポイント間を通過するパスを知ることは、訓練された目に多くの有用な情報を投入します。
ネットワークパス関連の分析とトラブルシューティングに役立つ、そのような人気があり、一般的に使用されているクロスプラットフォームツールの1つは、 traceroute
です。
簡単に言うと、 traceroute
は、プローブパケット(ICMPECHOまたはTCPSYNなど)を送信し、ICMPの「時間を超えた」応答をリッスンすることにより、送信元と宛先の間のIPパケットのパスを追跡します。 これらのパケットのTTLは意図的に1に保たれ、ICMPが「ポート到達不能」になるまで1ずつ増加します。これは、ホストに到達するか、最大値(デフォルトでは30ホップ)に達することを意味します。
traceroute
の出力例は次のようになります。
$ traceroute google.com traceroute to google.com (172.217.169.14), 30 hops max, 60 byte packets 1 140.91.200.22 (140.91.200.22) 0.129 ms 140.91.200.19 (140.91.200.19) 0.151 ms 140.91.200.77 (140.91.200.77) 0.114 ms 2 linxbgp1.iwscloud.com (195.66.226.34) 0.735 ms 0.701 ms 1.024 ms 3 195.66.224.125 (195.66.224.125) 0.603 ms 0.591 ms 0.591 ms 4 108.170.246.129 (108.170.246.129) 0.583 ms 0.745 ms 0.714 ms 5 209.85.241.95 (209.85.241.95) 1.576 ms 209.85.241.93 (209.85.241.93) 1.545 ms 209.85.241.95 (209.85.241.95) 1.520 ms 6 lhr25s26-in-f14.1e100.net (172.217.169.14) 0.584 ms 0.547 ms 0.507 ms $
上記のように、デフォルトのtraceroute
出力には、3パケットのTTL(Time To Live)またはラウンドトリップ時間、最大ホップ数とパケットサイズ(バイト単位)、および可能な場合はIPアドレスと解決されたドメイン名が表示されます。
Traceroute
は、応答遅延と2つのノード間のルーティングを決定するのに非常に役立ちます。 さらに、宛先へのルートの障害点を特定するのに役立ちます。 多くのファイアウォールとルーターはインターネット上のtracerouteメッセージをブロックするため、その出力が常に正しいとは限りません。
プローブメッセージの種類を変更することである程度の回避策がありますが、この問題を回避するにはある程度までしか役立ちません。 したがって、このユーティリティを使用するときは、このことに留意する必要があります。
traceroute
の一部のオプションでは、rawパケットの変更を可能にする昇格されたスーパーユーザー権限が必要です。
tracepathコマンド
Red Hat EnterpriseLinuxまたはRHEL8およびその派生Linuxディストリビューションには、デフォルトでtraceroute
コマンドがインストールされていません。 これは、以前のバージョンのRedHatLinuxまたはCentOSでtraceroute
ユーティリティに慣れている人にとっては重要な変更のように思えます。
ただし、RHEL8には、対応するtracepath
と同様の機能を持ち、OSのインストールですぐに使用できるtracepath
と呼ばれる同等の機能を備えたコマンドがデフォルトで使用できます。
さらに、 tracepath
はMTUオプションをサポートします。これにより、 tracepath
値を検出できます。
参考までに、 tracepath
出力例を以下に示します。
$ tracepath 131.153.76.66 1?: [LOCALHOST] pmtu 9000 1: 140.91.200.23 0.416ms asymm 2 1: 140.91.200.23 0.239ms asymm 2 2: 140.91.200.74 0.194ms pmtu 1500 2: oracle-svc071175-lag003322.ip.twelve99-cust.net 1.344ms 3: ldn-b7-link.ip.twelve99.net 19.996ms asymm 2 4: ldn-bb1-link.ip.twelve99.net 0.803ms asymm 5 5: prs-bb1-link.ip.twelve99.net 8.548ms asymm 6 6: mei-b5-link.ip.twelve99.net 18.111ms asymm 5 7: no reply 8: phoenix-svc071932-ic358857.ip.twelve99-cust.net 179.691ms asymm 7 9: 131.153.47.139 163.358ms asymm 8 10: no reply 11: 131.153.76.66 159.071ms !H Resume: pmtu 1500 $
上記のように、デフォルトtracepath
出力は、パケットのTTL(Time To Live)またはラウンドトリップ時間であるMTU(Maximum Transmission Unit)を示します。これは、可能な場合は、 tracepath
および解決されたドメイン名によってネットワーク経由で送信できます。
tracepath構文
tracepath
コマンドの一般的な使用構文は次のとおりです。
$ tracepath <options> <destination DNS or IP>
#1。 フラグがない場合、 tracepath
は、次のように取得された宛先へのパスを示します。
$ tracepath 131.153.56.85 1?: [LOCALHOST] pmtu 9000 1: 140.91.200.77 0.226ms asymm 2 1: 140.91.200.79 0.497ms asymm 2 2: 140.91.200.74 0.216ms pmtu 1500 2: oracle-svc071174-lag003319.ip.twelve99-cust.net 0.691ms 3: slou-b1-link.ip.twelve99.net 1.249ms asymm 2 4: ldn-bb4-link.ip.twelve99.net 0.749ms asymm 3 5: nyk-bb1-link.ip.twelve99.net 80.617ms asymm 8 6: rest-bb1-link.ip.twelve99.net 153.250ms asymm 21 7: nyk-bb1-link.ip.twelve99.net 83.084ms asymm 6 8: nash-bb1-link.ip.twelve99.net 280.770ms asymm 9 9: no reply 10: dls-b23-link.ip.twelve99.net 110.820ms asymm 9 11: phx-b1-link.ip.twelve99.net 131.524ms 12: phx-b1-link.ip.twelve99.net 131.632ms asymm 11 13: giglinx-ic305413-phx-b1.ip.twelve99-cust.net 132.583ms asymm 12 14: no reply 15: giglinx-ic305414-phx-b1.ip.twelve99-cust.net 142.685ms asymm 12 16: PHOENIX-NAP.ear3.Chicago2.Level3.net 135.245ms asymm 4 17: no reply 18: no reply 19: speedchi.phoenixnap.com 133.809ms reached Resume: pmtu 1500 hops 19 back 8 $
#2。 IPアドレスのみを出力する場合は、 -n
フラグを使用できます。
$ tracepath -n 131.153.56.85 1?: [LOCALHOST] pmtu 1500 1: 140.91.200.74 0.393ms asymm 2 1: 140.91.200.21 0.180ms asymm 2 2: 213.248.69.255 0.576ms 3: 213.248.98.246 1.210ms asymm 2 4: 62.115.117.122 1.371ms asymm 3 5: 62.115.133.239 141.920ms asymm 20 6: 62.115.141.244 77.732ms asymm 7 7: no reply 8: 62.115.137.55 881.711ms asymm 9 9: no reply 10: 62.115.137.55 914.855ms asymm 9 11: 62.115.125.97 132.182ms 12: 62.115.125.97 131.686ms asymm 11 13: 62.115.42.6 133.132ms asymm 12 14: no reply 15: 62.115.42.10 143.880ms asymm 12 16: 4.14.13.150 134.869ms asymm 4 17: no reply 18: 4.14.13.150 145.263ms asymm 4 19: 131.153.56.85 133.636ms reached Resume: pmtu 1500 hops 19 back 8 $
#3。 ホスト名とIPアドレスの両方を出力するには、 -b
フラグを使用します。

$ tracepath -b 131.153.56.85 1?: [LOCALHOST] pmtu 1500 1: 140.91.200.19 (140.91.200.19) 0.197ms asymm 2 1: 140.91.200.74 (140.91.200.74) 0.141ms asymm 2 2: oracle-svc071175-lag003322.ip.twelve99-cust.net (213.248.98.247) 1.186ms 3: slou-b1-link.ip.twelve99.net (213.248.98.246) 10.273ms asymm 2 4: ldn-bb4-link.ip.twelve99.net (62.115.141.246) 0.941ms asymm 3 5: prs-bb2-link.ip.twelve99.net (62.115.133.239) 141.858ms asymm 20 6: rest-bb1-link.ip.twelve99.net (62.115.141.244) 76.210ms asymm 7 7: no reply 8: rest-bb1-link.ip.twelve99.net (62.115.141.244) 89.209ms asymm 7 9: no reply 10: dls-b23-link.ip.twelve99.net (62.115.136.119) 110.335ms asymm 9 11: phx-b1-link.ip.twelve99.net (62.115.125.97) 132.091ms 12: phx-b1-link.ip.twelve99.net (62.115.125.97) 131.844ms asymm 11 13: giglinx-ic315451-phx-b1.ip.twelve99-cust.net (80.239.195.78) 142.975ms asymm 14 14: no reply 15: no reply 16: PHOENIX-NAP.ear3.Chicago2.Level3.net (4.14.13.150) 135.233ms asymm 4 17: no reply 18: no reply 19: speedchi.phoenixnap.com (131.153.56.85) 133.871ms reached Resume: pmtu 1500 hops 19 back 8 $
#4。 tracepath
のデフォルト値( 65535
)を使用する代わりに、パケット長のカスタム値を設定するには、 -l
フラグを使用して値を指定します。
$ tracepath -l 300 131.153.56.85 1: 140.91.200.77 0.405ms asymm 2 2: oracle-svc071174-lag003319.ip.twelve99-cust.net 0.589ms 3: slou-b1-link.ip.twelve99.net 1.448ms asymm 2 4: ldn-bb4-link.ip.twelve99.net 0.960ms asymm 3 5: nyk-bb1-link.ip.twelve99.net 81.564ms asymm 8 6: rest-bb1-link.ip.twelve99.net 78.414ms asymm 7 7: nyk-bb1-link.ip.twelve99.net 84.286ms asymm 6 8: rest-bb1-link.ip.twelve99.net 87.529ms asymm 7 9: no reply 10: dls-b23-link.ip.twelve99.net 110.534ms asymm 9 11: phx-b1-link.ip.twelve99.net 131.449ms 12: phx-b1-link.ip.twelve99.net 131.303ms asymm 11 13: giglinx-ic315451-phx-b1.ip.twelve99-cust.net 143.059ms asymm 14 14: phx-b1-link.ip.twelve99.net 142.348ms asymm 11 15: giglinx-ic--305416-phx-b1.ip.twelve99-cust.net 143.554ms asymm 12 16: PHOENIX-NAP.ear3.Chicago2.Level3.net 134.790ms asymm 4 17: no reply 18: PHOENIX-NAP.ear3.Chicago2.Level3.net 145.926ms asymm 4 19: speedchi.phoenixnap.com 133.736ms reached Resume: pmtu 300 hops 19 back 8 $
#5。 -p
フラグを使用して初期宛先ポートを次のように設定することもできます。
$ tracepath -p 9000 131.153.56.85 1?: [LOCALHOST] pmtu 1500 1: 140.91.200.18 0.160ms asymm 2 1: 140.91.200.74 0.177ms asymm 2 2: oracle-svc071175-lag003322.ip.twelve99-cust.net 1.151ms 3: slou-b1-link.ip.twelve99.net 1.727ms asymm 2 4: no reply 5: nyk-bb1-link.ip.twelve99.net 81.357ms asymm 8 6: rest-bb1-link.ip.twelve99.net 78.325ms asymm 7 7: no reply 8: rest-bb1-link.ip.twelve99.net 87.908ms asymm 7 9: no reply 10: dls-b23-link.ip.twelve99.net 109.797ms asymm 9 11: phx-b1-link.ip.twelve99.net 132.036ms 12: dls-b23-link.ip.twelve99.net 121.404ms asymm 9 13: giglinx-ic315450-phx-b1.ip.twelve99-cust.net 136.322ms asymm 12 14: phx-b1-link.ip.twelve99.net 142.596ms asymm 11 15: no reply 16: PHOENIX-NAP.ear3.Chicago2.Level3.net 135.182ms asymm 4 17: no reply 18: no reply 19: speedchi.phoenixnap.com 133.562ms reached Resume: pmtu 1500 hops 19 back 8 $
#6。 デフォルトで30
に設定されている最大ホップ数は、以下に示すように-m
フラグを使用してカスタマイズできます。
$ tracepath -m 20 131.153.56.85 1?: [LOCALHOST] pmtu 1500 1: 140.91.200.18 0.175ms asymm 2 1: 140.91.200.77 0.169ms asymm 2 2: oracle-svc071174-lag003319.ip.twelve99-cust.net 0.669ms 3: slou-b1-link.ip.twelve99.net 2.443ms asymm 2 4: no reply 5: prs-bb2-link.ip.twelve99.net 142.778ms asymm 20 6: rest-bb1-link.ip.twelve99.net 76.756ms asymm 7 7: no reply 8: rest-bb1-link.ip.twelve99.net 89.272ms asymm 7 9: no reply 10: dls-b23-link.ip.twelve99.net 110.378ms asymm 9 11: phx-b1-link.ip.twelve99.net 132.582ms 12: phx-b1-link.ip.twelve99.net 132.135ms asymm 11 13: phx-b1-link.ip.twelve99.net 142.154ms asymm 11 14: no reply 15: giglinx-ic305414-phx-b1.ip.twelve99-cust.net 142.298ms asymm 12 16: PHOENIX-NAP.ear3.Chicago2.Level3.net 134.362ms asymm 4 17: no reply 18: no reply 19: speedchi.phoenixnap.com 133.474ms reached Resume: pmtu 1500 hops 19 back 8 $
tracepath
は、高度なパケット変更機能をサポートしていないため、 traceroute
のような昇格されたスーパーユーザー特権をサポートしていないことに注意してください。
概要
この記事では、tracerouteコマンドの使用方法、ネットワーク関連のトラブルシューティングでの使用方法、およびtracepathコマンドを使用してRHEL8システムで同じタスクを実行する方法について要約しました。
これらのコマンドの詳細については、ツールのそれぞれのマニュアルページを使用してください。
$ man traceroute $ man tracepath