发布网友 发布时间:2024-09-07 07:46
共1个回答
热心网友 时间:2024-09-09 18:49
nslookup 程序是DNS 服务的主要诊断工具,它提供了执行DNS 服务器查询测试并获取详细信息。使用nslookup 可以诊断和解决名称解析问题、检查资源记录是否在区域中正确添加或更新,以及排除其他服务器相关问题。nslookup 命令的功能是查询一台机器的IP 地址和其对应的域名。它通常需要一台域名服务器来提供域名服务。如果用户已经设置好域名服务器,就可以用这个命令查看不同主机的IP 地址对应的域名。
模式
nslookup 有两种运行模式:非交互式和交互式。
非交互式通常用于返回单块数据的情况,其命令格式:
nslookup [-选项] 查询的域名 [DNS 服务器地址]
如果没有指明nslookup 要使用DNS 服务器地址,则nslookup 使用/etc/resolv.conf。文件定义DNS 服务进行查询。非交互式nslookup 程序运行完后,就会返回Shell 提示符下。如果要查询另外一条记录,则需要重新执行该程序,
交互式通常用于返回多块数据的情况,其命令格式:
nslookup [- DNS 服务器地址]
如果没有指明nslookup 要使用DNS 服务器地址,则nsookup 使用/etc/resolv.conf。文件定义的DNS服务进行查询。运行交互式nslookup 程序,就会进入nslookup 程序提示符,接下来就可以在后输入nslookup 的各种命令、需查询的域名或反向解析的IP 地址。查询完一条记录可接着在后输入新的查询,使用exit 命令可退出nslookup 程序.由于对DNS 服务器进行测试往往需要连续查询多条记录,所以实际更多地使用nslookup 程序的交互式。
主要用法
1.测试主机地址A 资源记录
进入nslookup 程序后,默认的查询类型是主机地址,在nslookup 程序提示符下直接输入要测试的完全规范域名FQDN,nslookup 会显示当前DNS 服务器的名称和IP 地址,然后返回完全规范域名FQDN 对应的IP 地址
测试反向解析指针PTR 资源记录
在nslookup 程序提示符下直接输入要测试的IP 地址,nslookup 会返回IP 地址所对应的完全规范域名FQDN。
2.测试别名CNAME 资源记录
在nslookup 程序提示符下先使用命令set type=cname设置查询的类型为别名,然后输入要测试的别名,nslookup 会返回对应的真实计算机。
3.测试邮件交换器MX 资源记录
在nslookup 程序提示符下先使用命令set type=mx设置查询的类型为邮件交换器然后输入要测试的域名,nslookup 会返回对应的邮件交换器地址。
4.测试起始授权机构SOA 资源记录
在nslookup 程序提示符下先使用命令set type=soa设置查询的类型为起始授权机构然后输入要测试的域名,nslookup 会返回对应的SOA 资源记录内容 。
5.测试名称服务器NS 资源记录
在nslookup 程序提示符下先使用命令set type=ns设置查询的类型为名称服务器,然后输入要测试的域名,nslookup 会返回对应的名称服务器地址。
6.测试负载均衡
测试负载均衡需要在查询的类型为主机地址,如果当前的查询类型不是主机地址,就应在nslookup程序提示符下先使用命令set type=a设置查询的类型为主机地址,然后输入要测试的负载均衡完全规范域名FQDN,nslookup 会返回对应的所有IP 地址。
7.设置默认的本地dns服务器
set domain=8.8.8.8
8.测试直接解析域名
测试直接解析域名需要在查询的类型为主机地址,如果当前查询类型不是主机地址,应在nslookup程序提示符下先使用命令set type=a设置查询的类型为主机地址,然后输入要测试的直接解析域名,nslookup 会返回域名对应的IP 地址。
9.测试泛域名
测试泛域名需要在查询的类型为主机地址,如果当前查询类型不是主机地址,就应在nslookup 程序提示符下先使用命令set type=a设置查询的类型为主机地址,然后输入任意主机名的域名(没有相应的A 记录),对于每个任意主机名的域名,nslookup 会返回同一个IP 地址。
10.测试外部Internet 域名
除了要测试本地DNS 服务器的区域数据外,还要测试DNS 服务器是否能解析外部:Internet 的域名(需要保证DNS 服务器能与Internet 连接),即测试named.conf 文件定义的根区域是否正确。在nslookup 程序提示符下输入如www.baidu.com 等Internet 上的完全规范域名FQDN,nslookup会返回对应的IP 地址。
小例子
1.最基本的用法
复制代码
代码如下:
[root@rudder ~]# nslookup baidu.com2.nslookup,交互方式,查看dns
复制代码
代码如下:
[root@rudder ~]# nslookupServer:172.17.0.254
Address:172.17.0.254#53
Non-authoritative answer: #非权威答案,表明是在缓存中读取的
www.baidu.comcanonical name = www.a.shifen.com.
Name:www.a.shifen.com
Address: 61.135.169.105 #返回第一个IP地址
Name:www.a.shifen.com
Address: 61.135.169.125 #返回第二个IP地址
复制代码
代码如下:
server 8.8.8.8 #设置域名服务器为 8.8.8.8Default server: 8.8.8.8
Address: 8.8.8.8#53
复制代码
代码如下:
www.baidu.com #再次请求百度的IP地址Server:8.8.8.8
Address:8.8.8.8#53
Non-authoritative answer:
www.baidu.comcanonical name = www.a.shifen.com.
Name:www.a.shifen.com
Address: 220.181.111.147 #不同的DNS获取的IP地址是不同的。