本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。0 |- `: t' H; y# q* l
命令: /Info 9 B* f7 q6 ]2 H' a& I r
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。% V% H9 v4 j$ I5 w) p+ E
用法:
/ T2 s4 F. j3 q3 f" P, ? dnscmd ServerName /Info [Property] $ y. k4 M2 D% q. ?
参数:0 L' J5 P% M4 I& g! j& f- y
ServerName 7 B9 _4 I" B( H( X# S3 n
服务器名称在上一篇中已经介绍过,此处省略。
9 I" L; K4 L% i' D2 J [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
- |( K: [4 q9 D. u 下面是该命令使用的一个比较完整的例子:
0 U k0 S: }: E6 y: L+ p, J 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
7 U \$ g, }# R; r# Q$ jdnscmd 172.16.12.1 /info 只使用命令而不使用参数1 p2 M& K" `: I1 k
输出的信息:7 O2 q# P4 {5 i9 k8 C5 ]
DNS Server 172.16.12.1 Information:+ V2 ~; T4 q) O0 F$ ]
C:\>dnscmd 172.16.12.1 /info
D w6 l% G j% o* gQuery result: 查询结果
( `5 S; }1 G7 { ?) z( C$ SServer info: 服务器信息
6 y. w+ b2 t2 q) y! J: w ptr = 00074718 端口
; j+ X- r* x4 b8 \7 f' M+ h server name = myserver.microsoft.com 服务器名称
8 H" @- Q# ]# V4 u version = C2000005 版本
4 m. u7 o# u# R9 U5 u; G DS container = c DS“容器”3 \/ A! Z$ x0 ~' r' o/ F) ]
Configuration: 配置信息 这些信息的含义请参考有关资料
/ i! a Q$ k) Z3 a dwLogLevel = 00000000& q, X8 S! E: E$ |# P
dwDebugLevel = 00000000
, V# u* l; l4 P dwRpcProtocol = FFFFFFFF2 v. t3 a& K9 i! ^! I
dwNameCheckFlag = 00000002" A; F( ^0 L, s P6 \
cAddressAnswerLimit = 05 l+ L' r) d+ L7 w. K
dwRecursionRetry = 3% ]% ^4 s4 C, j7 V2 w
dwRecursionTimeout = 15
9 H, j0 E; i# r) w dwDsPollingInterval = 300* T3 }1 J: e1 g) J! ] T
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
0 V2 z; Y# k7 UfBootMethod = 3 % q) ^3 u2 u. x
fAdminConfigured = 1 $ I2 e, K4 X8 E" P
fAllowUpdate = 1
( i+ x0 p5 a1 u" W1 `- W# BfDsAvailable = 1
2 g$ j# S; t' K0 M$ a8 Q+ Y8 BfAutoReverseZones = 1
/ U K# O& V9 Y2 \/ Y nfAutoCacheUpdate = 0
: N) N4 d0 v; O1 ^' B; @# [fSlave = 0 9 } }9 m, x7 p% h1 W; {
fNoRecursion = 0 * d$ {5 M8 n1 N0 U0 B: j3 M
fRoundRobin = 1
. t j2 S1 o8 H- i8 p/ ^- Y: y6 n* DfLocalNetPriority = 1 0 j7 ?' k& j( \, E* P
fStrictFileParsing = 0 ( U( \# x% ~% N* O8 l
fLooseWildcarding = 0 % v$ s4 n, X8 q& i* j" T
fBindSecondaries = 1 2 q+ J' K% I( _% h& a+ C
fWriteAuthorityNs = 0
5 D- W1 ?4 z9 ?% `Aging Configuration: 7 u$ B! J: y5 M9 b# l
ScavengingInterval = 0 2 O$ v1 |: X2 o4 K! \* J
DefaultAgingState = 0 + |: b2 J+ \# q8 d+ J2 \+ \
DefaultRefreshInterval = 168 ; B- c4 }6 Z+ _, D1 X
DefaultNoRefreshInterval = 168 5 M) P9 v- j' x! \& e
ServerAddresses:
- I' o/ I2 t2 L Addr Count = 1" U+ w) `# s3 e! G0 r
Addr[0] => 172.16.12.15 n+ c, e3 l. K# Z, g ]2 N3 w
ListenAddresses:
; P1 C( D# }' i% v( w NULL IP Array.
* [/ f2 [8 H$ K0 x. O* w Forwarders:
- e6 d% K3 l$ p# Y4 z4 ]7 X- @ Addr Count = 15 a E3 u9 g& R$ C" U d5 Q/ ^
Addr[0] => 172.16.4.3
( e" H" Q1 q, v forward timeout = 5, ~! u& W( y% e% ^5 Z8 b0 y1 E% `8 h
slave = 0
) ?$ C C" r8 `* M1 `3 [7 oCommand completed successfully.命令顺利执行完毕 0 D; Q: L9 s6 i+ G) g- z, _
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 " a+ s3 I1 @9 P+ z. v
命令:/Config
3 ]1 \9 [* g, u8 @6 a# G1 u' Q: b 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
^/ ?& |& d+ I0 j4 _
+ j, b4 Z8 j, C: Q! c- R3 d6 \0 Y- q 用法:
9 }9 j8 `9 Z; \+ R, `$ w% d dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
7 F9 d [* l& l* n 参数
3 r9 u3 N" w! w7 Y2 ~ ServerName :服务器名称,意义同上 " J/ C+ {+ v( d' p, s. f I
ZoneName:
( Q6 x, M: }! I- ]0 f: C 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 9 f6 W# e' o! o$ h6 w8 d) A
Property:
# Q, N1 _5 a5 q 这个参数是属性。这里所说的属性有:
( V) O+ X3 R( K 与服务器有关的属性:例如:
- o- T5 V# H% b/EnableRegistryBoot
, w n5 a/ t: a/ u% i; Z7 E. a2 y3 k/RpcProtocol3 f p, {7 U7 d4 H( Q6 v
/LogLevel
. f" U8 y& j2 @6 _/EventlogLevel 等等 (限于篇幅未能全部列出)
" n" Z: \# l) Z! {与Zone 有关的属性,例如:
6 w" E1 X) `$ t5 e6 Q+ `( \ /SecureSecondaries5 y5 S- K' L' t) H8 y) l
/AllowUpdate
! ^* S; j7 L9 X) G" X /Aging
" A [& K W4 h0 p$ }& q /RefreshInterval Value7 B# n+ l! T z% t0 o
/NoRefreshInterval Value; ?9 ?# I2 Z1 ?; w) t3 E
属性值:
9 {: R5 e) \3 o6 z1 q0 c1 C$ q2 E 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
3 M% d# p& C- g5 o( a, R从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
! U, G! O1 M6 ^/ ~! W, g/ _ 命令: /Statistics2 B6 \9 i6 _" y) l7 A
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
) Y1 \3 [& x9 Y+ W; s/ S1 ?4 F 用法:
}( W6 y2 \7 T9 o0 L/ _4 I dnscmd ServerName /Statistics [Filter|/Clear]
; ~- h( D2 @+ ~, W# b 参数:1 w0 B7 ]8 B3 T
ServerName ! n+ A5 A5 [% d4 @
服务器名称,含义同上。
3 i$ ~- \ U! p+ n可选参数介绍:
0 ^+ a# i9 `' W5 S& D共有两个参数,每次只能使用其中的一个。$ y% ~* R4 w+ H4 @, ]
1.过滤(Filter)
* i/ b! x5 h) t* c 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。. P7 U% c/ a" z
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
8 p2 v" r8 M: B3 x! v+ z: a! m3 G9 G 00000001 -- Time) P! E ]% S* D2 F
00000002 -- Query
( \$ y% E' j3 `9 h- `; S+ k% E7 q 00000004 -- Query2
0 `; F+ i. d9 j+ e6 f 00000008 -- Recurse
6 j. ?; K$ ~0 p 00000010 -- Master
9 J4 [( E' f+ m6 | 00000020 -- Secondary/ E$ V- _4 V+ e4 j
00000040 -- Wins
0 z6 j3 x1 V' e' a8 N4 K 00000100 -- Update. r# A9 o2 _( Q8 s4 C+ f. K
00000200 -- SkwanSec. T8 F# w: c! F4 V# B
00000400 -- Ds% |, w) `& \( T, i
00010000 -- Memory& r, S$ a8 E. O- O: R
00100000 -- PacketMem9 ?) [ M3 Y+ Z7 }5 j& L$ D
00040000 -- Dbase9 t) a5 @& Y5 i! N% W1 e
00080000 -- Records; [4 h- v: c) m4 u6 `
00200000 -- NbstatMem
P/ L! n; {; k5 t4 `( ^; O 2.清除 /Clear ) U5 u: i$ w* h3 ]5 \; q1 `2 Z
这个参数用来清除统计信息。, E; k$ g: g" u* Z" i: {2 y
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
) r1 O$ H8 o; z$ e# e6 N* z8 u) C# U$ Z* K0 @
" v7 \% F: N" U9 d6 P- X
- U! n8 |3 s7 Q3 }8 r" m! e2 M |