目录
一、Ping
二、Nslookup
三、Dig
1、使用dig查询其他记录
2、使用dig查询整个解析过程
四、常见的网络排错命令
1、Ping
2、Tracert
3、Telent
可能我们经常会遇到客户端反应网页无法打开的问题,当然原因是多方面的,我们首先从DNS方面入手。
DNS的troublesshotting主要有以下几个小工具:
一、Ping
ping是一个所有操作系统都支持的简单工具。
我们可以利用ping来解析DNSde A记录。
用ping来查询域名解析的格式为:
Ping [目标域名]
以下是解析成功的结果输出,ping首先解析出域名的ip,然后发送ICMP报文到这个地址测试网络连通性。
如果解析失败是以下输出,可以初步认定本机配置的DNS无法解析该域名,
需要注意的是ping首先会查询本地host文件,然后是本地的DNS缓存,
如果都查不到才会去查询本地配置的DNS服务器。
Nslooup,Dig不会查询本地的host文件
为了确保ping的准确性,在使用ping之前也可以使用ipconfig/flushdns 先清一下本地的缓存
二、Nslookup
Nslookup也是一个比较常用的查询域名的工具,功能比ping强大些,可以指定DNS查询服务器和查询不同的DNS记录,包括A记录、CNAME记录、MX记录等。
Nslooup查询域名的语法为:
Nslookup [目标域名]
上图中后两行显示的就是此域名的解析结果;
非权威应答的意思是此域名并非属于本地DNS的区域,是通过查询其他DNS服务器或者本地的DNS缓存得来。
nslookup使用指定的DNS查询域名语法为:
Nslookup [目标域名] [指定DNS服务器]
如上图所示,应答DNS服务器地址为172.17.23.146
使用nslookup查询其他类型的域名的语法为:
nslookup [-qt=类型][目标域名]
比如查询mx记录(mx记录是邮件交换记录)
Nslookup查询不到域名的错误信息如下:
三、Dig
Dig不是windows自带的命令行工具,需要自行安装,解压到本地路径,使用的时候导航到该路径下调用dig或者使用Set设置环境变量就可以直接使用了Set的方法为
在命令窗口运行set查看本地环境变量的配置,主要关注path这一项
复制path的内容,将dig的路径添加进去然后使用set path设置
比如dig 保存在 d:\dig
那set path的命令为(dig的路径夹在最前面和最后面都可以):
Set path =d:\dig;C:\windows\system32;C:\Windows;C:\Windows\system32\Wbem;
安装成功后在命令行窗口输入dig后回车,出现以下揭秘那说明dig安装成功
Dig查询域名的语法为:
Dig [目标域名]
Dig的输出比较多,我把关键信息框出来了,我们查询的是的域名,answer section部分是查询结果
Dig使用指定的DNS服务器解析域名语法为:
Dig [@server ip][目标域名]
Answer section 内容为查询结果,server显示了是由哪台DNS进行的查询
1、使用dig查询其他记录
Dig默认查询A记录,可以通过参数查询mx记录、PTR记录等,
语法为:
Dig [目标域名][查询类型]
比如查询的 mx记录为
2、使用dig查询整个解析过程
语法为:
Dig [目标域名] + trace
从以下输出可以看出整个DNS查询的过程
首先从根域名(.)获得负责.com域名的服务器 a.gtld-从.com域服务器获得负责的域名服务器从负责的域名服务器中查询到所需的记录
四、常见的网络排错命令
有时DNS解析没有问题,但是还是不能访问,那就要查看网络是否有问题了
常用的命令有tracert/telnet/ping
ping主要是判断网络的连通性,tracert主要是判断网络路径和延时,telnet常用于连接远端设备的端口。
检测相关服务是否正常工作,这三个命令都是Windows自带无需安装。
1、Ping
Ping 是我们最常用的,基本查询语法为:
Ping [目标域名]
Ping [目标IP]
ping的语法查询可以使用通过在命令行窗口输入ping/?查询
2、Tracert
Tracert 是路由跟踪程序,用于确定网络访问的路径
基本查询语法为:
Tracert -d [目标IP]Tracert -d [目标域名]
Tracert 也可以通过在命令行窗口输入tracert /?查询
3、Telent
telnet主要用于测试远程ip的某些服务器端口是否开启或者是否能正常连通。
语法为:
telnet [ip][端口]
如果正常连接会显示服务器就绪的画面
如果端口未开启或者防火墙限制,会显示连接失败
telnet语法可以通过输入telnet/?查询
对于直接运行Telnet报错的,一般是因为win7默认没有安装telnet客户端导致,
可以通过在控制面板-程序和功能-打开或关闭Windows功能,添加安装telnet客户端方法解决