ジャンボフレームを有効にしようとしています。 LinuxクライアントとWindowsサーバーがあります。私はインテルを全面的に標準化しました。 Windowsサーバーでは、ジャンボフレームの唯一の選択肢は_9014
_&_4088
_です。 LinuxのMTU速度を_9014
_または_9000
_のどちらに設定する必要があるかを調査しました。相反する投稿がグーグルで回っていますが、おそらく_9000
_が正しい番号のようです。もちろん、私は両方を試しました。
これから抜け出す site すべてが正しく機能しているかどうかをテストしようとしました。私のLinuxクライアントから:_ping -M do -s 8972 [destinationIP]
_すべてが正しく機能しているようです:
ファイルからの8980バイト([destinationIP]):icmp_seq = 1 ttl = 128 time = 0.946 ms
ファイルからの8980バイト([destinationIP]):icmp_seq = 2 ttl = 128 time = 1.16 ms
ファイルからの8980バイト([destinationIP]):icmp_seq = 3 ttl = 128 time = 1.02 ms
ファイルからの8980バイト([destinationIP]):icmp_seq = 5 ttl = 128 time = 0.935 ms
しかし、Windows側からテストしようとしたとき:_ping -f -l 9000 [destinationIP]
_
<linux client>に9000バイトのデータをpingします。
パケットはフラグメント化する必要がありますが、DFが設定されています。
パケットはフラグメント化する必要がありますが、DFが設定されています。
パケットはフラグメント化する必要がありますが、DFが設定されています。
パケットはフラグメント化する必要がありますが、DFが設定されています。
ぐるぐる回った後、ウィンドウからpingを実行するときに使用するサイズについて矛盾する投稿が表示されました。 8972 (9000-28)
を試しましたが、タイムアウトして応答がありません。 8986 (9014-28)
を試しましたが、断片化されたエラーが発生します。これはWindows/Linux間の問題だと思いましたが、他のWindowsサーバーにpingを実行しようとすると(すべてのサーバーでジャンボフレームがオンになっています)、同じ問題が発生します。 _8972
_を押すとタイムアウトが始まり、_9014
_から_8973
_に断片化されたエラーが発生することがわかりました。だから私の質問は:
9000
_ですか(LinuxとWindowsの違いのため)、それとも_9014
_ですか?fragmented
エラーが発生し、Linux側からはすべて問題ないように見える理由を誰もが知っていますか?これが私の switch で、_9216
_までのジャンボフレームを明確にサポートしています。
あなたは区別する必要があります:
ping
ペイロード:pingはIPv4(20バイトのオーバーヘッド)を介してICMP(8バイトのオーバーヘッド)を使用します-したがって、フラグメント化されていないpingの最大ペイロード長は1472バイト(MTU 1500)または8972バイト(MTU 9000)ですパスMTUをテストするには、[〜#〜] df [〜#〜]ビットを設定してエコー要求を送信する必要があります。これは、Windowsでは-f
によって、Linuxでは-M prohibit
によって実現されます。 -M do
*明示的にフラグメンテーションを有効にします。 「パケットを断片化する必要がありますが、DF set」は、ソースマシンが正しいセットアップを欠いていることを示しています。pingがタイムアウトすると、宛先またはその間の何かが機能しません。スイッチ通常、特大のフレーム用のカウンターがあります。
スイッチを必要以上に大きな最大フレームサイズに設定しても問題はありません。ただし、エンドノードとルーターがすべて正確に同じサイズに設定されていることを確認してください。MTUを設定する場合は9000、最大L2 PDU /フレームサイズを設定する場合は9018です。
Intelのジャンボパケット設定はやや誤解を招く可能性があります。ヘルプテキストには、FCS(4バイト)がカウントされないことが示されているため、9014
がMTU9000フレームの正しい設定です。