服务器添加电脑到局域网 dns加不了
新装了台机器,服务系统跑起来第一件事就是器添往局域网里塞。IP配好,加电局域加网关填对,服务ping路由器通,器添ping外网也通。加电局域加按理说这就完事了,服务结果浏览器里敲内网域名,器添转圈转到死,加电局域加DNS解析直接卡住。服务换IP访问那台内网服务器,器添秒开。加电局域加问题就锁死在DNS上了。服务
我先查了本机DNS设置。器添Windows网络适配器里,加电局域加首选DNS指向内网那台DNS服务器,备用写了8.8.8.8。ipconfig /all一看,没毛病。nslookup手动指定内网DNS服务器查域名,返回“请求超时”。但换用外网DNS查同样的内网域名,肯定查不到——这正常,内网域名本来就不该往外网DNS扔。可内网DNS本身都超时,说明这台电脑跟DNS服务器之间压根没通。
ping了一下DNS服务器的IP。不通。这就怪了,明明跟DNS服务器在同一个网段,网关都能通,怎么DNS服务器就不通?我看了眼ARP表,arp -a,发现DNS服务器对应的MAC地址是空的。也就是说,ARP请求发出去了,没人应答。要么DNS服务器防火墙拦了ICMP,要么……这电脑根本就没把包发对地方。
回头检查IP配置。子网掩码255.255.255.0,IP是192.168.1.87,DNS服务器是192.168.1.10。同一网段,没理由不通。我又看了下路由表,route print,默认网关192.168.1.1。去192.168.1.10的流量应该走直连路由,不经过网关。可ARP就是没回应。
这时候我注意到一个细节。这台电脑的网卡是USB转RJ45的,驱动是Windows自动装的。设备管理器里看,网卡状态正常,但高级选项卡里有个“节能以太网”和“绿色以太网”是开启的。我随手把它们关了。再ping DNS服务器,通了。nslookup也正常了。浏览器里内网域名直接打开。
问题出在网卡的节能特性上。某些USB网卡或板载网卡在驱动默认设置下,会为了省电而延迟或丢弃某些类型的广播包。ARP请求恰好是广播包。网关能通是因为网关的ARP条目可能已经被缓存了,或者网关响应更快,触发了网卡正常唤醒。DNS服务器那台机器可能响应稍慢,或者网卡在低功耗状态下直接没把ARP请求发出去。
这事我后来在另一台Intel板载网卡的机器上也遇到过。那台机器是Windows Server 2019,网卡驱动里有个“等待链接”和“中断节流”选项。默认开启时,DNS解析偶尔会超时,尤其是内网DNS。关掉之后,问题消失。微软的文档里其实提过,某些节能设置会影响网络发现和名称解析,但藏得很深,不特意去找根本看不到。
还有一次更离谱。一台笔记本连WiFi,内网DNS解析时好时坏。最后发现是无线网卡的“漫游主动性”设得太高,导致网卡频繁扫描其他AP,丢包。把漫游主动性调到最低,DNS稳定了。这跟有线网卡的节能问题本质一样——网卡在后台忙别的,没空处理你的DNS查询。
所以,服务器添加电脑到局域网,DNS加不了,别急着去改DNS服务器配置。先看客户端。ping DNS服务器IP通不通。不通就查ARP。ARP没回应,十有八九是网卡驱动在捣鬼。把网卡高级设置里所有跟节能、绿色、低功耗、中断节流相关的选项全关了。USB网卡尤其要注意,很多廉价USB网卡芯片的Windows驱动默认就是省电优先。
另外,如果DNS服务器本身是Windows Server,检查一下它的防火墙有没有放行UDP 53和TCP 53。我见过有人把DNS服务器防火墙开着,只放行了域控需要的端口,结果普通成员机的DNS查询被拦。但这种情况通常表现为所有客户端都解析不了,而不是单台电脑。
单台电脑DNS加不了,问题九成在客户端网卡。别被“DNS”这个词带偏了,以为是域名系统的事。底层链路没通,上层协议再对也没用。
(责任编辑:综合)














