Linux查看DNS地址以及端口,nslookup命令以及更强大的dig命令

先说结论:DNS端口一般默认为53,默认采用UDP协议:
下面说查看方式:

一、使用nslookup命令查看

nslookup baidu.com

返回结果为:
在这里插入图片描述
可以看到,我的服务器DNS地址是100.100.2.136,端口为53.

二、通过resolv.conf 文件查看DNS地址

cat /etc/resolv.conf 

在这里插入图片描述
可以看到,结果和上面一致。

三、获取目标服务器IP

这个就是常见的Ping命令了:

ping baidu.com

结果如下,可以看到百度的一个服务器IP是39.156.69.79,这与一中的nslookup 结果一致。
在这里插入图片描述
总结:nslookup 命令既可以看到resolv.conf文件DNS地址,又可以起到ping命令查看域名ip的效果,除了这些之外,还能额外看到DNS服务器端口信息。

四、更强大的dig命令

dig,和nslookup作用有些类似,都是DNS查询工具。
dig,其实是一个缩写,即Domain Information Groper。

一些专业的DNS管理员在追查DNS问题时,都乐于使用dig命令,是看中了dig设置灵活、输出清晰、功能强大的特点。

4.1 基础的dig用法
[deployer@host-172-25-0-33 ~]$ dig

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>>
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 31395
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;.				IN	NS

;; Query time: 4001 msec
;; SERVER: 11.125.0.12#53(11.125.0.12)
;; WHEN: Thu Apr  2 11:26:14 2020
;; MSG SIZE  rcvd: 17
4.2 指定114 DNS来查baidu.com的A记录
 dig  @114.114.114.114  www.baidu.com A

对应的命令是:

dig @dnsserver name querytype
4.3 指定用tcp协议和114 DNS来查baidu.com的A记录
dig +tcp  @114.114.114.114  www.baidu.com A
4.4 跟踪dig全过程
dig +trace roclinux.cn

在这里插入图片描述
此外,还有一篇博文描写nolookup很详细,这里列出来:Linux命令学习之nslookup

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要查看Linux中的DNS缓存,可以使用以下命令: 1. 使用dig命令查询DNS缓存: dig @127...1 -p 53 example.com 其中,127...1是本地DNS服务器的IP地址,53是DNS服务器端口号,example.com是要查询的域名。 2. 使用nslookup命令查询DNS缓存: nslookup -type=a example.com 其中,-type=a表示查询A记录,example.com是要查询的域名。 3. 使用dnsmasq命令查询DNS缓存: dnsmasq -q -S 127...1 example.com 其中,-q表示静默模式,-S表示使用指定的DNS服务器,127...1是本地DNS服务器的IP地址,example.com是要查询的域名。 ### 回答2: DNS(Domain Name System)是一种用于将域名解析为IP地址的系统。在Linux系统中,DNS缓存保存着最近一次DNS查询的结果。这些缓存可以帮助减少对DNS服务器的查询次数,加快访问速度。在某些情况下,为了确保DNS解析的准确性,需要查看DNS缓存。那么,如何在Linux操作系统中查看DNS缓存呢? 对于Ubuntu和Debian系统,可以通过以下命令查看DNS缓存: ```bash sudo systemd-resolve --statistics ``` 该命令将显示一些有关网络连接的统计数据和DNS缓存的详细信息。其中,DNS缓存的数据将在“Cache”标签下列出。 对于Red Hat Enterprise Linux和CentOS系统,可以使用以下命令查看DNS缓存: ```bash sudo rndc dumpdb -cache ``` 该命令将导出DNS缓存中的所有记录并将其保存到/var/named/data/cache_dump.db文件中。可以使用任何文本编辑器打开此文件以查看缓存中的内容。 除了以上方法,还可以使用dig命令查看DNS缓存。dig命令用于DNS查询和DNS故障排除,可以显示DNS服务器的详细信息。以下是查看DNS缓存的dig命令: ```bash dig mydomain.com +nostats +nocomments +nocmd ``` 这个命令将从DNS缓存中显示“mydomain.com”的IP地址和其他相关信息。 总之,在Linux操作系统中查看DNS缓存的方法有很多种。这些命令可以帮助网络管理员好地管理DNS服务器和提高网络性能。 ### 回答3: Linux操作系统自带DNS缓存,用于存储域名与IP地址之间的映射关系,以便于快速访问。 如果需要在Linux系统中查看DNS缓存,可以使用如下命令: 1. 查看当前DNS缓存项的数量 ``` $ sudo systemctl status systemd-resolved.service ``` 输出结果中的“Current DNS Server”一项即为当前缓存的DNS服务器数量。 2. 查询指定域名的缓存信息 ``` $ dig @127.0.0.53 example.com ``` 其中“127.0.0.53”为本地DNS服务器地址,“example.com”为需要查询的域名。 输出结果中的“ANSWER SECTION”一项即为该域名对应的IP地址。 3. 清空DNS缓存 ``` $ sudo systemd-resolve --flush-caches ``` 该命令可以清空本地DNS缓存,重新获取最新的DNS映射信息。 需要注意的是,在Linux系统中,DNS缓存的默认TTL(生存时间)为60秒,当缓存过期后将重新查询DNS服务器获取最新信息。 综上所述,通过以上三种方式,可以在Linux系统中查看和清空DNS缓存,从而确保域名解析信息的准确性和及时性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值