DNS.EXEは5000以上のポートをすぐに割り当てます


15

このコマンドは、DNS.EXEによって開いているすべてのUDPポートをクリアします

net stop dns

DNSサービスを再起動すると、DNS.EXEは5000以上のポートを割り当てます。

net start dns

大量のメモリやCPUを消費しません。しかし、タイムアウトのためにサーバーへの多くのhttp / smtp / pop3接続の問題に気づいた/警告しました。DNS.EXEで多数の開いているポートを調べてみました。Currportsは、50000から56000までのUDPローカルポートを表示します。ローカルアドレスは::で、リモートアドレスは空です。netstatの最後の行-コマンドは次のとおりです。

UDP    [::]:55976             *:*   
UDP    [::]:55977             *:*   
UDP    [::]:55978             *:*     
UDP    [::]:55979             *:*     
UDP    [::]:55980             *:*     
UDP    [::]:55981             *:*     
UDP    [::]:55982             *:*    

私はこれらのポートに以前気がつかなかったので、大丈夫かどうかはわかりません。どう思いますか?サーバーを再起動しましたが、監視/警告メールは継続していません。

回答:


25

これは、よく知られている 効果アドレスに分配修正プログラムのMS08-037修正プログラムがDNS応答に使用されるポートの予測可能性を減少することが意図されているので、。

で説明するように、下のソケットプールのサイズを定義することによって使用されるポートの量を制限することができ、この記事

dnscmd.exeを使用する

  • 管理者特権でコマンドプロンプトを開きます(管理者として実行...)
  • 問題0と10000の間の数でありますdnscmd /Config /SocketPoolSize <value><value>

regedit.exeを使用する

  • ハイブを開いregedit.exeて展開するHKLM
  • 案内する SYSTEM\CurrentControlSet\services\DNS\Parameters
  • まだ存在しない場合は、DWORDという名前の新しい値を作成しますSocketPoolSize
  • 0から10000までの10進数値を設定します
  • DNSサーバーサービスを再起動します。 net stop dns && net start dns

値を低く設定しすぎると、MS08-037の目的が事実上無効になることに注意してください

Windows Server 2008 R2を使用していて、個々のUDPエンドポイントの多くがDNSによって使用されないようにしたい場合は、DNSによる使用から除外するポート範囲のリストを指定することもできます。

dnscmd /Config /SocketPoolExcludedPortRanges <start>-<end>

1
特定のポートを除外するコマンドは次のとおりです。dnscmd /config /SocketPoolExcludedPortRanges [start]-[end][start]と[end]を目的のポート範囲に置き換えます。レジストリ値 ' SocketPoolExcludedPortRanges'を手動で編集することもできます(上記と同じレジストリキーにあります)。
ハリソンスミス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.