java 如何执行dig 命令_dig命令简介

Dig简介:

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

Dig的源码是ISC BIND大包的一部分,但是大多编译和安装Bind的文档都不把它包括在内,但是在linux系统下,它通常是某个包的一部分,在Gentoo下是bind-tools,在Redhat/Fedora下是 bind-utils,或者在Debian下是 dnsutils。

如果你要查找Bind的配置相关的信息,你参考我的文章:Bind for the mall LAN(http://www.madboa.com/geek/soho-bind/)。

看懂默认输出:

最简单最常见的查询是查询一台主机,但是默认情况下,Dig的输出信息很详细。你可能不需要所有的输出,但是它确实值得知道。下面是一个带有注释的查询:

$ dig www.isc.org

上面是我调用dig 的命令行。

; <<>> DiG 9.2.3 <<>> www.isc.org

;; global options: printcmd

Dig的部分输出告诉我们一些有关于它的版本信息(version 9.2.3)和全局的设置选项,如果+nocmd在命令行下是第一个参数的话,那么这部分输出可以通过加+nocmd的方式查询出来。

;; Got answer:

;; ->>HEADER

在这里,Dig告诉我们一些从DNS返回的技术信息,这段信息可以用选项 +[no]comments来控制显示,但是小心,禁止掉comments也可能关闭一些其它的选项。

;; QUESTION SECTION:

;www.isc.org. IN A

在这个查询段中,Dig显示出我们查询的输出,默认的查询是查询A记录,你可以显示或者禁止掉这些用+[no]question选项

;; ANSWER SECTION:

www.isc.org. 600 IN A 204.152.184.88

最后,我们得到我们查询的结果。www.isc.org 的地址是204.152.184.8,我不知道为什么你们更喜欢过滤掉这些输出,但是你可以用+[no]answer保留这些选项。

;; AUTHORITY SECTION:

isc.org. 2351 IN NS ns-int.isc.org.

isc.org. 2351 IN NS ns1.gnac.com.

isc.org. 2351 IN NS ns-ext.isc.org.

这段权威说明告诉我们哪个DNS服务器给我们提供权威的答案。在这个例子中,isc.org有3个Name Server,你可以用+[no]authority选项保留这段输出。

;; ADDITIONAL SECTION:

ns1.gnac.com. 171551 IN A 209.182.216.75

ns-int.isc.org. 2351 IN A 204.152.184.65

ns-int.isc.org. 2351 IN AAAA 2001:4f8:0:2::15

这些额外选项很有代表性地包含了列出的权威DNS的IP地址,这段输出可以用+[no]additional选项保留。

;; Query time: 2046 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Fri Aug 27 08:22:26 2004

;; MSG SIZE rcvd: 173

最后一段默认输出包含了查询的统计数据,可以用+[no]stats保留。

我们可以查询什么?

Dig可以让你有效地查询DNS,最常用的查询是A记录,TXT(文本注释),MX记录,NS记录,或者任意综合查询。

查找yahoo.com的A记录:

dig yahoo.com A +noall +answer

查找yahoo.com MX记录的列表:

dig yahoo.com MX +noall +answer

查找yahoo.com的权威DNS:

dig yahoo.com NS +noall +answer

查询上面所有的记录:

dig yahoo.com ANY +noall +answer

在现在这种IPv4和IPV6混用的情况下,你也可以使用AAAA的选项查询主机的IPv6 AAAA记录:

dig www.isc.org AAAA +short

如果你要查询的域允许转发,你也可以查询到相关的信息,比如DNS记录在internet上的生存周期,但是,现在只有很少的DNS允许无限制转发。

我们怎样查询?

获得精简答案?

当我们需要一个快速回答时,+short选项是你最好的朋友:

dig www.isc.org +short

204.152.184.88

获得一个不是十分精简的答案?

精简答案和只有一个答案是不一样的,获得没有附加信息的详细答案的方法是使用+noall选项,这样就只保留你想要的输出。

下面是只有一个答案的精简查询,最后包含所有的配置信息,包括TTL数据,格式化的BIND配置信息。

$ dig fsf.org mx +short

20 mx20.gnu.org.

30 mx30.gnu.org.

10 mx10.gnu.org.

$ dig +nocmd fsf.org mx +noall +answer

fsf.org. 3583 IN MX 30 mx30.gnu.org.

fsf.org. 3583 IN MX 10 mx10.gnu.org.

fsf.org. 3583 IN MX 20 mx20.gnu.org.

获得一个详细答案?

通过它的man page,你可以通过+multiline选项获得冗长的多行模式人性化注释的DSN的SOA记录,一般来说,用+multiline选项获得的信息可以显示很多,就像BIND配置文件一样。

$ dig +nocmd ogi.edu any +multiline +noall +answer

ogi.edu. 14267 IN A 129.95.59.31

ogi.edu. 14267 IN MX 5 cse.ogi.edu.

ogi.edu. 14267 IN MX 15 hermes.admin.ogi.edu.

ogi.edu. 14267 IN SOA zeal.admin.ogi.edu. hostmaster.admin.ogi.edu. (

200408230 ; serial

14400 ; refresh (4 hours)

&nb

阅读(397) | 评论(0) | 转发(0) |

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值