DNS.EXE виділяє 5000+ портів негайно


15

Ця команда очищає всі відкриті порти UDP за допомогою DNS.EXE

net stop dns

Після перезапуску служби DNS DNS.EXE виділяє 5000+ портів.

net start dns

Він не споживає великої пам'яті або процесора. Однак я помітив / тривожив багато проблем з підключенням http / smtp / pop3 до сервера через тайм-аути. Я щойно оглянув і виявив тонни відкритих портів DNS.EXE. Currports відображає локальні порти UDP від ​​50000 до 56000, локальні адреси ::, а віддалені адреси порожні. Останні рядки netstat - команди нижче:

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

Я раніше не помічав цих портів, тому точно не знаю, добре це чи ні. Що ти думаєш? Я перезапустив сервер і повідомлення з моніторингу / оповіщення НЕ продовжуються.

Відповіді:


25

Це добре відомий побічний ефект виправлення, що поширюється на адресу MS08-037 , оскільки виправлення призначене для зменшення передбачуваності портів, що використовуються для відповідей DNS.

Ви можете обмежити кількість використовуваних портів, визначивши менший розмір пулу Socket, як описано в цій статті :

Використання dnscmd.exe

  • Відкрийте підвищений командний рядок (запустіть як адміністратор ...)
  • Питання, dnscmd /Config /SocketPoolSize <value>де <value>число між 0 і 10000

Використання regedit.exe

  • Відкрийте regedit.exeі розгорніть HKLMвулик
  • Перейдіть до SYSTEM\CurrentControlSet\services\DNS\Parameters
  • Якщо його ще немає, створіть нове DWORDзначення з назвоюSocketPoolSize
  • Встановити десяткову величину між 0 і 10000
  • Перезапустіть сервер DNS: net stop dns && net start dns

Майте на увазі, що встановлення значення занадто низьке, ефективно перемагає мету MS08-037

Якщо ви користуєтеся Windows Server 2008 R2 і просто хочете переконатися, що DNS не використовує кілька окремих кінцевих точок UDP, ви також можете вказати список діапазонів портів, які слід виключити з використання DNS:

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

1
Команда для виключення конкретних портів полягає в: dnscmd /config /SocketPoolExcludedPortRanges [start]-[end]заміні [start] і [end] на потрібний діапазон портів. Ви також можете редагувати значення реєстру ' SocketPoolExcludedPortRanges' вручну (розташований у тому самому ключі реєстру, як зазначено вище).
Гаррісон Сміт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.