在《DNS自述:我是如何为域名找到家的》这篇文章里,我们了解了域名的 DNS 解析过程。但整个过程都是我在说,你们在听,总感觉干巴巴的,没有实操来得记忆深刻。那有没有一些命令可以让我们看到 DNS 的解析过程呢?
那肯定是有的,今天就带大家认识一些关于 DNS 解析的命令。简单地说,最常用的 DNS 解析命令有:
dig 命令host 命令nslookup 命令whois 命令dig命令查询DNS寻址过程如果我们要查找某个网址的寻址过程,那么我们可以使用下面语法:dig 域名,例如:
dig math.stackexchange.com运行的结果是:
; DiG 9.9.7-P3 math.stackexchange.com;; global options: +cmd;; Got answer:;; ->>HEADERHEADERHEADERHEADERHEADERHEADERHEADER> Last update of WHOIS database: 2019-12-29T05:39:51Z > 省略其他……通过 whois 命令,我们可以知道该域名通过哪个服务商注册以及注册地点等信息。
总结最后,我们总结一下本篇文章的内容。我们想查询域名对应的 IP,可以通过 dig、host、nslokup 命令。一般来说,dig 命令就已经足够使用,可以完全覆盖日常使用需求。而需要查询域名注册信息,则可以使用 whois 命令。
下面对本篇文章的所有命令做个汇总,方便查阅。
dig命令:
dig math.stackexchange.com 查询DNS寻址过程dig +short math.stackexchange.com 直接显示DNS寻址结果dig @8.8.8.8 math.stackexchange.com 向特定DNS服务器寻址dig ns com 查询com顶级域名的ns记录dig a com 查询com顶级域名的a记录dig -x 192.30.252.153 用于查询PTR记录(用IP查域名)host命令:
host github.com 返回域名的各种记录host 192.30.252.153 逆向查询IP地址对应的域名nslookup命令:
nslookup github.com 查询域名记录whois命令:
whois shuyi.me 查询域名的注册情况参考资料DNS 原理入门 - 阮一峰