自分と宛先IP間のMTUを検出する


18

プロトコルUDPICMPプロトコルのみを使用できる場合、コンピューターから宛先IPへのパケット転送のパスMTUをバイト単位で見つけるにはどうすればよいですか?


これをプログラムで解決しますか、またはpingで解決しますか?たとえば、pingとシェルプログラミングまたはtracerouteとの組み合わせがオプションです。また、ipv4またはipv6が必要ですか?
最大

@Max:シェルプログラミングはいいですね、そのアイデアはありますか?
URL87

2
それが機能するまでping -s $SIZE -c 1 -M dontそのSIZE値を使用し、下げることを考えました。または、ipv6について話しているが、これが組み込まれている場合は単にICMP経由してリターンを見るだけです。tcpdumptraceroute
最大

回答:


15

私はあなたが探しているものは、経由で最も簡単に得られると信じていますtraceroute --mtu <target>。多分と-6あなたの興味に応じて、良い測定のために投げスイッチ。tracerouteICMP tryで運が良くなると思われる場合、Linux はUDPをデフォルトとして使用します-I


17

apropos mtuCentOS5でのクイック検索で判明しました:

tracepath このパスに沿ってMTUを検出するネットワークホストへのパスをトレースします

このコマンドは、ユーザー空間でも特権なしで動作します。


私はこれ以上のを好むtraceroute、それは最後に、単純な結果を返し、私は別のMTUを返された最後のホップを探す必要がないので。
-comfreak
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.