本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
& A1 L: z8 V6 Q8 N" w8 R 命令: /Info
4 _! h- B! y# _/ Q L 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。8 ^ O# A5 t+ Q; _# l% ], u
用法:
9 L$ f0 A* W+ k$ f: Z dnscmd ServerName /Info [Property]
' v- ] D" Z) G( y 参数:
' j4 q1 a2 p3 c; g' W7 ^6 ]! R ServerName
" r& o t! w7 M# }. i: o 服务器名称在上一篇中已经介绍过,此处省略。
- X9 ^$ H8 f5 @ ], n+ Q$ E [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。% e+ z& n2 e' g7 k; A; K$ r
下面是该命令使用的一个比较完整的例子:. ]" u! s4 `4 c) y
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:- @' J4 J+ i- y
dnscmd 172.16.12.1 /info 只使用命令而不使用参数' R8 D3 w) M/ p1 N9 ~3 ^2 s; y
输出的信息:
4 b8 i9 S# W7 z6 NDNS Server 172.16.12.1 Information:# w1 f6 |# ?9 E! i
C:\>dnscmd 172.16.12.1 /info
' @& }1 B( G/ {- y7 r: ZQuery result: 查询结果) E3 u% c6 j& [- _
Server info: 服务器信息( q9 k$ I# Q" T9 o; Y I
ptr = 00074718 端口2 l+ J% p3 t9 t; I' A
server name = myserver.microsoft.com 服务器名称5 U' G; t1 B) f7 t- B
version = C2000005 版本
% u. J$ H- h6 T. W6 x. ]( r DS container = c DS“容器”" E8 \7 u4 A/ Q- E$ Z+ z6 i8 s
Configuration: 配置信息 这些信息的含义请参考有关资料
& f+ x0 W5 l9 m9 q7 |& O; [ dwLogLevel = 00000000% M! c. @8 x4 d# H- N2 Q
dwDebugLevel = 00000000+ g: m3 s" K9 W1 G
dwRpcProtocol = FFFFFFFF( N9 ~% X* u" ] m
dwNameCheckFlag = 000000021 B) Z! y. f7 m6 |" y: R7 p
cAddressAnswerLimit = 0! z& z; S; p: V; F
dwRecursionRetry = 33 J9 j, p w0 p. P" r; p; K7 K/ j
dwRecursionTimeout = 157 z5 m5 I1 ~) l O' A3 @4 c, p& h/ N
dwDsPollingInterval = 300/ u; Z/ X5 \: D- J. b6 K
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料1 N9 a7 O" i; m# @1 t1 |" o
fBootMethod = 3 ! g$ H# ~! ^: |9 @5 p( x6 [
fAdminConfigured = 1 % X- d8 T) G1 x
fAllowUpdate = 1
U& Z( p: t0 zfDsAvailable = 1
+ d% {! T( w) B5 ^" qfAutoReverseZones = 1
% D- ]% U/ C @# @/ U- AfAutoCacheUpdate = 0
0 y" p$ N3 Y& c/ p }2 b9 bfSlave = 0
* t+ t1 r8 Z* l8 j/ q! C, DfNoRecursion = 0 ! N, Y4 _" w/ T5 S
fRoundRobin = 1
% c7 Q5 I! a& kfLocalNetPriority = 1 9 J( [" E7 n& v
fStrictFileParsing = 0 ! G! b5 K- [- |- Z5 n4 w
fLooseWildcarding = 0 . P! w) d, L) ~* B( G5 s" E' X
fBindSecondaries = 1 % y( `4 |0 S$ m
fWriteAuthorityNs = 0
5 N; r' ~$ E6 D; W; f: yAging Configuration: + Y( j: ]7 ~5 ^) G) c2 |$ f3 C
ScavengingInterval = 0 $ m9 T7 j i: w1 O* [' ]
DefaultAgingState = 0 . o5 [3 a% a; M% W3 \4 H0 _1 ~
DefaultRefreshInterval = 168 $ b4 e! G; ^* Q* t4 Y& y
DefaultNoRefreshInterval = 168
+ j) e$ m+ |8 Z% C* V, d1 K5 E+ c ServerAddresses:
' s$ m# o T4 M: P Addr Count = 1
2 \/ r/ `& I$ }. g1 ~ Addr[0] => 172.16.12.14 m; \, R, D8 X% Z5 F/ A. k
ListenAddresses:
# F( N* |, }7 {( p h0 |: l! S7 ` NULL IP Array.7 y9 h: [. F8 e- F0 X5 z1 r
Forwarders:
) V3 W8 {& k/ I' q Addr Count = 1% X7 E& }/ d/ U- i: A5 V! K
Addr[0] => 172.16.4.39 t m( p" Y# g6 I ^" f
forward timeout = 5
1 G; V! W4 a5 I, e7 Q; ~1 {$ r slave = 0
' W. t* \3 U. w" T: k1 p& Q4 BCommand completed successfully.命令顺利执行完毕 % }7 T: D* k( _9 n
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 3 V* Q8 W. T6 q+ `$ c4 M
命令:/Config7 L8 j: d( ^4 L- ?' M/ e
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
/ U; [2 z( {6 M" h8 C. G8 L9 W' ^( p& Y" h
用法:
3 r2 o, @6 _! @ N! o5 d dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
2 a( H# K% [* p: @ 参数
/ ?( T+ [3 ?/ P! s ServerName :服务器名称,意义同上 8 x( ^2 z8 A6 i( H2 T: p* \
ZoneName:" D6 |( e! R, C
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
0 ^+ X! N: e- d5 F c Property:
2 ~9 M& O* ~7 K- G/ ]0 ^) b 这个参数是属性。这里所说的属性有:
; Q5 ? T/ u/ \& F, |5 I/ v7 `# _ 与服务器有关的属性:例如:
# l; i0 O. y0 ~( [0 W+ T/EnableRegistryBoot
9 T5 f; n# O1 j* V0 B. K9 J/RpcProtocol, e& r- c* q( o9 Z) o3 C3 t
/LogLevel
0 Y- t( @) ]) {, i* d; Q/EventlogLevel 等等 (限于篇幅未能全部列出)
6 M. n6 ]! \1 e- M& [# S与Zone 有关的属性,例如:
/ Z g- f( `, O' a& |9 Q% i /SecureSecondaries) u1 t6 c/ v5 o2 B2 a% m9 h* q
/AllowUpdate
; o& n- Z4 ]4 f3 D# S /Aging* _/ X+ q$ x( t2 L' V
/RefreshInterval Value' a. T7 w M9 _# Z- f( a
/NoRefreshInterval Value
7 b8 H6 X( U* G. e; x( I% d 属性值:
; V& ^9 A7 `; l# M& M9 A$ R" m/ Q 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。" v/ L) L. ^8 A! A$ m& q6 A
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。7 L; a* N, \8 a# t J" Z7 W
命令: /Statistics
& O4 w' e( Q! H" _% G- _ 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
$ ~; _2 _2 L: z$ l) E/ L7 y 用法:3 y% `% t" {4 }* [, g' l
dnscmd ServerName /Statistics [Filter|/Clear]
* e# J5 n& e4 _0 S 参数:
5 k+ M& i. C% L; GServerName 9 R2 y4 d1 [9 |# H0 @- l8 I) E
服务器名称,含义同上。 m v* w5 @ k7 k
可选参数介绍:9 U# c* `9 X; G% O6 o
共有两个参数,每次只能使用其中的一个。6 s8 C) v0 A% Q. a
1.过滤(Filter)
; A$ h" e5 d/ {2 n/ v( }3 a 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。1 g3 r& L# c# [. U
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ; ~' z3 R( z* T! v9 p' X
00000001 -- Time2 S2 V6 I9 N: S k% Y+ O/ E+ i7 l
00000002 -- Query
& ` K1 \7 C3 \; _ 00000004 -- Query2, F$ D. m. S5 Y. g3 c9 ~8 t* O* b- [
00000008 -- Recurse2 F3 H( i7 A% {7 Y/ {
00000010 -- Master
' X' M" L6 v$ ~9 ^3 j 00000020 -- Secondary
; E2 ^2 L( u' ]7 _' J) Q 00000040 -- Wins. I2 S% x* h" O3 U
00000100 -- Update1 w4 r* U. Y$ a
00000200 -- SkwanSec
# ?/ f) B& k+ i$ | 00000400 -- Ds
; M" u, _; E& Y6 i, r i1 j 00010000 -- Memory
- V/ I0 k& E% N0 d. Z+ n. n: w t 00100000 -- PacketMem
6 R9 m5 b `0 O9 o 00040000 -- Dbase
5 a( E) n6 z4 {! m" A& S 00080000 -- Records1 o5 Y0 d& _6 N* {5 _
00200000 -- NbstatMem
3 `/ }$ k6 h, N! o( ?/ o$ A0 l) w m 2.清除 /Clear
& J. x/ Q+ A: _# \ 这个参数用来清除统计信息。0 G4 z1 |( x9 A2 M4 g
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。( o! |; {6 ], {& G
8 a3 @" i3 [% ~ E' S! H" D
8 ]' F: B+ A/ {* d5 Q( l6 j, d2 M) V x3 h9 ]
|