dig(Domain Information Groper),和nslookup作用有些类似,都是DNS查询工具

1、dig命令格式

dig @dnsserver name querytype

  • 如果你设置的dnsserver是一个域名,首先通过默认的上连DNS服务器去查询对应的IP地址,然后再以设置的dnsserver为上连DNS服务器。如果你没有设置@dnsserver,那么dig就会依次使用/etc/resolv.conf里的地址作为上连DNS服务器

  • querytype可以设置A/AAAA/PTR/MX/ANY等值,默认是查询A记录。

2、常用的选项

参数          说明

-c        可以设置协议类型(class),包括IN(默认)、CH和HS

-f        dig支持从一个文件里读取内容进行批量查询,这个非常体贴和方便。文件的内容要求一行为一个查询请求

-t        用来设置查询类型,默认情况下是A,也可以设置MX等类型

-q        -q选项可以显式设置你要查询的域名,这样可以避免和其他众多的参数、选项相混淆,提高了命令的可读

-x        是逆向查询选项。可以查询IP地址到域名的映射关系

3、查询案列

    #dig baidu.com -t mx        查询baidu的MX记录

    ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> baidu.com -t mx

    ;; global options: +cmd

    ;; Got answer:

    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3440

    ;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0

    ;; QUESTION SECTION:

    ;baidu.com.                     IN      MX

    ;; ANSWER SECTION:

    baidu.com.              5       IN      MX      20 mx1.baidu.com.

    baidu.com.              5       IN      MX      20 jpmx.baidu.com.

    baidu.com.              5       IN      MX      10 mx.n.shifen.com.

    baidu.com.              5       IN      MX      20 mx50.baidu.com.

  

3、dig特有的查询选项

  • +trace  dig会从根域查询一直跟踪直到查询到最终结果,并将整个过程信息输出出来。

  • +nocmd 可以节省输出dig版本信息。

  • +short的话 仅会输出最精简的CNAME信息和A记录,其他都不会输出。

  • +nocomment的话,可以节省输出dig的详情注释信息

  • +[no]stats   该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。

  • +[no]nssearch   这个选项被设置时,dig 试图寻找包含待搜名称的网段的权威域名服务器,并显示网段中每台域名服务器的 SOA 记录。

  • +[no]recursive   切换查询中的 RD(要求递归)位设置。在缺省情况下设置该位,也就是说 dig 正常情形下发送递归查询。当使用查询选项 +nssearch 或 +trace 时,递归自动禁用。

  • +[no]search   使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。

查询案列

#dig +short www.baidu.com       #仅会输出baidu精简的CNAME信息和A记录

    www.a.shifen.com.

    119.75.218.77

    119.75.217.56

# dig +nocmd +nocomment +nostat www.baidu.com

    ;www.baidu.com.                 IN      A

    www.baidu.com.          260     IN      CNAME   www.a.shifen.com.

    www.a.shifen.com.       244     IN      A       119.75.217.56

    www.a.shifen.com.       244     IN      A       119.75.218.77

#dig @223.5.5.5 www.baidu.com  +trace+nocmd       #从根域查询一直跟踪直到查询到最终结果

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6 <<>> @223.5.5.5 www.baidu.com trace +nocmd

; (1 server found)

;; global options: +cmd

.                       340255  IN      NS      j.root-servers.net.

.                       340255  IN      NS      l.root-servers.net.

.                       340255  IN      NS      e.root-servers.net.

.                       340255  IN      NS      b.root-servers.net.

.                       340255  IN      NS      c.root-servers.net.

.                       340255  IN      NS      h.root-servers.net.

.                       340255  IN      NS      d.root-servers.net.

.                       340255  IN      NS      a.root-servers.net.

.                       340255  IN      NS      f.root-servers.net.

.                       340255  IN      NS      i.root-servers.net.

.                       340255  IN      NS      k.root-servers.net.

.                       340255  IN      NS      g.root-servers.net.

.                       340255  IN      NS      m.root-servers.net.

;; Received 228 bytes from 223.5.5.5#53(223.5.5.5) in 125 ms

com.                    172800  IN      NS      a.gtld-servers.net.

com.                    172800  IN      NS      b.gtld-servers.net.

com.                    172800  IN      NS      c.gtld-servers.net.

com.                    172800  IN      NS      d.gtld-servers.net.

com.                    172800  IN      NS      e.gtld-servers.net.

com.                    172800  IN      NS      f.gtld-servers.net.

com.                    172800  IN      NS      g.gtld-servers.net.

com.                    172800  IN      NS      h.gtld-servers.net.

