Linux中nslookup命令简介
1. 简介
在本教程中,让我们看看在Linux上使用nslookup命令的不同方法。
2. nslookup命令
** nslookup是一个用于查询域名服务器 (DNS) 的命令行工具,适用于 Linux 和 Windows 等操作系统:**
2.1.交互式与非交互式
我们有两种使用nslookup 的模式:交互式和非交互式。
首先,我们可以通过输入不带参数的命令来激活交互模式:
[kdoyle@localhost ~]$ nslookup
>
随后,我们会收到一个命令提示符来键入单个命令,而无需每次都键入nslookup 。
另一方面,非交互模式使用与参数相同的命令:
[kdoyle@localhost ~]$ nslookup -type=a redhat.com
现在,让我们使用nslookup运行一些查询。
2.2. 查找域
查看域名查询的结果:
[kdoyle@localhost ~]$ nslookup redhat.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: redhat.com
Address: 209.132.183.105
**DNS 记录(或A 记录)在文本“非权威答案”之后开始。**这些记录显示与域关联的 IP 地址。
请记住,DNS 记录将域名映射到计算机系统的 IP 地址。
2.3. 反向 DNS 查找
同样,我们可以从 IP 地址中查找域名:
[kdoyle@localhost ~]$ nslookup
> type=ptr
> 209.132.183.105
105.183.132.209.in-addr.arpa name = redirect.redhat.com.
请注意返回域名与原始域名的细微差别。实际上正在返回一条称为 PTR 的不同记录。 某些域没有为 IP 地址注册的 PTR 记录:
[kdoyle@localhost ~]$ nslookup
> 104.18.62.78
Server: 192.168.1.1
Address: 192.168.1.1#53
** server can't find 78.62.18.104.in-addr.arpa: NXDOMAIN
3.类型参数
接下来,类型参数为我们的查找添加更多信息。例如,ptr提供了上面提到的反向 DNS。
现在让我们尝试一些其他类型。
3.1.所有参赛作品
我们可以通过指定*-type* = a来获取所有 DNS 条目:
[kdoyle@localhost ~]$ nslookup -type=a blogdemo.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: blogdemo.com
Address: 104.18.63.78
Name: blogdemo.com
Address: 104.18.62.78
3.2. 权威(SOA)
接下来,我们查看有关域的权威 (SOA) 信息。例如,A 记录包含邮件信息和此处显示的其他信息:
[kdoyle@localhost ~]$ nslookup -type=soa blogdemo.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
blogdemo.com
origin = lakas.ns.cloudflare.com
mail addr = dns.cloudflare.com
serial = 2033559691
refresh = 10000
retry = 2400
expire = 604800
minimum = 3600
由于互联网上分布着许多域名服务器,我们得到的结果并非第一手资料。这些被称为非权威答案。但是,它们仍然提供准确的记录。
3.3. 任何条目
最后,type=any参数返回所有上述内容,**包括服务器上的任何其他类型的记录。**当我们不知道我们想要哪个记录时,这很有帮助。
请注意,type=any不太可能在大多数公共名称服务器上实现,但它在内部网络上仍然有用。
4. 名称服务器信息
有时,我们希望查看名称服务器信息以验证域记录的存在位置。
例如,我们可以使用type=ns测试我们的域:
[kdoyle@localhost ~]$ nslookup -type=ns blogdemo.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
blogdemo.com nameserver = lakas.ns.cloudflare.com.
blogdemo.com nameserver = meera.ns.cloudflare.com.
因此,我们可以确定要为通过域的服务器到服务器通信配置什么 DNS。请记住,查询新的 DNS 需要更改本地网络配置。
5. 打开调试
此外,nslookup的交互模式使用户能够调试查询:
[kdoyle@localhost ~]$ nslookup -debug blogdemo.com
Server: 192.168.1.1
## Address: 192.168.1.1#53
QUESTIONS:
blogdemo.com, type = A, class = IN
ANSWERS:
-> blogdemo.com
internet address = 104.18.63.78
ttl = 300
-> blogdemo.com
internet address = 104.18.62.78
ttl = 300
AUTHORITY RECORDS:
## ADDITIONAL RECORDS:
Non-authoritative answer:
Name: blogdemo.com
Address: 104.18.63.78
Name: blogdemo.com
## Address: 104.18.62.78
QUESTIONS:
blogdemo.com, type = AAAA, class = IN
ANSWERS:
-> blogdemo.com
has AAAA address 2606:4700:3030::6812:3e4e
ttl = 300
-> blogdemo.com
has AAAA address 2606:4700:3036::6812:3f4e
ttl = 300
AUTHORITY RECORDS:
## ADDITIONAL RECORDS:
Name: blogdemo.com
Address: 2606:4700:3030::6812:3e4e
Name: blogdemo.com
Address: 2606:4700:3036::6812:3f4e