本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。; p7 a9 c% f* I9 a2 a/ W2 a
命令: /Info * s( N: N1 M. m6 [" _& f3 E
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。0 a7 r8 F! x' u L
用法:
& T1 B% e8 H) {. }" b dnscmd ServerName /Info [Property]
2 L7 D$ e, S) i2 h4 F3 I 参数:
' ^- I1 S# v+ ^ X* F ServerName 1 l/ `/ u/ N7 Y! z3 J, |& F
服务器名称在上一篇中已经介绍过,此处省略。
" K3 s2 j4 M! |4 t; G% g [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。! p" Q- W( W: v( O; {
下面是该命令使用的一个比较完整的例子:
* A) {7 W: c; w4 r1 t9 a# L 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
" x; N: P. G/ j, }; X) q" X" ldnscmd 172.16.12.1 /info 只使用命令而不使用参数% Z2 ^3 `! I _6 I7 ]$ W
输出的信息:
/ p; m, t) U' ?4 ~# ?7 m$ K3 gDNS Server 172.16.12.1 Information:
; w0 o6 S) A$ `3 M9 I1 Y2 W; aC:\>dnscmd 172.16.12.1 /info
/ }, f$ ~; c# z* tQuery result: 查询结果- e7 B% s) {* z' t4 X
Server info: 服务器信息$ s+ m8 Q! N8 s: ?
ptr = 00074718 端口
: D7 C2 X6 I) W8 K @ server name = myserver.microsoft.com 服务器名称
/ f8 n# |& u' t+ q version = C2000005 版本
7 `" @( ~; `& [& j$ Q1 W# h DS container = c DS“容器”9 z6 T6 U" G+ q0 _0 _- O
Configuration: 配置信息 这些信息的含义请参考有关资料' Y, Q' F; k, q' P" y# _/ A7 J) L
dwLogLevel = 00000000
: h4 ~3 r2 q7 e9 Z4 {* a' p dwDebugLevel = 00000000
; J) }# {# K3 ^" c0 g( k+ w dwRpcProtocol = FFFFFFFF( S. K7 L5 }3 D% N
dwNameCheckFlag = 00000002& U; a. r' D% |# h8 R. \
cAddressAnswerLimit = 0
# o2 ^, q3 Q ]# W5 m& F dwRecursionRetry = 3
* H5 Q5 I- p/ C dwRecursionTimeout = 15
; [) J3 x' f9 S5 }( U6 ~ dwDsPollingInterval = 300; [, Y0 j' t; i4 L! G& E$ T
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
+ I- D, L1 j6 t3 H7 g8 _# X5 f- ]fBootMethod = 3
) P2 t, G! ~+ ]/ x9 X: x* d& wfAdminConfigured = 1 9 ` X. } n0 J
fAllowUpdate = 1
5 |# n5 g7 ?& S6 ^% G& ]' y! `/ EfDsAvailable = 1
) o+ O6 |. G6 f& M2 }& m efAutoReverseZones = 1
5 d# O( |6 h$ a0 F! s( p* \7 FfAutoCacheUpdate = 0
: \/ t8 a5 f& f w0 LfSlave = 0
% i- Q* l3 ^8 D% j* xfNoRecursion = 0 + y' k& R3 Z; x5 E- D% v$ V' K
fRoundRobin = 1 % V4 Y7 p& i5 j4 h
fLocalNetPriority = 1 ! B. a7 k- A( A" n2 `; |7 c
fStrictFileParsing = 0
* Z6 s; c' K8 ~fLooseWildcarding = 0 - K+ t2 z0 s6 W, B
fBindSecondaries = 1
0 r4 J; @3 n& @4 v- ^: f7 F7 Y w9 |! bfWriteAuthorityNs = 0 % K* u9 j5 e6 E' n' S, h ~
Aging Configuration: % T& z5 H. [ n- f" ~6 b9 j
ScavengingInterval = 0 ) D! d# A6 `$ v; y! o+ u) `
DefaultAgingState = 0 / J9 m* C* Y; m
DefaultRefreshInterval = 168 ) A' x/ g5 t, [2 k7 G' W" h
DefaultNoRefreshInterval = 168
8 ~: v" Q4 Z$ o* ?) i( i, A) s- C, U8 P4 [# M ServerAddresses:
5 \; [4 S1 f2 C: ~ Addr Count = 1. Z4 x3 ~' J* u3 H
Addr[0] => 172.16.12.1# c# v# \. B& |& b. \( S- A" O3 O
ListenAddresses:
: v3 m! [4 J7 D! Q NULL IP Array." ]( H; h8 g3 ? d
Forwarders:
/ X+ R3 l/ Q7 c+ o3 ]- r3 ^$ b Addr Count = 1% X- N( t7 ]9 x# }, B
Addr[0] => 172.16.4.3
$ P& i O! a7 t1 m8 U forward timeout = 5$ |4 X9 c0 }% [) K
slave = 0, _. U- h- T3 p
Command completed successfully.命令顺利执行完毕 " [6 y3 i3 x6 {+ E$ ~
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
$ p4 X8 ~3 e8 H# R5 B' t 命令:/Config# g9 M3 [3 O; [, M
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
/ u5 H5 V' b2 c
; q7 {! ]4 R- q# {2 S2 N5 K8 v 用法:' Z) j. g- ~8 ~% \+ j. t6 `9 h" W
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value2 O. t" ]8 b& H4 ]; E% u. n; y& E
参数- i1 T& x3 a& [) M9 h: u+ p9 r( w
ServerName :服务器名称,意义同上 % v/ {1 M3 u5 {7 d
ZoneName:
! D1 Y5 X: |$ Z+ l7 K+ u6 h. Z/ _* d2 U 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
& F5 d( _+ P9 i" d$ U: R7 f4 c Property: , E7 u5 h8 Y6 y7 ]* q
这个参数是属性。这里所说的属性有:8 N: G) D" p8 A6 q4 ~
与服务器有关的属性:例如:
+ c# f: a) d; k+ S8 }' Q/EnableRegistryBoot9 l: l u+ w4 Z7 E
/RpcProtocol# d% k& ?4 W4 r# \
/LogLevel
/ e% T$ H d8 [7 A0 Q/EventlogLevel 等等 (限于篇幅未能全部列出)
5 l1 c1 p/ t; m" K8 f7 t, b与Zone 有关的属性,例如:, @2 S& z- V& u$ l1 E' [3 f
/SecureSecondaries
0 r9 S1 A6 ^1 T; y /AllowUpdate
! T9 N/ J) ]! P! C! z6 F /Aging$ ]! n; l5 @, Y5 x. j. ^
/RefreshInterval Value& t. f& D8 V9 ^" f/ ]: i9 R
/NoRefreshInterval Value
G! s8 D+ ^: v/ J3 z 属性值:. T- ~% |* E/ `/ w$ [% \
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
6 e. V- Q8 g4 e1 k从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。0 K1 x! f7 v; J) G
命令: /Statistics
: e/ L7 W6 l1 K' G. |/ p: V 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。& a3 e- e; P3 w/ T3 r
用法:
: G9 k% T8 r7 L7 X, o2 e/ q dnscmd ServerName /Statistics [Filter|/Clear]6 ~0 F4 G2 ~% J7 P4 _6 r; g
参数:
9 R8 z5 l4 C4 F* gServerName
5 N- Z4 O! \$ Q7 N服务器名称,含义同上。
" a: r7 d( \4 w& V3 R可选参数介绍:
& M! b5 S% d1 H. I" R& c: s共有两个参数,每次只能使用其中的一个。
3 N1 b0 E' J4 C! w, N 1.过滤(Filter). J' w. [9 d4 V; T2 ?
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。# G2 f! h* a( U
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: A. g' ? G3 b% i8 H
00000001 -- Time$ U- B3 q+ y) M- N R3 b8 X' D; d
00000002 -- Query7 E2 t$ b. R' A) {
00000004 -- Query2- z" ^1 L/ I& p' V: z' A
00000008 -- Recurse
' _2 J* o- `+ D 00000010 -- Master
( l' u' K0 H/ Z, {% w% X( G, n 00000020 -- Secondary/ Z% f2 o3 {5 f4 b! r- {: x! m
00000040 -- Wins
9 H2 X4 Z1 k' v/ J( _ M- ] 00000100 -- Update; X' w; t/ I% g" P
00000200 -- SkwanSec1 [, o$ v% k0 h! m1 g L& `
00000400 -- Ds
$ j) C: n2 O3 M9 T 00010000 -- Memory" I7 i! M0 P2 X# h8 x( }5 L
00100000 -- PacketMem
0 W4 N7 u3 X2 f1 T' ~4 q/ I 00040000 -- Dbase
4 x u2 ?# ]7 J A2 a( G 00080000 -- Records& i( [1 I; z" l: x" @, k: R
00200000 -- NbstatMem
" w: ]6 j9 W9 K) y( ^, L n 2.清除 /Clear
7 v6 F0 Q9 ?7 }8 F; ?% | 这个参数用来清除统计信息。
: C l) r1 H G) N: u- B 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。% C% V: h; A- y3 \
' L4 l$ k2 s9 }9 h t. z
. A5 [8 u7 l$ ~. O0 V
4 u; \0 G' s$ Q4 [7 V* k# q/ n |