DNS.EXE segera mengalokasikan 5000+ port

15

Perintah ini menghapus semua port UDP terbuka oleh DNS.EXE

net stop dns

Setelah memulai kembali layanan DNS, DNS.EXE mengalokasikan 5000+ port.

net start dns

Itu tidak mengkonsumsi memori yang luas atau cpu. Namun saya perhatikan / khawatir banyak masalah koneksi http / smtp / pop3 ke server karena timeout. Saya baru saja memeriksa dan menemukan banyak port terbuka oleh DNS.EXE. Currports menampilkan port lokal UDP dari 50.000 hingga 56.000, alamat lokal :: dan alamat jarak jauh kosong. Baris terakhir netstat - perintah di bawah ini:

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

Saya tidak melihat port ini sebelumnya, jadi saya tidak tahu pasti itu ok atau tidak. Bagaimana menurut anda? Saya memang me-restart server dan email pemantauan / peringatan TIDAK melanjutkan.

Nime Cloud
sumber

Jawaban:

25

Ini adalah efek samping yang diketahui dari perbaikan terbaru yang didistribusikan untuk mengatasi MS08-037 , karena perbaikan terbaru ini dimaksudkan untuk mengurangi kemungkinan port yang digunakan untuk respons DNS.

Anda dapat membatasi jumlah port yang digunakan dengan menentukan Ukuran Pool Socket yang lebih rendah, seperti yang dijelaskan dalam artikel ini :

Menggunakan dnscmd.exe

  • Buka Prompt Perintah yang ditinggikan (Jalankan sebagai Administrator ...)
  • Masalah di dnscmd /Config /SocketPoolSize <value>mana <value>angka antara 0 dan 10.000

Menggunakan regedit.exe

  • Buka regedit.exedan rentangkan HKLMsarang
  • Navigasi ke SYSTEM\CurrentControlSet\services\DNS\Parameters
  • Jika belum ada, buat DWORDnilai baru bernamaSocketPoolSize
  • Tetapkan nilai desimal antara 0 dan 10.000
  • Mulai ulang layanan Server DNS: net stop dns && net start dns

Sadarilah bahwa pengaturan nilai terlalu rendah, secara efektif mengalahkan tujuan MS08-037

Jika Anda menggunakan Windows Server 2008 R2 dan hanya ingin memastikan bahwa sejumlah titik akhir UDP individual tidak digunakan oleh DNS, Anda juga dapat menentukan daftar rentang port yang akan dikecualikan dari penggunaan oleh DNS:

dnscmd /Config /SocketPoolExcludedPortRanges <start>-<end>
Mathias R. Jessen
sumber
1
Perintah untuk mengecualikan port tertentu adalah dnscmd /config /SocketPoolExcludedPortRanges [start]-[end]:, mengganti [mulai] dan [akhir] dengan rentang port yang Anda inginkan. Anda juga dapat mengedit nilai registri ' SocketPoolExcludedPortRanges' secara manual (terletak di kunci registri yang sama seperti yang disebutkan di atas).
Harrison Smith