Provided by:
manpages-zh_1.5-1_all 
NAME()
dig - 發送域名查詢信息包到域名伺服器
SYNOPSIS()
dig [@server] domain [<query-type>] [<query-class>] [+<query-option>]
[-<dig-option>] [%comment]
DESCRIPTION(z)
Dig (domain information groper 域名信息搜索)是一蚙F活的 命令行工具,
它可以用來從域名系統伺服器中收集信息. Dig 有兩種模式:簡單交互模式
用於簡單的查詢,而批處理模式則可以對 包含多茯d詢條目的列表執行查詢.
所有查詢選項都可以從命令行輸入.
通常簡單的 dig 用法為下列格式:
dig @server domain query-type query-class
這裏:
server 可為域名或者以點分隔的Internet地址. 如果省略該可選字段, dig
會嘗試使用你機器的預設域名伺服器.
`N: 如果指定了一荌鴞W,那麼將使用域名系統解析程式
(即BIND)來進行解析. 如果你的系統不支持DNS,那麼可能 跛
指定一茈H點分隔的地址.另外一種選擇是, 如果在你配置的某-
茼a方有一台這樣的伺服器, 那麼你所n做的就是建立
/etc/resolv.conf 並在其中指明預設域名伺服器的位置,這樣 server
自迄N可以解析了.參看 resolver(5) 以獲得 /etc/resolv.conf
相關的信息. i: 蚹 /etc/resolv.conf
同樣會對標準的解析程式庫產生影響,而 (潛在地) 某些程式會-
n用到它. 作為一種選擇,使用者可設置環境變量 LOCALRES
為指定的檔案,這將用來取代 /etc/resolv.conf (LOCALRES
是特定針對 dig 解析程式的,並不會牽涉到標準解析程式). 如果
LOCALRES 變量未設置或者指定的檔案不能讀,那麼就使用
/etc/resolf.conf.
domain 是指一荍A請求信息的域名. 參看 -x 選項(在該部分的 OTHER
OPTIONS 節中有介紹)以獲知指定反向地址查詢的便捷方法.
query-type 是指你所請求的信息類型(DNS查詢類型). 如果省略,預設為 ``a''
(T_A = address). 以下類型是可識別的:
a T_A 網路地址
any T_ANY 所有/任何與指定域相關的信息
mx T_MX 該域的郵件網關
ns T_NS 域名伺服器
soa T_SOA 區域的授權記錄
hinfo T_HINFO 主機信息
axfr T_AXFR 區域傳輸記錄(必須是詢問一台授權的伺服器)
txt T_TXT 任意的字符串信息
(參看RFC 1035以獲得完整的列表.)
query-class
是指在查詢中請求的網路等級.如果省略,預設為 ``in'' (C_IN =
Internet). 以下的等級是可識別的:
in C_IN Internet等級的域
any C_ANY 所有/任何等級的信息
(參看RFC 1035以獲得完整的列表.)
`N: ``Any'' 可以用來指定一 和/或查詢的一種 . Dig
會將第一次出現的 ``any'' 解釋為 query-type = T_ANY. 為了指明
query-class = C_ANY, 你必須或者指定 ``any'' 兩次,或者使用 -c
選項(見下)設置 query-class.
OTHER OPTIONS()
%ignored-comment
``%'' 用來引用一茪ㄔ峓@解釋的參數. 如果正以批處理的模式運行
dig 這可能很有用. 因為不用對一組查詢中的每
@server-domain-name 進行解析,你就可以避免這樣做的額外開銷,
並且仍然能夠在命令行上以域名作為參數. 例如:
dig @128.9.0.32 %venera.isi.edu mx isi.edu
-<dig option>
``-'' 用來指定一蚍v響 dig 操作的選項.
當前可用的選項有(儘管不能保証都有用):
-x dot-notation-address
這是指定反向地址映射的便捷的方法. 不用寫 ``dig
32.0.9.128.in-addr.arpa'', 你可以簡單地寫成 ``dig
-x 128.9.0.32''.
-f file dig 批處理模式的檔案.該檔案包含了一組查詢清單 (
dig 命令行),它戔N一荓竣@茼a執行.以 '; ,' '#' 或
'\n' 開頭的行將忽略.其它選項
仍然可以在命令行上出現,而且對 每-
荍撜B理查詢都有效.
-T time 當運行於批處理模式下時,兩次接著的查詢之間的
時間間隔,以秒p. 可以用來保持兩茤峖h荍撜B理 dig
命令大P同步運行.預設為零.
-p port 端口號.通過監聽非標準端口號來查詢
域名伺服器.預設為53.
-P[ping-string]
在查詢返回之後,執行一次 ping(8)
命令以獲得響應時間的對照關系.這在調用shell上
顯得不那麼自然. 該命令顯示的最後三行統p信息為:
ping -s -server_name -56 -3
如果可選的 ``ping_string'' 存在,那麼
會覆蓋shell命令中的 ``ping -s''.
-t query-type
指定查詢類型.可以指定為一荓N包含在類型字段
中的整數,也可以使用 上掠Q論的縮寫助記符(即 mx =
T_MX).
-c query-class
指定查詢等級.可以指定為一荓N包含在等級字段
中的整數,也可以使用 上掠Q論的縮寫助記符(即in =
C_IN).
-k keydir:keyname
用TSIG密鑰指定的的密鑰名來簽署這次查詢,
該密鑰名在目錄keydir下.
-envsav 該標識指定 dig 的環境變量
(預設的,顯示選項,等等.),在所有參數都解釋了之後,
應保存它怢 一蚗仵蚺丰H使之成為預設的環境變量.
如果你不喜歡預設的標準設置而又不想在每次使用 dig
時帶大量的選項,那麼這很有用.
環境變量包括解析程式狀態變量標識,超時和姜捰蜈
以及詳細控制 dig 輸出的標識(見下).
如果shell環境變量 LOCALDEF 設置為一-
蚗仵蛌漲W字,那麼此即為預設的 dig
環境變量所保存的地方.如果沒有,那麼會在當前
工作目錄下創建 ``DiG.env''.
`N: LOCALDEF 是特定針對 dig 解析程式,
而它不會影響標準解析程式庫的操作.
每當 dig 執行時,它會查找 ``./DiG.env''
或者在shell環境變量 LOCALDEF 中指定的檔案.
如果這樣的檔案存在而且可讀,那麼在解釋
任何參數之前, 先從 該檔案中 恢復環境變量.
-envset 該標識只影響批處理查詢的運行.當在 dig
的批處理檔案一行上指定了 ``-envset''
時,在參數之後的 dig
環境變量會被解釋為批處理檔案執行期間
預設的環境變量, 或者 直到指定了 ``-envset''
的下一行為止.
-[no] cm stick
該標識只影響批處理查詢的運行. 它指定 dig
環境變量(通過 ``-envset''
開關變量初始化讀入或設置)會在 dig
批處理檔案每次查詢(行)之前垂. 預設的
``-nostick'' 表示 dig 環境變量不是固定的,因而在
dig 批處理檔案中單行上指定的選項將對剩餘的行
繼續產生作用(也即,它怳ㄦ|恢復成
``sticky(固定的)'' 預設).
+<query-option>
``+'' 用來指定一茼b查詢信息包中需蚹麊漫峈 需用來蚹 dig
輸出細節的選項.這些選項中的許多與 nslookup(8)
所承認的參數相同. 如果一蚇龠絰搊a參數,那麼格式如下:
+ keyword [=value]
絕大多數關鍵字可簡寫. ``+'' 選項的解釋是非常直白的 --
P它的關鍵字之間 千萬不能用空格分隔. 當前可用的關鍵字有:
Keyword Abbrev. Meaning [default]
(關鍵字) (縮寫) (含義) [預設
dneobug (deb)' 打開/關閉調試模式
[deb]
dn2o] ' 打開/關閉特殊的調試模式
[nod2]
rneocurse (rec)' 使用/不使用遞歸查詢
[rec]
retry=#ret)' 設置姜捰蜈# [4]
time=# (ti)' 設置超時長度為#秒 [4]
knoonoko]
vnconovc]
dneofname (def)' 使用/不使用預設的域名
[def]
sneoarch (sea)' 使用/不使用域搜索列表
[sea]
dodmoain=NAME 設置預設的域名為 NAME
ingonore
(i)' 忽略/不忽略截斷(trunc.)錯誤
[noi]
pnroimary (pr)' 使用/不使用主伺服器
[nopr]
anaonly
(aa)' 表示只包含授權查詢的標識
[noaa]
cnmod' 契_(echo)解釋的參數 [cmd]
sntoats (st)' 顯示查詢統p信息 [st]
Hneoader (H)' 顯示基本的包頭 [H]
hneoader (he)' 顯示包頭的標識 [he]
tntolid (tt)' 顯示TTLs(Time to Live)
[tt]
cnlonocl]
qnronoqr]
rneoply (rep)' 顯示響應信息 [rep]
qnuoes (qu)' 顯示詢問部分 [qu]
anoswer (an)' 顯示應答部分 [an]
anuothor (au)' 顯示授權的部分 [au]
andodit (ad)' 顯示附加的部分 [ad]
pfdef 設置為預設顯示位
pfmin 設置為最小的預設顯示位
pfset=# 設置顯示位為#
(#可以為十六進制/八進制/十進制)
pfand=# 位和顯示位設為#(bitwise and print
flags with #)
pfor=# 位或顯示位設為#(bitwise or print
flags with #)
當發送數據報查詢時, retry 和 time 選項會影響解析程式庫的-
奎曳.其算法如下:
for i = 0 to retry - 1
for j = 1 to num_servers
send_query
wait((time * (2**i)) / num_servers)
end
end
(注意: dig 通常取 ``num_servers'' 的1 . )
DETAILS()
Dig 以前n求BIND的 resolver(3) 庫的版本作一些細微的蚹. 從BIND
4.9起,BIND的解析程式已經袑犰n 並可以正常地與 dig 一起工作. 實質上, dig
在解釋參數和設置適合的參數時是 直來直去的 (雖然並不巧妙) Dig 會用到
resolver(3) 的例程 res_init(), res_mkquery(), res_send() 以及訪問 _res
結構.
ENVIRONMENT()
LOCALRES 用來替換Pa /etc/resolv.conf的檔案
LOCALDEF 預設的環境變量檔案
另見上措 -envsav, -envset, 和 -[no] stick 選項的說明.
FILES()
/etc/resolv.conf
初始化的域名和域名伺服器地址
./DiG.env 預設的保存預設選項的檔案
SEE ALSO()
named(8), resolver(3), resolver(5), nslookup(8).
STANDARDS()
RFC 1035.
AUTHOR()
Steve Hotz hotz@isi.edu
ACKNOWLEDGMENTS(P)
Dig 使用了源自 nslookup(8) 的函數, 其作者為Andrew Cherenson.
BUGS
Dig 是蠕變特色("creeping featurism")的一 典型實例 -- 這是因在其開發
過程中就考慮到了一些潛在應用而導P的結果. 它可能會從這種嚴格的-
定中受益.同樣, 他抭]立的顯示位以及條目的間隔尺寸
很明顯地也是一種十分特別的創意.
當問題出在解析程式角W時, Dig 不會總是能夠正常地退出(在適合的狀況下)
`N: 絕大多數一般的exit情況是能夠處理的).
當運行於批處理模式下時尤其惱火. 如果不能正常退出(又無法俘獲)的話,
那麼整荍撜B理將終止;如果俘獲了這樣的事件, dig 就只是繼續下一茯d詢罷了.
[]
riser <boomer@ccidnet.com>
[]
2001/7/19
mLinuxanhttp://cmpp.linuxforum.net