dig指令
简介
dig 指令是一个方便的,用于查询目标网址的DNS解析信息的工具。当使用它查询目标网站的域名时,它会将DNS服务器的解析信息返回到命令行窗口上。由于它简单有效的可用性,大多数域名管理员都使用它解决DNS问题,相比而言其它工具就显得弱鸡了。
一般情况下我们都是在命令行上使用指令来查询域名信息,除了这个方式外,dig支持读取文件内容来实现批量的DNS域名查询。dig -h 指令会简单的列举出常用的命令和参数。
在使用dig指令时,除非指定了要查询的目标DNS服务器,否则dig会尝试将/etc/resolv.conf中记录的所有DNS服务器都查询一次,如果没有可用的DNS服务器,则会将查询信息发送的localhost。
如果执行dīg时没有添加任何指令和参数,则dig会为‘.’执行NS查询
可以为每一个用户创建一个${HOME}/.digrc 文件,用于配制dig指令在执行前应该读取执行的参数等。
语法介绍
dig [@server] [-b address] [-c class] [-f filename] [-k filename] [-m] [-p port#] [-q name] [-t type] [-v] [-x addr] [-y [hmac:]name:key] [-4] [-6] [name] [type] [class] [queryopt...] dig [-h] dig [global-queryopt...] [query...]
参数说明
server:
该参数可以是一个IP地址,也可以是一个域名。表示使用dig指令查询域名解析结果时,要查询的目标域名服务器。支持IPv4和IPv6格式的IP地址,如果是一个主机名,则dig在使用前会将它解析为IP地址。
name:
即要查询的目标网址,要做DNS解析的目标网址
type:
要执行的查询类型。可以是:ANY,A,MX,SIG,等等。如果没有指定,则默认为A类型。
一般的使用形式:
dig @server name type
DIG的使用类型
这里的使用类型,指type参数的值
A记录:常用于网络上的WEB服务器的IP地址指向。
我理解的A记录是,当本机的DNS记录被污染时,可以通过使用A记录,让域名与IP重新建立解析关系。也常在内网中使用,比如内网中的某个域名服务,在公网肯定查不到,这时就需要A记录来实现域名解析内公司内网的IP地址,这样下一次访问就知道怎么走路由了。
在网络上一个网站可能有多个IP,但是如果域名服务商或者你的大型内网的主干路由器非要把你解析到一个有广告的网址,然后继续访问你要访问的目标网站。
以下就是一个A记录
➜ config dig @8.8.8.8 baidu.com ; <<>> DiG 9.10.6 <<>> @8.8.8.8 baidu.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4738 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;baidu.com. IN A ;; ANSWER SECTION: baidu.com. 146 IN A 220.181.38.251 baidu.com. 146 IN A 220.181.38.148 ;; Query time: 77 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Wed Feb 16 00:21:05 CST 2022 ;; MSG SIZE rcvd: 70

浙公网安备 33010602011771号