Linux DNS之dig利器


概述

在之前介绍过Linux DNS之nslookup工具,今天我学习了一个比nslookup更强大的工具,并且现在非常流行——Dig,它是一个专业DNS工具。

用法

直接在命令行输入dig,可以看到很多DNS详细的信息.相对于nslookup查询来说,可以通过下面命令格式: **dig @dnsserver name -t querytype

[lhf@lv-centos ~]$ dig baidu.com

; <<>> DiG 9.9.4-RedHat-9.9.4-38.el7_3.1 <<>> baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31419
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 5, ADDITIONAL: 5

;; QUESTION SECTION:
;baidu.com.			IN	A

;; ANSWER SECTION:
baidu.com.		600	IN	A	220.181.57.217
baidu.com.		600	IN	A	180.149.132.47
baidu.com.		600	IN	A	123.125.114.144
baidu.com.		600	IN	A	111.13.101.208

;; AUTHORITY SECTION:
baidu.com.		46078	IN	NS	ns2.baidu.com.
baidu.com.		46078	IN	NS	ns3.baidu.com.
baidu.com.		46078	IN	NS	ns4.baidu.com.
baidu.com.		46078	IN	NS	ns7.baidu.com.
baidu.com.		46078	IN	NS	dns.baidu.com.

;; Query time: 3 msec
;; SERVER: 219.238.164.7#53(219.238.164.7)
;; WHEN: 三 2月 15 20:37:01 CST 2017
;; MSG SIZE  rcvd: 261

可以看出输出的内容还是DNS信息即(域名、生存时间、类别、类型和值)。如果想查询NS类型,则:

[lhf@lv-centos ~]$ dig @8.8.8.8 brianlv.com -t NS

; <<>> DiG 9.9.4-RedHat-9.9.4-38.el7_3.1 <<>> @8.8.8.8 brianlv.com ns
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46978
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;brianlv.com.			IN	NS

;; ANSWER SECTION:
brianlv.com.		86399	IN	NS	dns10.hichina.com.
brianlv.com.		86399	IN	NS	dns9.hichina.com.

;; Query time: 699 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: 三 2月 15 20:41:47 CST 2017
;; MSG SIZE  rcvd: 87

dig技巧

域名文件解析(多域名)

如何高效的查询域名,比如查询:baidu.com和yahoo.com的A类型的值?我们可以这样处理,把需要查询的域名放到文件中。通过-f参数来实现域名文件的查询。

[lhf@lv-centos ~]$ cat list 
baidu.com
yahoo.com
[lhf@lv-centos ~]$ dig -f list -t A

; <<>> DiG 9.9.4-RedHat-9.9.4-38.el7_3.1 <<>> baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22360
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 5, ADDITIONAL: 5

;; QUESTION SECTION:
;baidu.com.			IN	A

;; ANSWER SECTION:
baidu.com.		600	IN	A	220.181.57.217
baidu.com.		600	IN	A	123.125.114.144
baidu.com.		600	IN	A	180.149.132.47
baidu.com.		600	IN	A	111.13.101.208
;; Query time: 3 msec
;; SERVER: 219.238.164.7#53(219.238.164.7)
;; WHEN: 三 2月 15 20:48:33 CST 2017
;; MSG SIZE  rcvd: 261

; <<>> DiG 9.9.4-RedHat-9.9.4-38.el7_3.1 <<>> yahoo.com
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52250
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 8

;; QUESTION SECTION:
;yahoo.com.			IN	A

;; ANSWER SECTION:
yahoo.com.		600	IN	A	206.190.36.45
yahoo.com.		600	IN	A	98.138.253.109
yahoo.com.		600	IN	A	98.139.183.24
;; Query time: 3 msec
;; SERVER: 219.238.164.7#53(219.238.164.7)
;; WHEN: 三 2月 15 20:48:33 CST 2017
;; MSG SIZE  rcvd: 329

反向解析

我们如果知道域名的A记录,如何反向查找域名的映射关系呢?我们通过-x参数实现反向解析。

[lhf@lv-centos ~]$ dig -x 180.149.132.47

; <<>> DiG 9.9.4-RedHat-9.9.4-38.el7_3.1 <<>> -x 180.149.132.47
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 48479
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;47.132.149.180.in-addr.arpa.	IN	PTR

;; AUTHORITY SECTION:
132.149.180.in-addr.arpa. 2646	IN	SOA	idc-ns1.bjtelecom.net. wang_ye.bjxywh.com. 1348929128 10800 3600 604800 38400

;; Query time: 3 msec
;; SERVER: 219.238.164.7#53(219.238.164.7)
;; WHEN: 三 2月 15 20:56:08 CST 2017
;; MSG SIZE  rcvd: 131

追踪过程

dig通过+trace来实现追踪DNS过程。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Android源码框架分析

Android后台杀死系列之二:ActivityManagerService与App现场恢复机制

本篇是Android后台杀死系列的第二篇,主要讲解ActivityMangerService是如何恢复被后台杀死的进程的(基于4.3 ),在开篇 Fragmen...

6114
来自专栏Netkiller

Email 服务器之 SPF 记录

节选自《Netkiller Mail 手札》 6.1. Sender Policy Framework 6.1.1. 分析 SPF 记录 从主域开始查看 txt...

4106
来自专栏一个会写诗的程序员的博客

【Mac IDEA Java Web项目Tomcat启动报错】java.net.MalformedURLException: Local host name unknown

java.net.MalformedURLException: Local host name unknown

1213
来自专栏Kotlin入门系列

win7基础 cmd 查看当前已经启动的服务列表

5806
来自专栏GIS讲堂

Highcharts导出图片

Highcharts是在做项目涉及到统计图的时候大家的首选,同时也会用到highcharts的export功能,将统计图导出为图片,刚好,最近也遇到了这样的事情...

5372
来自专栏Hadoop实操

CDH安装前置准备

每次安装CDH集群时都需要做很多前置条件准备,以确保安装成功以及运行主机检查时能顺利通过。本篇文章主要讲述安装Cloudera Manager和CDH前的准备工...

1K10
来自专栏我的博客

filter_input()详解,$_GET,$_POST,$_ENV,$_SERVER,$_SESSION,$_REQUEST

filter_input() 函数从脚本外部获取输入,并进行过滤。 本函数用于对来自非安全来源的变量进行验证,比如用户的输入。 本函数可从各种来源获取输入: I...

3435
来自专栏信安之路

必知必会的安全工具

渗透测试中手工测试固然重要,但是测试工具也是必不可少的,一个好的工具可以让我们在渗透测试中事半功倍,俗话说,工欲善其事必先利其器,所以工具是很重要的,本文就主要...

1130
来自专栏IT笔记

SpringBoot开发案例之微信小程序录音上传

书接上回的《SpringBoot开发案例之微信小程序文件上传》,正常的业务流程是,口语测评需要学生通过前端微信小程序录入一段音频,通过调用第三方音频处理服务商进...

9108
来自专栏bboysoul

如何在metasploit中使用shodan

首先打开metasploit sudo service postgresql start msfconsole

1243

扫码关注云+社区

领取腾讯云代金券