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를 사용 중이고 DNS에서 여러 개의 개별 UDP 끝점을 사용하지 않도록하려면 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.