一、查看当前系统的DNS服务器
在Linux系统中,可以通过以下命令查看当前系统所使用的DNS服务器:
cat /etc/resolv.conf
该命令会输出当前系统所使用的DNS服务器,通常会显示一些IP地址,如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
上面的输出表示当前系统使用的DNS服务器为Google的公共DNS服务器。
二、查看域名解析缓存
在Linux系统中,可以使用以下命令查看当前系统中的域名解析缓存情况:
sudo systemd-resolve --statistics
该命令输出的信息包括了查询统计信息、缓存清单等,如下:
Cache Hits: 29588
Cache Misses: 1262
DNSSEC Verifications: 0
DNSSEC Validation Failures: 0
Current Cache Size: 21
Cache TTL: 300
cache.example.com: 192.0.2.1
example.com: 192.0.2.2
yahoo.com: 206.190.36.45
上面的输出中,"Cache Hits"表示命中缓存的次数,"Cache Misses"表示没有命中缓存的次数,"DNSSEC Verifications"表示DNSSEC验证次数,"DNSSEC Validation Failures"表示验证失败的次数。
在缓存清单中,每行对应一个解析过的域名及其对应的IP地址。
三、使用dig命令查询DNS设置
在Linux系统中,可以使用dig命令查询DNS设置,使用方法如下:
dig example.com
该命令会输出example.com域名绑定的IP地址、域名的权威DNS服务器等信息,如下:
; <<>> DiG 9.11.3-1ubuntu1.15-Ubuntu <<>> example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51217
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;example.com. IN A
;; ANSWER SECTION:
example.com. 19143 IN A 93.184.216.34
;; Query time: 78 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Tue Jul 14 11:49:18 CST 2020
;; MSG SIZE rcvd: 56
上面的输出中,"ANSWER SECTION"部分是查询结果,表示example.com域名对应的IP地址为93.184.216.34;"SERVER"表示查询使用的DNS服务器地址。
四、总结
Linux系统提供了多种方式用于查看DNS设置,包括查看当前系统中所使用的DNS服务器、查询域名解析缓存以及使用dig命令查询域名信息等。通过运用这些工具,我们可以更方便地诊断网络连接问题并调优DNS设置,从而提高网络运行效率。