本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。8 k5 O3 S% H# y9 A& ^; S2 c- f1 i
命令: /Info
! w, _2 _/ t- {9 P i3 S% P 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
0 [* q0 x8 C* P0 z4 X 用法:
9 @; @5 f/ Q6 T5 H3 n dnscmd ServerName /Info [Property]
( @; P; s. D8 z5 h8 ^ 参数:
. x/ Y5 ?: ]& J& c/ G4 h k3 g ServerName , S4 u- t; q! L t
服务器名称在上一篇中已经介绍过,此处省略。
8 `7 u5 O; t7 h5 A7 g( F) |6 m# @ ? [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
& `$ R- r. d" Y* I$ H$ G+ j, m# k 下面是该命令使用的一个比较完整的例子:
$ m* D( S& ^! ?$ c1 f9 D# N 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:2 A: q* N( w. N
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
& Q: `0 i) {3 G2 D8 D输出的信息:" R7 {( \9 U) I8 X1 L5 d8 Y
DNS Server 172.16.12.1 Information:
4 C; a3 \4 v' R E( SC:\>dnscmd 172.16.12.1 /info
& o' G" f( i% Z0 O% Z2 E+ v& PQuery result: 查询结果
& U% `) N; R+ t6 U0 m- |( g! O2 n: xServer info: 服务器信息
. O% o* w3 f* s8 Y4 O" y ptr = 00074718 端口
1 ~6 E1 \6 H- r) H, [ server name = myserver.microsoft.com 服务器名称9 w' }. g6 q" o \% I2 q! F
version = C2000005 版本
8 ?) P6 n( p" ?4 G5 n DS container = c DS“容器”2 N5 N/ m/ U7 [1 ^9 }( x# c
Configuration: 配置信息 这些信息的含义请参考有关资料
! P7 g6 @3 K4 S% E dwLogLevel = 000000007 O1 w) H3 B. t0 Q( X1 ?0 {1 x( w
dwDebugLevel = 00000000
$ e. M3 T9 d5 p" H, L4 e dwRpcProtocol = FFFFFFFF
8 z' m: H8 ]1 K dwNameCheckFlag = 00000002
8 P) n# d( m& s: w cAddressAnswerLimit = 0' |! }7 e& B, l/ \' Y% b
dwRecursionRetry = 3
2 s' o. q1 l4 {6 V dwRecursionTimeout = 15
6 s3 M }1 L# x) \1 p3 M; C dwDsPollingInterval = 300
$ S6 F% p- y& N9 Q* M3 P m Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料( \. M6 l+ o/ n, M1 d# f! s. \* K Y
fBootMethod = 3 3 l$ n7 ~9 U$ C8 W' U5 E! F
fAdminConfigured = 1 2 V' p# P+ m# I7 i& t( L0 @
fAllowUpdate = 1
! L1 u7 Z; n) I& ~2 WfDsAvailable = 1 $ S' X, g- k# {* V: w7 i) Z
fAutoReverseZones = 1
% u. x5 x8 u5 tfAutoCacheUpdate = 0 3 M3 e' M8 t, T; y Z4 J( F
fSlave = 0
+ O. b1 d1 [5 L% ifNoRecursion = 0 7 |- i; v8 }+ o+ Y
fRoundRobin = 1
+ ?' g i) i2 ]fLocalNetPriority = 1 . P5 L* ~- Y' |3 d; a* f
fStrictFileParsing = 0
2 \- U+ ^1 K. |" Z# j6 CfLooseWildcarding = 0 3 e- u; Z4 x# S$ c0 ~' B! s
fBindSecondaries = 1 , b' O. b, p3 A0 I5 H3 ^1 @ x
fWriteAuthorityNs = 0 ! a* ^/ T7 l% K! F* B
Aging Configuration:
8 k* Q. H1 E% V* }7 m p, x4 wScavengingInterval = 0 , }: `3 K: Q I6 x
DefaultAgingState = 0
" W" Z. W k0 Q% C VDefaultRefreshInterval = 168
! r( A+ E' k4 @2 b! [DefaultNoRefreshInterval = 168 & x) ?7 X" W8 e% p
ServerAddresses: ! {* U8 t8 _2 h
Addr Count = 1
/ w' _. \6 `, d i) A5 @ Addr[0] => 172.16.12.1
2 C7 m7 ^: t" s, p1 } ListenAddresses:
5 i) x% g; f; _0 X% L- ^ NULL IP Array.
; |) N* b! ~* h) x" O Forwarders:
! |8 R8 \# _& j2 @) R8 @/ s Addr Count = 1# l- X. A. B" b( U
Addr[0] => 172.16.4.3: |; V8 u. C6 E0 {
forward timeout = 59 }1 B/ {" G9 {& t7 p
slave = 0
# H% d5 S' K. d1 p7 x1 qCommand completed successfully.命令顺利执行完毕 . w3 |$ k% A6 N6 F" u+ s
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 # m# Y7 y7 V; l0 C
命令:/Config
9 F- V' ?3 f9 c5 c; N 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
: `: v$ y/ i" q% O" n9 l9 T. K; j2 a0 Q: a! ^) N B; `
用法:
* S8 a/ c' }; H dnscmd ServerName /Config [ZoneName |..AllZones] Property Value1 Q! B7 \. G# ]; ?- _) b m7 v
参数# G2 s& U+ A# I
ServerName :服务器名称,意义同上 ! M2 \! `/ _. s& @- C
ZoneName:) b2 D( Q% J( k7 n# L H$ O
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
% d, j+ @" q- Y. j: r5 i8 h) k! M Property:
. z& e, ~" a3 `" j* e 这个参数是属性。这里所说的属性有:* ~2 t9 `; ]! ~2 @. m
与服务器有关的属性:例如:
. _- J4 H6 A( `9 M: N/EnableRegistryBoot2 e; u4 a/ y4 _" M1 D! n7 c# U
/RpcProtocol8 s7 Q! D! \* R9 t9 {
/LogLevel( n2 L P m6 M: t) X
/EventlogLevel 等等 (限于篇幅未能全部列出)( K8 @$ b( j6 b3 V; U
与Zone 有关的属性,例如: O2 ~! Q U* f) B4 ?, s9 @5 v
/SecureSecondaries8 o' @3 T, J* b; y' ^" Z0 A
/AllowUpdate6 T# i6 ]5 r4 K4 E8 O
/Aging, _ ?+ R5 W$ l; ^" D
/RefreshInterval Value+ i1 \- F# b# B" l
/NoRefreshInterval Value% U% b5 b' d" g7 ^$ \0 ?) |
属性值:
5 I7 I/ m% V3 P- \ 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
; g& P: ?* M, N+ f4 o- b u1 W9 k从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
, p9 V1 I" I' Q5 G7 g, s2 W Z 命令: /Statistics
' `* f2 j) ?$ U. R 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。3 w$ x* {9 k, f1 @
用法:: d" e* _# @, E
dnscmd ServerName /Statistics [Filter|/Clear]
4 X. b2 Z$ a. e; a/ j- D" K* y 参数:
) g" e k+ k+ {. F' k Z! J) GServerName
$ B. E8 d" R4 p8 N: e服务器名称,含义同上。9 i$ Y/ o* k2 [. A( Y/ o
可选参数介绍:5 v/ \# G8 D+ I) c& N( \/ t
共有两个参数,每次只能使用其中的一个。& Y- E- A* I7 z" P( g! v
1.过滤(Filter)
& I/ K4 _4 _, h+ f, C3 m 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
6 N' L, t& t- ^5 l) A4 R* z$ K/ f可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
$ s/ e, J' R' G; y) d f 00000001 -- Time& U9 Y }" u4 {9 o
00000002 -- Query. l- ?) {. T% j8 C+ Q( o) v
00000004 -- Query2( \+ k! D L( w m+ G! g# c
00000008 -- Recurse6 W, B: V6 a3 n* d! U( q
00000010 -- Master
' \- w3 W9 q& K& a' {9 l# q# ]: J 00000020 -- Secondary# k' x9 W+ |7 U/ j; t2 I& i; h
00000040 -- Wins
4 F8 P) |; M! p B/ Q+ I 00000100 -- Update( u5 _% R( [) T1 o; K( L& _& e6 m" \
00000200 -- SkwanSec
; h1 z0 j) e7 X: W) K5 i 00000400 -- Ds
8 P) ?1 Y0 |& D% ~3 h 00010000 -- Memory9 }" O& u9 o" y) O
00100000 -- PacketMem% x. ?& ~0 j" ~5 {7 m& W. u
00040000 -- Dbase
/ H- C( _8 ^* f' D7 Y 00080000 -- Records
7 ]" K- S7 c# G; k! S1 ? 00200000 -- NbstatMem
7 `) r+ l. a! {4 k9 l6 s 2.清除 /Clear
3 f) R. N: a( j$ y; k2 [9 H 这个参数用来清除统计信息。
' @; B% U, d2 j6 Y 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
9 F+ T5 J8 x3 B+ h1 \ O
0 y1 p* o* l# {+ F; E 7 c5 @/ n& q5 I# ?, m' }9 H
4 I8 |3 C/ ]& M- l
|