質問: windowsで使用されているmtuを確認する方法xp webページにアクセスしようとすると「サーバーへの接続がリセットされました」というエラー(windowsネットワーク診断ツールによるhttpエラー12031)がランダムに発生するという非常に奇妙な問題に苦しんでいます-これは、webページかどうかに関係なく発生します私がアクセスしようとしているのは、外部インターネット上、またはlocalhostで実行されているローカルapacheインスタンスからのものであってもです。これは、windows xpを実行しているローカルネットワーク(ワイヤレスではなくイーサネット)上のすべてのコンピューターに影響します。ネットワークトラフィックで使用されるmtuに関係している可能性があることが示唆されました。 pingテスト を実行して、断片化されていない最大のパケットを見つけると、1492バイト(ヘッダーの場合は+28バイト?)のパッケージでlocalhostにpingを実行できます。 1462バイト(28バイトのヘッダーを含めると1490バイト)のパッケージを持つルーター。 googleのように外側で何かをpingしようとすると、1430(ヘッダー付きの1458)を超えるものは何も取得できません。私はwindowsを更新するためにさまざまな一連の指示に従って試しましたxpこのmtu設定のレジストリ、更新hklm\system\currentcontrolset\services\tcpip\parameters\interfaces\{adapterid}\mtu。私は代替値の終わりを試していません:最も明白な正しい値は1490のようですが、1462、1458、1430なども試しました。変更を有効にするためにコンピューターを再起動すると、 数分間動作するようです(一貫性ではなく常にランダムであるため、特定するのは難しい)が、長く続くことはありません。最初は、1430を値として試していたところ、数分正常に動作した後、pingテストの結果が28バイト減少しました-突然、1402バイトのパッケージしかgoogleに渡せないことがわかりました。 mtuレジストリ設定を1402に更新した場合、再起動して数分待つと、1374、1346などになります。ネットワーク上の他のコンピューターは影響を受けず(1430のまま)、mtu設定を削除しましたレジストリからのものを正常に復元します(まだ壊れています)。これをすべて診断するのが一番難しいのは、正しいレジストリ設定を使用しているかどうかを判断するのが非常に難しいことです。だから最も簡単に言えば、私の質問は次のようになります:windowsが使用しようとしているmtu設定を確認するにはどうすればよいですかまた、mtuが28まで低下し続ける理由を知る方法がある場合は、それも役に立ちます(たとえば、値が変化した時点で何かを記録するwindowsログファイルがどこかにあるかどうか)。最後に、私が使用しようとしているmtu設定を伝える方法を誰かが決定的に教えてくれるなら、それは素晴らしいことです!
回答: microsoft kb314496: さまざまなネットワークトポロジのデフォルトのmtuサイズ 。 通常のネットワーク設定では、mtu構成を試そうとしないでください。 ここにvbコード参照 があります。 drtcp と呼ばれるツールもあります:レジストリでは、 hklm\software\microsoft\windows nt\currentversion\networkcardsに移動 興味のあるアダプターを開きます servicename文字列をコピーします hklm\systemでその文字列を検索します。 netcfginstanceidキーと一致します その少し上がmaxframesizeキーになります(鉱山では1514と表示されています) これをnetshコマンドで変更する方法もあります。また、 パスmtuディスカバリー構成 も確認してください。