在实际应用过程当中可能会遇到DNS解析错误的问题,就是说当咱们访问一个域名时没法完成将其解析到IP地址的工做,而直接输入网站IP却能够正常访问,这就是由于DNS解析出现故障形成的。这个现象发生的机率比较大,因此本文将从零起步教给各位读者一些基本的排除DNS解析故障的方法。windows
1、什么是DNS解析故障?缓存
通常来讲像咱们访问的www.sina.com,www.it168.com这些地址都叫作域名,而众所周知网络中的任何一个主机都是IP地址来标识的,也就是说只有知道了这个站点的IP地址才可以成功实现访问操做。服务器
不过因为IP地址信息不太好记忆,因此网络中出现了域名这个名字,在访问时咱们这须要输入这个好记忆的域名便可,网络中会存在着自动将相应的域名解析成IP地址的服务器,这就是Dns服务器。可以实现DNS解析功能的机器能够是本身的计算机也能够是网络中的一台计算机,不过当DNS解析出现错误,例如把一个域名解析成一个错误的IP地址,或者根本不知道某个域名对应的IP地址是什么时,咱们就没法经过域名访问相应的站点了,这就是DNS解析故障。网络
出现DNS解析故障最大的症状就是访问站点对应的IP地址没有问题,然而访问他的域名就会出现错误。网站
2、如何解决DNS解析故障:操作系统
当咱们的计算机出现了DNS解析故障后不要着急,解决的方法也很简单。命令行
(1)用nslookup来判断是否真的是DNS解析故障:dns
要想百分之百判断是否为DNS解析故障就须要经过系统自带的NSLOOKUP来解决了。ip
第一步:确认本身的系统是windows 2000和windows xp以上操做系统,而后经过“开始->运行->输入CMD”后回车进入命令行模式。get
第二步:输入nslookup命令后回车,将进入DNS解析查询界面。
第三步:命令行窗口中会显示出当前系统所使用的DNS服务器地址,例如笔者的Dns服务器IP为202.106.0.20。
第四步:接下来输入你没法访问的站点对应的域名。例如笔者输入 www.softer.com,假如不能访问的话,那么DNS解析应该是不可以正常进行的。咱们会收到DNS request timed out,timeout was 2 seconds的提示信息。这说明咱们的计算机确实出现了DNS解析故障。
小提示:若是DNS解析正常的话,会反馈回正确的IP地址,例如笔者用www.sohu.com这个地址进行查询解析,会获得name:sohu.com,addresses:61.135.133.103,61.135.133.104的信息。
(2)查询Dns服务器工做是否正常:
这时候咱们就要看看本身计算机使用的DNS地址是多少了,而且查询他的运行状况。
第一步:确认本身的系统是windows 2000和windows xp以上操做系统,而后经过“开始->运行->输入CMD”后回车进入命令行模式。
第二步:输入ipconfig /all命令来查询网络参数。
第三步:在ipconfig /all显示信息中咱们可以看到一个地方写着DNS SERVERS,这个就是咱们的DNS服务器地址。例如笔者的是202.106.0.20和202.106.46.151。从这个地址能够看出是个外网地址,若是使用外网DNS出现解析错误时,咱们能够更换一个其余的Dns服务器地址便可解决问题。
第四步:若是在DNS服务器处显示的是本身公司的内部网络地址,那么说明大家公司的DNS解析工做是交给公司内部的DNS服务器来完成的,这时咱们须要检查这个DNS服务器,在DNS服务器上进行nslookup操做看是否能够正常解析。解决 Dns服务器上的DNS服务故障,通常来讲问题也可以解决。
(3)清除DNS缓存信息法:
当计算机对域名访问时并非每次访问都须要向DNS服务器寻求帮助的,通常来讲当解析工做完成一次后,该解析条目会保存在计算机的DNS缓存列表中,若是这时DNS解析出现更改变更的话,因为DNS缓存列表信息没有改变,在计算机对该域名访问时仍然不会链接Dns服务器获取最新解析信息,会根据本身计算机上保存的缓存对应关系来解析,这样就会出现DNS解析故障。这时咱们应该经过清除DNS缓存的命令来解决故障。
第一步:经过“开始->运行->输入CMD”进入命令行模式。
第二步:在命令行模式中咱们能够看到在ipconfig /?中有一个名为/flushdns的参数,这个就是清除DNS缓存信息的命令。
第三步:执行ipconfig /flushdns命令,当出现“successfully flushed the dns resolver cache”的提示时就说明当前计算机的缓存信息已经被成功清除。
第四步:接下来咱们再访问域名时,就会到Dns服务器上获取最新解析地址,不再会出现由于之前的缓存形成解析错误故障了。
(4)修改HOSTS文件法:
修改HOSTS法就是把HOSTS文件中的DNS解析对应关系进行修改,从而实现正确解析的目的。由于在本地计算机访问某域名时会首先查看本地系统中的HOSTS文件,HOSTS文件中的解析关系优先级大于Dns服务器上的解析关系。
这样当咱们但愿把某个域名与某IP地址绑定的话,就能够经过在HOSTS文件中添加解析条目来实现。
第一步:经过“开始->搜索”,而后查找名叫hosts的文件。
第二步:固然对于已经知道他的路径的读者能够直接进入c:\windows\ system32\drivers\etc目录中找到HOSTS文件。若是你的系统是windows 2000,那么应该到c:\winnt\system32\drivers\etc目录中寻找。
第三步:双击HOSTS文件,而后选择用“记事本”程序将其打开。
第四步:以后咱们就会看到HOSTS文件的全部内容了,默认状况下只有一行内容“127.0.0.1 localhost”。(其余前面带有#的行都不是真正的内容,只是帮助信息而已)
第五步:将你但愿进行DNS解析的条目添加到HOSTS文件中,具体格式是先写该域名对应的 IP地址,而后空格接域名信息。例如笔者添加了“211.153.80.1 www.ftedu.gov.cn”与“10.82.0.1 www.ftedu.gov.cn”两个条目。
第六步:设置完毕后咱们访问www.ftedu.gov.cn时就会自动根据是在内网仍是外网来解析了。
3、总结:
经过上面介绍的四个步骤,咱们就能够解决大部分DNS解析问题了,这几个方法中前三个是按部就班的一步步解决DNS解析故障,而最后一个修改HOSTS文件则是在实在没有办法的时候,一种权宜之计。固然不论是经过哪一种方法,咱们均可以解决由于 DNS解析错误带来的网络故障。相信这些方法能够帮助各位IT168的读者解决更多的实际问题。