明示的なゲートウェイ選択を含むTraceroute

明示的なゲートウェイ選択を含むTraceroute

ルーティングにはBGPを使用して2つのISPに接続されているルーター(Linuxを実行)がありますが、各接続を個別にping /追跡したいと思います。

標準のTracerouteコマンドはこれを行うことができるように見えますが(発信インターフェイス、送信元IPの選択を許可する)、ゲートウェイの選択は許可されません。コマンドラインオプション(-g)がありますが、ここで行うことは単にパケットを送信するのではなく、IPルーティングオプションを設定するだけです。

私が望むものは次のとおりです。私のルーターには、10.0.0.1(最初のISPで提供)、10.1.0.1(2番目のISPで提供)という2つのIPがあるとします。最初のISPのデフォルトゲートウェイ(次のホップ)は10.0.0.254、2番目のISPのデフォルトゲートウェイは10.1.0.254です。そのうちの1つが現在デフォルトゲートウェイ(BGP経由)として選択されていますが、他のゲートウェイでもトレース/ピングを使用できるようにしたいと思います。ルーティングテーブルを変更することはできません(特に他のISPに問題がある場合は切断されません)。

Traceroute_oth --nexthop 10.0.0.254 8.8.8.8 は以下を提供する必要があります。

1 10.0.0.254
2 some-iother-ip.first-isp.com
...
x 8.8.8.8

Traceroute_oth --nexthop 10.1.0.254 8.8.8.8 は以下を提供しなければなりません。

1 10.1.0.254
2 some-ip.second-isp.com
...
x 8.8.8.8

編集:ルーターが他のゲートウェイについて知らないため、「traceroute -i」は機能しません。デフォルトでは、ルーティングテーブルは次のとおりです(単純化)。

0.0.0.0/0 gw 10.0.0.254 eth0

明示的に指定しないと、プログラムは他のISPに接続されているeth1のデフォルトゲートウェイが何であるかを知りません。

ベストアンサー1

マニュアルページを読みましたか?

   -i interface, --interface=interface
          Specifies  the  interface  through  which traceroute should send
          packets. By default, the interface is selected according to  the
          routing table.

おすすめ記事