一、查看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]#