命令行工具
dig
是用于解析域名和故障排查的一个利器。
从主要功能上来说,dig
和 nslookup
之间差异不大,但 dig
更像一个加强版的 nslookup
,可以查询到一些由域名服务器管理的信息,这在排查某些问题的时候非常有用。总的来说,dig
是一个既简单易用又功能强大的命令行工具。(LCTT 译注:dig
和 nslookup
行为的主要区别来自于 dig
使用是是操作系统本身的解析库,而 nslookup
使用的是该程序自带的解析库,这有时候会带来一些行为差异。此外,从表现形式上看,dig
返回是结果是以 BIND 配置信息的格式返回的,也带有更多的技术细节。)
dig
最基本的功能就是查询域名信息,因此它的名称实际上是“ 域名信息查询工具 Domain Information Groper ”的缩写。dig
向用户返回的内容可以非常详尽,也可以非常简洁,展现内容的多少完全由用户在查询时使用的选项来决定。
我只需要查询 IP 地址
如果只需要查询某个域名指向的 IP 地址,可以使用 +short
选项:
$ dig facebook.com +short
31.13.66.35
在查询的时候发现有的域名会指向多个 IP 地址?这其实是网站提高其可用性的一种措施。
$ dig networkworld.com +short
151.101.2.165
151.101.66.165
151.101.130.165
151.101.194.165
也正是由于这些网站通过负载均衡实现高可用,在下一次查询的时候,或许会发现这几个 IP 地址的排序有所不同。(LCTT 译注:浏览器等应用默认会使用返回的第一个 IP 地址,因此这样实现了一种简单的负载均衡。)
$ dig networkworld.com +short
151.101.130.165
151.101.194.165
151.101.2.165
151.101.66.165
标准返回
dig
的标准返回内容则包括这个工具本身的一些信息,以及请求域名服务器时返回的响应内容:
$ dig networkworld.com
; DiG 9.11.5-P4-5.1ubuntu2.1-Ubuntu >HEADER