一、查看DNS主机名解析的主机IP
host 命令
用途
把一个主机名解析到一个网际地址或把一个网际地址解析到一个主机名。
语法
host [-n [ -a ] [ -c Class] [ -d ] [ -r ] [ -t Type ] [ -v ] [ -w ] [ -z ]] Hostname | Address [ Server ]
hostnew [ -a ] [ -c Class ] [ -d ] [ -r ] [ -t Type ] [ -v ] [ -w ] [ -z ] Hostname | Address [ Server]
描写叙述
/usr/bin/host 命令返回一个主机的网际地址(当Hostname 參数被指定时),或返回主机名(当Address參数被指定时)。host 命令可能还显示与 HostName 參数关联的不论什么别名。这取决于名称解析服务的配置。名称解析服务的演示样例包括 local、nis 和 bind。
如若本地主机使用 DOMAIN 协议,就要在搜索本地 /etc/hosts文件之前查询本地或远程名称server数据库。
host 命令也可返回在 DNS(域名系统)找到的其它名称记录。-z 标志指定这样的方式。
其它标志同意查询定制。
标志
-a 等价于使用“-v -t *”
-c Class 当搜索非网际数据时要指定要查找的类。有效类为:
IN
网际类
CHAOS
Chaos 类
HESIOD
MIT Althena Hesiod 类
ANY
通配符(以上随意一个)
*
通配符(以上随意一个)
-d 打开调试方式。
-n 等价于公布 /usr/bin/hostnew 命令。
hostnew 命令是 host命令的 5.2 版。
-r 禁用递归处理。
-t Type 指定要查询的记录类型。有效类型为:
A
主机的网际地址
CNAME
别名的规范名称
HINFO
主机 CPU 与操作系统类型
KEY
安全密钥记录
MINFO
邮箱或邮件列表信息
MX
邮件交换器
NS
指定范围的名称server
PTR
假设查询的是一个网际地址则为主机名;否则,为其它信息的指针
SIG
签名记录
SOA
域的"授权開始"信息
TXT
文本信息
UINFO
用户信息
WKS
所支持的众所周知的服务。
-v 具体方式。
-w 永远等待 DNS server的一个回答。
-z 使用显示资源记录信息的新输出。
參数
Address 说明用来解析主机名的主机的网际地址。Address參数必须是一个有效的网际地址,以加点的十进制格式表示。
HostName 说明要用来解析网际地址的主机名称。HostName參数能够是一个唯一的主机名,也能够是一个众所周知的主机名(诸如 nameserver、printserver、timeserver ,假设这些存在的话)。
Server 指定要查询的名称server。
演示样例
1. 要显示主机名为 mephisto 的主机地址,请输入:
host mephisto
就会显示与下列类似的信息:
mephisto 地址为 192.100.13.5。别名:engr, sarah
2. 要显示地址为 192.100.13.1 的主机名,请输入:
host 192.100.13.1
就会显示与下列类似的信息:
mercutio 地址为 192.100.13.1
3. 显示名为 test.ibm.com 的域的 MX 记录,请输入:
host -n -t mx test.ibm.com
或者
hostnew -t mx test.ibm.com
就会显示与下列类似的信息:
test.ibm.com mail is handled(pri=10)by test1.tt.ibm.com test.ibm.com mail is handled(pri=10)by
test2.aix.ibm.com
文件
/etc/hosts 包括网际协议(IP)名和在本地网络上的主机地址。
相关信息
hostname命令
named守护程序。
二、向DNSserver进行DNS域名解析
在 UNIX 和 Linux 下,建议大家使用 dig 命令来取代 nslookup。 dig 命令的功能比 nslookup 强大非常多。
以下是 dig 的一些比較经常使用的命令:
# dig 最主要的使用方法
dig @server qianlong.com
# 用 dig 查看 zone 传输数据
dig @server qianlong.com AXFR
# 用 dig 查看 zone 数据的增量传输
dig @server qianlong.com IXFR=N
# 用 dig 查看反向解析
dig -x 124.42.102.203 @server
# 查找一个域的授权 dns server
dig qianlong.com +nssearch
# 从根server開始追踪一个域名的解析过程
dig qianlong.com +trace
# 查看您使用的是哪个 F root dns server
dig +norec @F.ROOT-SERVERS.NET HOSTNAME.BIND CHAOS TXT
# 查看 bind 的版本
dig @bind_dns_server CHAOS TXT version.bind
********************************
您可以到 www.isc.org 去下载一个 bind for windows 的版本号安装,安装后就行在 windows 上使用 dig 命令了。^O^
ftp://ftp.isc.org/isc/bind/contrib/ntbind-9.3.0/BIND9.3.0.zip
*********************************
用途
DNS 查询有用程式。
语法
dig [@server] [-b address] [-c class] [-f filename] [-k filename] [ -n ][-p port#] [-t type] [-x addr] [-y name:key] [name] [type] [class] [queryopt...]
dig [-h]
dig [global-queryopt...] [query...]
描写叙述
dig(域信息搜索器)命令是个用于询问 DNS 域名server的灵活的工具。他运行 DNS 搜索,显示从受请求的域名server返回的答复。多数 DNS 管理员利用 dig 作为 DNS 问题的故障诊断,由于他灵活性好、易用、输出清楚。
尽管通常情况下 dig 使用命令行參数。但他也可以按批处理模式从文档读取搜索请求。不同于早期版本号,dig 的 BIND9 实现同意从命令行发出多个查询。除非被告知请求特定域名server,dig 将尝试 /etc/resolv.conf 中列举的不论什么server。当未指定不论什么命令行參数或选项时,dig 将对“.”(根)运行 NS 查询。
标志
-b address 配置所要询问地址的源 IP 地址。
这必须是主机网络接口上的某一合法的地址。
-c class 缺省查询类(IN for internet)由选项 -c 重设。class 可以是不论什么合法类。比方查询 Hesiod 记录的 HS 类或查询 CHAOSNET 记录的 CH 类。
-f filename 使 dig 在批处理模式下执行。通过从文档 filename 读取一系列搜索请求加以处理。文档包括很多查询。每行一个。
文档中的每一项都应该以和使用命令行接口对 dig 的查询同样的方法来组织。
-h 当使用选项 -h 时。显示一个简短的命令行參数和选项摘要。
-k filename 要签署由 dig 发送的 DNS 查询连同对他们使用事务签名(TSIG)的响应,用选项 -k 指定 TSIG 密钥文档。
-n 缺省情况下,使用 IP6.ARPA 域和 RFC2874 定义的二进制标号搜索 IPv6 地址。
为了使用更早的、使用 IP6.INT 域和 nibble 标签的 RFC1886 方法,指定选项 -n(nibble)。
-p port# 假如须要查询一个非标准的port号。则使用选项 -p。port# 是 dig 将发送其查询的port号,而不是标准的 DNS port号 53。该选项可用于測试已在非标准port号上配置成侦听查询的域名server。
-t type 配置查询类型为 type。可以是 BIND9 支持的随意有效查询类型。缺省查询类型是 A,除非提供 -x 选项来指示一个逆向查询。通过指定 AXFR 的 type 可以请求一个区域传输。当须要增量区域传输(IXFR)时,type 配置为 ixfr=N。增量区域传输将包括自从区域的 SOA 记录中的序列号改为 N 之后对区域所做的更改。
-x addr 逆向查询(将地址映射到名称)可以通过 -x 选项加以简化。addr 是个以小数点为界的 IPv4 地址或冒号为界的 IPv6 地址。当使用这个选项时,无需提供 name、class 和 type 參数。dig 自己主动执行类似 11.12.13.10.in-addr.arpa 的域名查询,并分别配置查询类型和类为 PTR 和 IN。
-y name:key 您可以通过命令行上的 -y 选项指定 TSIG 密钥;name 是 TSIG password的名称。key 是实际的password。
password是 64 位加密字符串,通常由 dnssec-keygen(8)生成。当在多用户系统上使用选项 -y 时应该慎重,由于password在 ps(1)的输出或 shell 的历史文档中可能是可见的。当同一时候使用 dig 和 TSCG 认证时,被查询的名称server须要知道password和解码规则。
在 BIND 中,通过提供正确的password和 named.conf 中的server声明实现。
參数
global-queryopt... 全局查询选项(请參阅多个查询)。
查询 查询选项(请參阅查询选项)。
查询选项
dig 提供查询选项号,他影响搜索方式和结果显示。一些在查询请求报头配置或复位标志位,一部分决定显示哪些回复信息,其它的确定超时和重试战略。每一个查询选项 被带前缀(+)的keyword标识。一些keyword配置或复位一个选项。
通常前缀是求反keyword含义的字符串 no。其它keyword分配各选项的值。比方超时时间间隔。
他们的格式形如 +keyword=value。
查询选项是:
+[no]tcp
查询域名server时使用 [不使用] TCP。缺省行为是使用 UDP,除非是 AXFR 或 IXFR 请求。才使用 TCP 连接。
+[no]vc
查询名称server时使用 [不使用] TCP。+[no]tcp 的备用语法提供了向下兼容。
vc 代表虚电路。
+[no]ignore
忽略 UDP 响应的中断,而不是用 TCP 重试。
缺省情况执行 TCP 重试。
+domain=somename
设定包括单个域 somename 的搜索列表,似乎被 /etc/resolv.conf 中的域伪指令指定。而且启用搜索列表处理。似乎给定了 +search 选项。
+[no]search
使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(假如有的话)定义的搜索列表。缺省情况不使用搜索列表。
+[no]defname
不建议看作 +[no]search 的同义词。
+[no]aaonly
该选项不做不论什么事。他用来提供对配置成未实现解析器标志的 dig 的旧版本号的兼容性。
+[no]adflag
在查询中配置 [不配置] AD(真实数据)位。如今 AD 位仅仅在响应中有标准含义,而查询中没有,可是出于完整性考虑在查询中这样的性能可以配置。
+[no]cdflag
在查询中配置 [不配置] CD(检查禁用)位。他请求server不执行响应信息的 DNSSEC 合法性。
+[no]recursive
转换查询中的 RD(须要递归)位配置。在缺省情况下配置该位。也就是说 dig 正常情形下发送递归查询。
当使用查询选项 +nssearch 或 +trace 时。递归自己主动禁用。
+[no]nssearch
这个选项被配置时。dig 试图寻找包括待搜名称的网段的权威域名server。并显示网段中每台域名server的 SOA 记录。
+[no]trace
转换为待查询名称从根名称server開始的代理路径跟踪。缺省情况不使用跟踪。
一旦启用跟踪,dig 使用迭代查询解析待查询名称。他将依照从根server的參照,显示来自每台使用解析查询的server的应答。
+[no]cmd
设定在输出中显示指出 dig 版本号及其所用的查询选项的初始凝视。
缺省情况下显示凝视。
+[no]short
提供简要答复。缺省值是以冗长格式显示答复信息。
+[no]identify
当启用 +short 选项时,显示 [或不显示] 提供给答的 IP 地址和port号。
假如请求简短格式应答,缺省情况不显示提供给答的server的源地址和port号。
+[no]comments
转换输出中的凝视行显示。
缺省值是显示凝视。
+[no]stats
该查询选项设定显示统计信息:查询进行时。应答的大小等等。缺省显示查询统计信息。
+[no]qr
显示 [不显示] 发送的查询请求。
缺省不显示。
+[no]question
当返回应答时。显示 [不显示] 查询请求的问题部分。
缺省作为凝视显示问题部分。
+[no]answer
显示 [不显示] 应答的回答部分。缺省显示。
+[no]authority
显示 [不显示] 应答的权限部分。缺省显示。
+[no]additional
显示 [不显示] 应答的附加部分。缺省显示。
+[no]all
配置或清除不论什么显示标志。
+time=T
为查询配置超时时间为 T 秒。缺省是5秒。假如将 T 配置为小于1的数,则以1秒作为查询超时时间。
+tries=A
配置向server发送 UDP 查询请求的重试次数为 A,取代缺省的 3 次。假如把 A 小于或等于 0,则採用 1 为重试次数。
+ndots=D
出于全然考虑。配置必须出如今名称 D 的点数。
缺省值是使用在 /etc/resolv.conf 中的 ndots 语句定义的,或是 1,假如没有 ndots 语句的话。带更少点数的名称被解释为相对名称,并通过搜索列表中的域或文档 /etc/resolv.conf 中的域伪指令进行搜索。
+bufsize=B
配置使用 EDNS0 的 UDP 消息缓冲区大小为 B 字节。
缓冲区的最大值和最小值分别为 65535 和 0。超出这个范围的值自己主动舍入到近期的有效值。
+[no]multiline
以周详的多行格式显示类似 SOA 的记录,并附带可读凝视。缺省值是每单个行上显示一条记录。以便于电脑解析 dig 的输出。
多条查询
dig 的 BIND9 支持在命令行上指定多个查询(支持 -f 批处理文档选项的附加功能)。
每条查询可以使用自己的标志位、选项和查询选项。
在这样的情况下,在上面描写叙述的命令行语法中。每条查询自变量代表一个个别查询。
每一条由随意标准选项和标志、待查询名称、可选查询类型和类连同不论什么适用于该查询的查询选项。
也可以使用对不论什么查询均有效的查询选项全局集合。全局查询选项必须位于命令行上第一个名称、类、类型、选项、标志和查询选项的元组之前。不论什么全局查询选项(除了 +[no]cmd 选项)可以被以下的查询特别选项重设。
比如:
dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr显示 dig 怎样从命令行出发进行三个查询:一个针对 www.isc.org的随意查询、一个 127.0.0.1 的逆向查询,连同一个 isc.org 的 NS 记录查询。
应用了 +qr 的全局查询选项,以便 dig 显示进行每条查询的初始查询。
最后那个查询有一个本地查询选项 +noqr,表示 dig 在搜索 isc.org 的 NS 记录时不显示初始查询。
演示样例
一个典型的 dig 调用类似:
dig @server name type当中:
server
待查询名称server的名称或 IP 地址。
可以是用点分隔的 IPv4 地址或用冒号分隔的 IPv6 地址。当由主机提供server參数时,dig 在查询域名server前先解析那个名称。假如没有server參数可以提供,dig 參考 /etc/resolv.conf。然后查询列举在那里的域名server。显示来自域名server的应答。
name
将要查询的资源记录的名称。
type
显示所需的查询类型 - ANY、A、MX、SIG,连同不论什么有效查询类型等。假如不提供不论什么类型參数。dig 将对纪录 A 运行查询。
演示样例:[root@desktop40 Desktop]# dig instructor.example.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> instructor.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64356
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;instructor.example.com. IN A
;; ANSWER SECTION:
instructor.example.com. 86400 IN A 192.168.0.254
;; AUTHORITY SECTION:
example.com. 86400 IN NS instructor.example.com.
;; Query time: 0 msec
;; SERVER: 192.168.0.254#53(192.168.0.254)
;; WHEN: Wed May 14 12:49:01 2014
;; MSG SIZE rcvd: 70
[root@desktop40 Desktop]#