+ -
当前位置:首页 → 问答吧 → 【求助】使用windows 2008 r2的同学注意,DNS服务占用5000多个UDP端口?

【求助】使用windows 2008 r2的同学注意,DNS服务占用5000多个UDP端口?

时间:2011-01-26

来源:互联网

一台windows 2008 r2 x64,安装DNS服务后,
DNS.exe占用5000多个UDP端口,内存占用200-300M,

google好像是MS的BUG,解决办法都是针对windows 2000/2003/2008的,R2无解。。。

作者: zcd668   发布时间: 2011-01-26

目前找到的资料显示:
引用:
微软的KB951748和 KB951746补丁会导致此问题出现
Windows DNS server 產生大量 UDP socket 的原因, 是因為上了MS08-037 的 patch.
目的是為了抵擋 DNS Cache Poisoning 攻擊,使用隨機的 socket 對外做 DNS query, 可以降低被 DNS cache poisoning 攻擊的偽
造回應封包命中的機率.

這是正常的現象不是 bug.
http://www.microsoft.com/taiwan/tech.../ms08-037.mspx

卸载KB951748和 KB951746补丁,可解决此问题,但无法防御DNS Cache Poisoning 攻擊.
也就是说,猪头MS发现DNS服务可能受到DNS cache poisoning 攻擊,于是发布了KB951748和 KB951746,使DNS服务使用随机socket对外做dns query,附带的效果是上千个upd端口占用以及巨量的内存开销。

另据推测,windows 2000/2003/2008可选卸载KB951748和 KB951746,使用外部防火墙策略来防止DNS cache poisoning,
而杯具的windows 2008 r2则内置了此补丁,是无法卸载的。。。

有其他同样使用windows 2008 r2的同学给验证一下吗?

作者: zcd668   发布时间: 2011-01-26

200~300M 也叫巨量内存开销。。。这个问题暂时先不讨论

端口使用应该可以改 SocketPoolSize,在注册表里面。

作者: mwenyuan   发布时间: 2011-01-26

呵~我之前的一个贴子也有问这个
https://bbs.et8.net/bbs/showthread.php?t=1005058

作者: 网络蝙蝠侠   发布时间: 1970-01-01