Linux dig命令
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命令的更多相关文章
- linux dig 命令使用
linux dig 命令使用方法 2018.04.20 15:47 43101浏览 dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的 ...
- linux dig 命令
dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. $ dig baidu.com dig 命令默认的输出信息 ...
- linux dig 命令使用方法
ref:https://www.imooc.com/article/26971?block_id=tuijian_wz dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 D ...
- linux dig命令 转
dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. $ dig baidu.com dig 命令默认的输出信息 ...
- 【转载】 linux dig 命令使用方法
原文地址: https://www.imooc.com/article/26971?block_id=tuijian_wz 作者:ibeautiful来源:慕课网 ------------------ ...
- Linux下dig命令使用
Dig简介: Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具.由于一直缺失Dig man page文档,本文就权当一个dig使用向导吧. Dig的 ...
- Linux下解析域名命令-dig 命令使用详解
Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息.dig 命令主要用来从 DNS 域名服务器查询主机地址信息.dig的全称是 (dom ...
- linux命令总结之dig命令
Dig简介: Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具.Dig的源码是ISC BIND大包的一部分,但是大多编译和安装Bind的文档都不把它包括在内 ...
- nslookup、dig命令Linux安装包
linux下提供nslookup,dig命令的软件就是 bind-utils yum install bind-utils -y
随机推荐
- [转帖]UsingDiskspdforSQLServer --- 改天做下练习 官方文档.
Using DiskSpd in SQL Server environments Writer: Robert Beene Contributors: Jose Barreto, Ramu Konid ...
- docker中间件安装记录
rabbitmq docker pull rabbitmq docker run --restart=on-failure: --name rabbitmq -d -p : -p : docker.i ...
- Java并发编程中的设计模式解析(二)一个单例的七种写法
Java单例模式是最常见的设计模式之一,广泛应用于各种框架.中间件和应用开发中.单例模式实现起来比较简单,基本是每个Java工程师都能信手拈来的,本文将结合多线程.类的加载等知识,系统地介绍一下单例模 ...
- JAVA Junit4
JAVA Junit4 测试框架 序言 刚学Java的时候就听说过JUnit了,单元测试框架,很好用的测试框架,JUnit测试 ...
- rabbitmq 集群安装
1.安装模式分为三种:单主机模式.普通集群模式.镜像集群模式. 单主机模式:rabbitmq运行在一台主机上,生产环境不建议使用该模式,性能有限.如果该台主机down机,整个服务将不可用. 普通集群模 ...
- 《Linux内核设计与实现》学习总结 Chap18
一.准备开始 1.一个确定的bug,但大部分bug通常都不是行为可靠且定义明确的. 2.一个藏匿bug的内核版本. 3.相关内核代码的知识和运气. 二.内核中的bug 1.bug的表象: 明白无误的错 ...
- java多线程 -- 原子量 变量 CAS
多线程原子性问题的产生和解决 原子变量:在 java.util.concurrent.atomic 包下提供了一些原子变量. 1. volatile 保证内存可见性,可以查看atomic中变量是使用v ...
- golang package log
package main import ( "log" "os" ) var logger *log.Logger func main() { file, er ...
- js正则取出一个字符串小括号中的内容
var aa="ldfjsldfj(dsfasjfj3124123)"; var result = aa.match(/\(([^)]*)\)/); // 此时result=[&q ...
- HAOI2018游记
前言 很懒. 太懒了. 不仅懒得写题..连游记都懒得写.. 花点时间填一下坑吧..不过话说我去年的NOI/APIO/CTSC游记也没写.. 省选前 板子好像一早就打完了,没什么可干的. 也不愿意开新题 ...