当DNS解析出现错误,例如把一个域名解析成一个错误的IP地址,或者根本不知道某个域名对应的IP地址是什么时,就无法通过域名访问相应的站点了,这就是DNS解析故障。出现DNS解析故障最大的症状就是访问站点对应的IP地址没有问题,然而访问他的域名就会出现错误。

1.用nslookup(网路查询)来判断是否真的是DNS解析故障:想要百分之百判断是否为DNS解析故障就需要通过系统自带的nslookup来解决。第一步:通过“开始→运行→输入CMD回车”进入命令行模式。第二步:输入nslookup命令后回车,将进入DNS解析查询界面。第三步:命令行会出现当前系统所使用的DNS服务器地址。第四步:输入无法访问的站点对应的域名。假如不能访问的话,那么DNS解析应该是不能正常运行的,会收到DNS request timed out, timeout was 2 seconds的提示信息。这说明本地计算机确实出现了DNS解析故障。如果DNS解析正常的话会反馈正确的IP地址。如下图
2.查询DNS服务器是否正常工作:这时候要看本地计算机使用的DNS地址是多少了,并且查询它的运行情况。第一步:通过“开始→运行→输入CMD回车”进入命令行模式。第二步:输入ipconfig/all命令来查询网络参数。第三步:在ipconfig /all显示的信息中能看到一个地方写着DNS SERVERS,这个就是本地的DNS服务器地址。第四步:如果在DNS服务器处显示的是个人公司的内部网络地址,那么说明该公司的DNS解析工作是交给公司内部DNS服务器来完成的,这是需要检查这个DNS服务器,在DNS服务器上进行nslookup操作看是否可以正常解析。解决DNS服务器上的DNS服务故障,一般来说问题也能够解决。如下图
3. 清除DNS缓存信息法:第一步:通过“开始->运行->输入CMD”进入命令行模式。第二步:在命令行模式输入ipconfig /flushdns命令,当出现”successfully flushed the dns resolver cache:的提示时就说明当前计算机的缓存信息已经被成功清除。第四步:接下来我们访问域名时,就会到DNS服务器上获取最新的解析地址,再也不会出现因为以前缓存造成解析错误故障了。
4.修改HOSTS(主机)文件法:第一步:直接进入c:windowssystem32driversetc目录中找到HOSTS文件。第二步:右击HOSTS文件选择编辑。第三步:之后我们就会看到HOSTS文件的所有内容了,默认情况下只有一行内容“127.0.0.1 localhost”。(其他前面带有#的行都不是真正的内容,只是帮助信息而已)。第四步:将你希望进行DNS解析的条目添加到HOSTS文件中。具体格式是先写该域名对应的IP地址,然后空格接域名信息。第五步:设置完毕后我们访问网址时就会自动根据是在内网还是外网来解析了。如下图
DNS 排障:递归、权威与缓存
DNS 解析失败先分清是”本地解析器”还是”权威服务器”问题。用 nslookup/dig 看返回的是 SERVFAIL、NXDOMAIN 还是超时:NXDOMAIN 是域名不存在,SERVFAIL 多为权威或递归配置异常,超时则是链路或 DNS 被劫持/污染。改公共 DNS(如 223.5.5.5)可快速验证是否为运营商 DNS 问题。
缓存与 TCP/IP 故障树
本地 hosts、系统 resolver 缓存层层叠加,排障先清缓存(Win: ipconfig/flushdns;Linux: resolvectl flush-caches)。递归服务器本身要防缓存污染与放大攻击。把 DNS 与 TCP/IP 连通性放在同一故障树里看,常能发现是出口 NAT 或防火墙策略挡了 53 端口。
相关阅读
- 网页打不开但聊天正常:DNS解析故障的排查与处理
- DNS 异常:快速排查与解决指南
- DNS 解析错误怎么排查:现象到处置的四步法
- DNS 解析异常:系统排查思路
- 运营商 DNS 解析异常导致大面积访问故障:一次复盘与整改
本文为转载作品。版权归原作者所有;本站仅作技术学习与方案参考,如涉侵权请联系我们删除。



评论 0
还没有评论,来抢沙发吧。