Dig 命令是如何使用的
常用的DNS记录
CNAME
可能需要先大概介绍一下什么是CNAME:一个域名可以有两种类型的指向,如果一个 域名指向 称为一个 记录 (Record)的话,那么就有两种 记录类型 (Record Type),分别是:
A记录 :指向一个IP地址
CNAME :指向一个其他的域名
DNS records
CNAME设置
这里有两条A记录,一条CNAME。两条A记录指向的就是我的博客所在的VPS:第二条容易理解,就是将 www.zhouliang.pro 指向了VPS的IP地址,这样你使用 http://www.zhouliang.pro 就可以访问我的博客了;第一条有点奇怪,这里是一个泛域名,也就是将 zhouliang.pro 也指向了这个IP地址,也就是说你用 http://zhouliang.pro 也可以直接访问我的博客。
彩蛋:买域名的时候特别注意服务商是不是提供免费的泛域名解析服务,不提供的都是耍流氓,据我所知,万网就是在耍流氓。
第三条记录就是一个CNAME指向,也许你已经在浏览器中打开了 http://i.zhouliang.pro ,我将 i.zhouliang.pro 转向了网易轻博客服务,放了几张照片,你们感受一下,小清新有木有。
dig 命令
学习Linux命令只有一条路,那就是: man dig ,到控制台敲一下这个命令,输出略长。本文的目的是先大致介绍一下,深入了解还是得细读 man dig 。
在控制台输入,输出结果如下:
$ dig i.zhouliang.pro
; <<>> DiG 9.8.3-P1 <<>> i.zhouliang.pro
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45515
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;i.zhouliang.pro. IN A
;; ANSWER SECTION:
i.zhouliang.pro. 14400 IN CNAME mydomain.lofter.com.
mydomain.lofter.com. 18000 IN A 54.248.125.234
;; Query time: 211 msec
;; SERVER: 192.168.106.1#53(192.168.106.1)
;; WHEN: Fri Jan 24 00:43:26 2014
;; MSG SIZE rcvd: 82
输出结果大致分成4个部分,实际上可能还包括更多的内容,总共会有以下6个部分:
Dig命令的输出分析
Header : 包括软件版本,全局变量以及除消息头以外的其他部分的信息,比如上例中,显示有1个QUERY,2个ANSWER
QUESTION SECTION : 请求参数信息,也就是你的输入
ANSWER SECTION : 从DNS查询到的信息,也就是输出,显示 i.zhouliang.pro 是CNAME,指向 mydomain.lofter.com ,而后者是一个A记录,指向一个IP地址
AUTHORITY SECTION : 包含DNS域名服务器的授权信息,上例中不包含这一部分,如果用这个命令就可以看到 dig @ns1.redhat.com redhat.com ,这里的 @ 符号用于指定查询所使用的DNS服务器
ADDITIONAL SECTION : 包含AUTHORITY SECTION中的域名服务器的IP地址,同样,上例中也不包含这一部分
Stats section : 最下方的一部分,显示了查询时间等额外信息
另外,上面所有的以 ; 开头的行实际上都是注释。
可以通过下面的参数来控制显示或者不显示上面的这些部分:
+nocomments – 不显示注释
+noauthority – 不显示AUTHORITY SECTION
+noadditional – 不显示ADDITIONAL SECTION
+nostats – 不显示Stats section
+noanswer – 不显示ANSWER SECTION
+noall - 不显示所有的信息,一般会这样用 dig zhouliang.pro +noall +answer
和上面参数对应还有 +comments , +answer 等,后文有示例,此处不赘述。另外,还有如下两个参数需要了解:
+short - 显示简短的信息
-t 指定查询的记录类型,可以是CNAME、A、MX、NS,分别表示CNAME、A记录、MX记录、DNS服务器,默认是A
-x 表示反向查找,也就是根据IP地址查找域名
dig命令示例
下面来举几个实用的例子。
1.查看域名
$ dig i.zhouliang.pro +noall +anwser
; <<>> DiG 9.8.3-P1 <<>> i.zhouliang.pro +noall +answer
;; global options: +cmd
i.zhouliang.pro. 10034 IN CNAME mydomain.lofter.com.
mydomain.lofter.com. 9183 IN A 54.248.125.234
特别注意这里输出了两行,第一行是CNAME,先将 i.zhouliang.pro 解析成 mydomain.lofter.com ,第二行是A记录,将 mydomain.lofter.com 解析成IP地址。这是一个完整的域名解析过程。
2.查找域名的MX记录:
$ dig zhouliang.pro -t MX +short
10 mxdomain.qq.com.
从输出可以看出,我用了QQ提供的域名邮箱服务。
3.查找域名对应的CNAME:
$ dig i.zhouliang.pro -t CNAME +short
mydomain.lofter.com.
从输出可以看出,我用了网易Loft提供的博客服务。另外,这个方法刚好解答了本文开头所提到的那个问题。
4.根据IP地址反向查找域名
$ dig -x 8.8.8.8 +short
; <<>> DiG 9.8.3-P1 <<>> -x 8.8.8.8 +noall +answer
;; global options: +cmd
8.8.8.8.in-addr.arpa. 79605 IN PTR google-public-dns-a.google.com.
从输出可以看出,Google的这个DNS服务器有个域名叫做google-public-dns-a.google.com
5.查询域名的解析DNS服务器地址
$ dig zhouliang.pro ns +short
ns15.bigwww.com.
ns13.bigwww.com.
how to use dig to query DNS
Understanding DNS with dig command
Dig dns txt record
Dig 命令是如何使用的相关推荐
- linux dig 命令使用方法
dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. $ dig baidu.com dig 命令默认的输出信息 ...
- 云服务器 ECS Linux 系统下使用 dig 命令查询域名解析
云服务器 ECS Linux 系统可以使用通常自带的 dig 命令来查询域名解析情况.本文对此进行简要说明. 查询域名 A 记录 命令格式: dig <域名> 比如,查询域名 www.al ...
- 【Linux】一步一步学Linux——dig命令(160)
00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 dig命令是常用的域名查询工具,可以用来测试域名系统工作是 ...
- linux之dig命令
1 dig命令的作用 一般我们可以用dig命令解析域名成ip,或者把ip解析成域名,或查看这个域名所经过的域名服务器,这点是 nslookup命令没有的功能. DNSpod:注册域名,首先得找到域名 ...
- linux上dig命令,Linux dig命令(示例代码)
dig(Domain Information Groper),和nslookup作用有些类似,都是DNS查询工具 1.dig命令格式 dig @dnsserver name querytype 如果你 ...
- Centos7安装dig命令
2019独角兽企业重金招聘Python工程师标准>>> Centos7安装dig命令 作者: jwj 时间: 2018-10-17 分类: 服务器 最近做一个项目,需要用到Gmail ...
- (转载)Dig命令的用法
Dig命令的用法 Dig是linux中的域名解析工具,功能比nslookup强很多,使用也很方便,不用象nslookup总是set不停. Dig是domain information groper的缩 ...
- Linux查看DNS地址以及端口,nslookup命令以及更强大的dig命令
先说结论:DNS端口一般默认为53,默认采用UDP协议: 下面说查看方式: 一.使用nslookup命令查看 nslookup baidu.com 返回结果为: 可以看到,我的服务器DNS地址是100 ...
- Dig HOWTO 中文手册--dig命令使用大全
from http://blog.itechol.com/space-33-do-blog-id-908.html DNS 2011-03-25 本人翻译的dig howto手册. 译者序: 可以这样 ...
- dig命令-dns查询
我相信使用nslookup的同学一定比使用dig的同学多,所以还是有必要花些时间给大家介绍一下dig的. dig,和nslookup作用有些类似,都是DNS查询工具. dig,其实是一个缩写,即Dom ...
最新文章
- 2021年春季学期-信号与系统-第十三次作业参考答案
- 万众期待的《Cisco/H3C路由器配置与管理完全手册》开锣了
- Node Buffer 利用 slice + indexOf 生成 split 方法
- 鸿蒙十系统更新机型,高歌猛进,鸿蒙系统升级机型再次确认,花粉:终等到!...
- Step by step通过online方式做product archiving
- 【HDOJ】1597 find the nth digit
- 适用于孩子,父母和祖父母的JBoss HornetQ –第1章
- arcgis加载dwg显示一个点_Arcgis添加控制点配准校正影像,更新校正之后,其他软件打开之后,影像位置没有校正解决办法...
- CNN与MLP之间的关系,优缺点
- HALCON学习之旅(一)
- 戴姆勒:停止内燃机研发 马斯克:欢迎进群!
- mysql丢失一条事务_SpringBoot之MySQL数据的丢失的元凶--事务(转)
- 【NOIP2016】【Luogu1909】买铅笔(模拟)
- python opencv导入pbtxt文件出现错误Failed to parse GraphDef file
- 免费rar密码破解工具排行榜
- Spring JdbcTemplate 多参数查询,以及like模糊查询处理方式
- 安卓怎么实现计算纪念日
- 创建一个简单的后台教务管理系统,包含动态增删改查学生,年级和课程信息及查看登录日志等功能,包含表单验证.
- jupyter notebook出现DLL load failed while importing _multiarray_umath: 找不到指定的模块
- bzoj 3837 pa2013 Filary