com.                    172800  IN      NS      i.gtld-servers.net.

com.                    172800  IN      NS      j.gtld-servers.net.

com.                    172800  IN      NS      k.gtld-servers.net.

com.                    172800  IN      NS      l.gtld-servers.net.

com.                    172800  IN      NS      m.gtld-servers.net.

;; Received 491 bytes from 199.7.83.42#53(199.7.83.42) in 144 ms

baidu.com.              172800  IN      NS      dns.baidu.com.

baidu.com.              172800  IN      NS      ns2.baidu.com.

baidu.com.              172800  IN      NS      ns3.baidu.com.

  

Linux dig命令的更多相关文章

  1. linux dig 命令使用

    linux dig 命令使用方法 2018.04.20 15:47 43101浏览   dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的 ...

  2. linux dig 命令

    dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. $ dig baidu.com dig 命令默认的输出信息 ...

  3. linux dig 命令使用方法

    ref:https://www.imooc.com/article/26971?block_id=tuijian_wz dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 D ...

  4. linux dig命令 转

    dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. $ dig baidu.com dig 命令默认的输出信息 ...

  5. 【转载】 linux dig 命令使用方法

    原文地址: https://www.imooc.com/article/26971?block_id=tuijian_wz 作者:ibeautiful来源:慕课网 ------------------ ...

  6. Linux下dig命令使用

    Dig简介:   Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具.由于一直缺失Dig man page文档,本文就权当一个dig使用向导吧.   Dig的 ...

  7. Linux下解析域名命令-dig 命令使用详解

    Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息.dig 命令主要用来从 DNS 域名服务器查询主机地址信息.dig的全称是 (dom ...

  8. linux命令总结之dig命令

    Dig简介: Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具.Dig的源码是ISC BIND大包的一部分,但是大多编译和安装Bind的文档都不把它包括在内 ...

  9. nslookup、dig命令Linux安装包

    linux下提供nslookup,dig命令的软件就是 bind-utils yum install bind-utils -y

随机推荐

  1. 【Web Shell】- 技术剖析中国菜刀 - Part II

    在第一部分,简单描述了中国菜刀的基本功能.本文我将剖析中国菜刀的平台多功能性.传输机制.交互模式和检测.我希望通过我的讲解,您能够根据您的环境检测出并清除它. 平台 那么中国菜刀可以在哪些平台上运行? ...

  2. 1使用 vue-cli 搭建项目(cp)

    http://www.cnblogs.com/wisewrong/p/6255817.html(copy:web) https://zhuanlan.zhihu.com/p/26183652(也很好) ...

  3. Java-JDBC.mysql 工具类 读取本地文件配置

    引用 mysql-connector-jav 的jar 配置文件为  database.propertties .  格式如下 driverClass=com.mysql.jdbc.Driver ur ...

  4. 【Java并发编程】之十二:线程间通信中notifyAll造成的早期通知问题

    如果线程在等待时接到通知,但线程等待的条件还不满足,此时,线程接到的就是早期通知,如果条件满足的时间很短,但很快又改变了,而变得不再满足,这时也将发生早期通知.这种现象听起来很奇怪,下面通过一个示例程 ...

  5. Timing wheel心跳机制

    在web服务中,断开空闲连接是一种减少资源浪费的一种手段,由此就有了心跳机制来判断一个连接是否空闲. 一种简单粗暴的方式: 1. 服务端每个连接保存一个最后一次操作的时间戳,每次这个连接对应fd可读时 ...

  6. Rotting Oranges - LeetCode

    目录 题目链接 注意点 解法 小结 题目链接 Rotting Oranges - LeetCode 注意点 解法 解法一:bfs.首先先统计所有新鲜的橘子数目fresh,如果fresh大于0则一直执行 ...

  7. harbor的日常管理

    有情提示:docker-compose需要在 docker-compose.yml 存放的目录下执行. 1.Stopping Harbor: #docker-compose stop Stopping ...

  8. 用Gradle命令行编译Android工程

    在Android sdk 目录下的samples/android-21/ 文件夹下,任找一个工程,如果在命令行直接编译 可能会报这种错误:gradle buile.gradle FAILURE: Bu ...

  9. C/C++:copy control (拷贝控制)

    前言:当定义一个类的时候,我们显示或者隐式地指定在此类型的对象拷贝,移动,赋值,销毁时做些什么,一个类通过定义五种特殊的成员函数来控制这些操作,包括拷贝构造函数,拷贝赋值运算符,移动构造函数,移动赋值 ...

  10. 【Asp.net入门5-03】创建产品清单