本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。# f9 C! y7 m" n$ g5 J# c
命令: /Info
9 f5 b/ I8 B" g1 B9 e 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。% k* r6 R! X/ [' z- A7 Z2 F
用法:* N5 B- Z) p3 E! E0 c3 D5 D
dnscmd ServerName /Info [Property] ' t. }+ r, L& V
参数:( H+ O' u: Y) B" X, r u G/ \
ServerName 0 J" d/ r" O" x0 N/ `
服务器名称在上一篇中已经介绍过,此处省略。
+ i! X+ S6 {+ c1 g7 n [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。0 |2 g) P" s# F3 G2 g; w
下面是该命令使用的一个比较完整的例子:7 F1 t( j) j9 ~2 r D* T+ T! O
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
2 R) I/ m6 S* I& q$ G$ sdnscmd 172.16.12.1 /info 只使用命令而不使用参数$ h/ C* d$ f4 U# c
输出的信息:/ k; V% J; l& D+ P( C; F8 R. G
DNS Server 172.16.12.1 Information:
7 Z& \5 m" [+ ]. C- W! OC:\>dnscmd 172.16.12.1 /info' w4 f3 W1 B1 m; e
Query result: 查询结果! g! y; U$ m- G4 h. p0 d
Server info: 服务器信息
6 R! \9 k( h2 `, {8 v ptr = 00074718 端口/ \! N/ m: P2 a3 u/ L0 B0 x, g# M
server name = myserver.microsoft.com 服务器名称
* ?$ _+ B- B) E2 |% }1 M version = C2000005 版本
' ^ G# s0 l6 { DS container = c DS“容器”( X" _8 }0 a0 b3 H; \
Configuration: 配置信息 这些信息的含义请参考有关资料$ X0 q% s4 x9 U2 t
dwLogLevel = 00000000
9 G* o" b6 Q$ G dwDebugLevel = 00000000
n2 d! f# T6 [0 n1 N0 N, M dwRpcProtocol = FFFFFFFF
: ]* C& s* ]2 M1 C; i dwNameCheckFlag = 000000023 a5 x1 O. V8 h! a' K
cAddressAnswerLimit = 0
. M1 j& A- i1 m+ W& _: k/ | dwRecursionRetry = 35 i' p6 u$ y8 b2 Q% o" O1 h6 `
dwRecursionTimeout = 15
, O& O9 m2 T# Q+ a& W dwDsPollingInterval = 300
9 }- ]. {' F/ Y0 g% L, Q, a2 k Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料! B: ?! ~* j3 s* @
fBootMethod = 3 2 D9 t7 T# i/ O9 ~* [ A
fAdminConfigured = 1
& {0 o( o# w; K* t: A7 Y) NfAllowUpdate = 1 ( c. s& H: h' W; @# A4 K9 s5 b
fDsAvailable = 1 1 @( d/ E" g, A' q/ I; p
fAutoReverseZones = 1
# b5 X: `4 i. ^1 \- A; afAutoCacheUpdate = 0 , a2 Q% d' `7 G: u0 n$ q
fSlave = 0 3 S( p1 ~! D; \' {
fNoRecursion = 0
; ^0 O# O7 z2 }& ^fRoundRobin = 1 3 A: `2 l$ e. ^ a; R M
fLocalNetPriority = 1 4 \% H* k2 _: S1 N5 P' b5 G
fStrictFileParsing = 0 & c& K4 ]3 U6 }4 e
fLooseWildcarding = 0
9 M9 G- `+ f, QfBindSecondaries = 1 ; h7 G' K) k' F5 y
fWriteAuthorityNs = 0 1 Y" P' t- ?2 }4 j+ K
Aging Configuration:
% U1 e3 G- o/ z1 z. q5 pScavengingInterval = 0 6 O' E3 V6 r9 A$ c/ A D
DefaultAgingState = 0 Q4 R8 L+ J/ M; Y* L. f% J
DefaultRefreshInterval = 168
3 ]: D& i* H0 r' G$ Y2 L, a. t- u) |. fDefaultNoRefreshInterval = 168 + S+ f) ~) n6 S# x% }5 [8 p' M- g9 {8 F3 {
ServerAddresses:
( S3 M8 } A+ C1 j4 ?# L% H, w- Q Addr Count = 1
) p( a, x% b+ H. Z8 M Addr[0] => 172.16.12.1
" v% h, f/ ~& N5 y8 ~! b! S ListenAddresses:
7 g: M i4 z: U6 a! y NULL IP Array.6 v, S) a* r- G9 j4 z, z
Forwarders:% T. n* m' _+ z6 b6 J2 d
Addr Count = 1. r$ w5 V+ l. u% M
Addr[0] => 172.16.4.3
- M5 |- l( P! Y D forward timeout = 5" f/ m9 U( s; ~2 C+ e& z
slave = 0
5 z3 ~. a0 N- vCommand completed successfully.命令顺利执行完毕 ; W$ O# u8 [0 C8 O! P
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
5 t2 y7 e' T- d5 V& E, v 命令:/Config
% h" Y9 f+ n# C8 M0 k% P 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。3 [) U4 S+ M! P: I$ _1 D* \
. N( k+ o% |+ I
用法:
8 L! X" I* |4 d8 P dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
) D3 I- _) P9 E) p$ U 参数
" t9 z( Z$ S# |6 | ServerName :服务器名称,意义同上
1 S" [+ C Z6 b2 j ZoneName:# z' I4 P! g1 F) w3 b3 G+ a
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
$ N( X; e% s2 d9 r Property:
) S' D! f) C) |9 d$ F 这个参数是属性。这里所说的属性有:. m3 y5 q( e3 |$ j. A8 D; l
与服务器有关的属性:例如:
. D- d* ?, C- T4 X. \. z9 U7 B, C$ l/EnableRegistryBoot
4 p$ G4 I4 i/ y& p/RpcProtocol
- B9 T& I ]6 b' [/LogLevel
1 E+ y" j k$ ]8 [# g+ A7 i5 \/EventlogLevel 等等 (限于篇幅未能全部列出)
% Y1 V2 ?9 }+ \; y8 _% X与Zone 有关的属性,例如:. d7 T* W" { {
/SecureSecondaries8 t6 Q+ j! y4 `5 ~% a$ i
/AllowUpdate
X2 \( }, a/ r1 h2 c& O /Aging
8 w8 C( y. F+ |1 p: c# n- K /RefreshInterval Value% E# V( H% w6 A8 K
/NoRefreshInterval Value& `9 g0 G; A1 O u
属性值:
. p! v6 b0 d: D7 Q 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。% E' t: i+ T2 `. A' V' a0 \( m
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
; O4 ]' P4 J D/ v 命令: /Statistics
" R2 g( e( H$ I5 w 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
4 e/ ]4 F7 J S( Y5 M, N3 K 用法:
2 d% F. a( I3 V; j. g; D dnscmd ServerName /Statistics [Filter|/Clear]- c2 f' n3 V2 Z9 e- o5 J5 i
参数:/ b- u: n' A# `* r' G
ServerName * `* u" G4 S$ u0 H4 y
服务器名称,含义同上。
7 b# C* |+ \) K$ K, N6 z1 Y可选参数介绍:
( z% h9 c9 S; R- g9 j6 Z共有两个参数,每次只能使用其中的一个。
& p+ @8 u$ w1 ~( v 1.过滤(Filter)
) Y+ U) V. `% q. L' e! p% X 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。2 \7 r+ l9 N1 Q5 i
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
5 ?7 I2 }4 T8 x. P3 Y 00000001 -- Time1 r/ p9 n s' U4 s$ L
00000002 -- Query
+ ]) Q7 g% M1 K5 v& D* ~4 S 00000004 -- Query2 S F; q, Z q C; C2 ~$ Y
00000008 -- Recurse5 ?7 g1 A: H" p1 K! I0 g. n/ \
00000010 -- Master
( G4 o1 q( y/ W4 K4 ~ 00000020 -- Secondary
1 l& v. N& }" e5 `0 r 00000040 -- Wins
* l4 r' P# k3 E; O3 k6 f 00000100 -- Update
$ i$ x. q7 u4 G0 s: y 00000200 -- SkwanSec
3 E) T) c( m" q$ E6 H* w 00000400 -- Ds) o/ A9 c5 u( o# r
00010000 -- Memory
2 W, f ^# \6 T9 u1 R 00100000 -- PacketMem5 \, l5 q% u' x+ f* D+ L, a" u9 ?
00040000 -- Dbase
, Z4 [! O! c% O; _1 {0 U0 f" V 00080000 -- Records* ~8 f% s7 w. r; `$ R4 n
00200000 -- NbstatMem7 |: U+ k5 z- A$ w$ l( @+ _# J1 x
2.清除 /Clear
1 q9 J! D; S$ H' J9 T) x% F) w7 C; Q+ m 这个参数用来清除统计信息。- O* P, M# D& ]8 Y7 J
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。9 \' k# {! l4 _0 { _' |' ^5 T
! H1 i7 c% C- B% s/ y
$ J- G7 C+ [+ V% W0 Z
- r) S8 r/ p |( Q2 [4 g" ^0 o
|