本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。' u. X7 h; K% p. q7 e" ^
命令: /Info 5 {9 @9 v. K5 ~1 C7 v
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。# @/ h, v; L: _( z6 k4 r
用法:
9 G: Y5 X! `9 J; d2 g9 W dnscmd ServerName /Info [Property] + u; Z$ @. [, p* ?0 T
参数:( h" i7 @# }+ T, {* w6 x2 H2 ~" R
ServerName : E: b2 s2 O' X0 \ d: E
服务器名称在上一篇中已经介绍过,此处省略。 % b8 J1 ^' l' s% u/ t' V
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。2 X: v- c- X) C. }9 j" k
下面是该命令使用的一个比较完整的例子:; ~$ ?/ V/ U$ a2 p5 Y4 F
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:5 D B5 @! J0 L; f. W% C( K+ @
dnscmd 172.16.12.1 /info 只使用命令而不使用参数6 b5 m; X- ?) S$ G8 c- p4 J" Q
输出的信息:8 }) X, X1 U/ Y6 l4 M5 e
DNS Server 172.16.12.1 Information:" \& \0 L$ z( l+ Q$ Y
C:\>dnscmd 172.16.12.1 /info
5 G1 V) m! I+ e* N+ E. }* X0 |Query result: 查询结果" o! s( D4 D& F, V7 C
Server info: 服务器信息
7 U! A* w; L6 B2 @8 m# u7 Z) j" } ptr = 00074718 端口3 X) w4 j7 s8 V' {: P U
server name = myserver.microsoft.com 服务器名称
' ^/ j9 b" }5 v# R3 p8 Y version = C2000005 版本
7 T9 H" S+ o1 x; @ DS container = c DS“容器”1 H* J! b8 F/ [
Configuration: 配置信息 这些信息的含义请参考有关资料
1 w& w+ v+ Q2 Q: F dwLogLevel = 00000000! V' o* M8 U6 p1 A" ]9 X
dwDebugLevel = 000000004 q7 J9 d2 l& |1 N4 y
dwRpcProtocol = FFFFFFFF
( V! _9 Y# g9 i9 u0 ^ dwNameCheckFlag = 00000002; E* G. s+ {, W3 a
cAddressAnswerLimit = 0
% i* N+ ?& g( o9 S/ [& _ dwRecursionRetry = 3
2 ?7 v' |( u9 B9 Z X% z) i& f3 O dwRecursionTimeout = 15
9 z3 C c4 L* d$ z) v/ Q3 M dwDsPollingInterval = 300& M! O2 l$ p, J( Y2 m5 _$ @$ E
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
! f6 W+ Q$ ]' K7 KfBootMethod = 3
0 ~# z; Q8 `, w4 ?fAdminConfigured = 1
" v. P; ^* u' pfAllowUpdate = 1 - n# e9 h/ A9 c& b! K* @) m
fDsAvailable = 1 : {% O) P2 G" V6 y8 S' f/ u1 g
fAutoReverseZones = 1 0 F, o& A$ @( b# ?4 A3 h
fAutoCacheUpdate = 0 3 `. u9 \2 i& V% j' e
fSlave = 0
# R |. {, M" a6 a7 r% I& afNoRecursion = 0 " S) Q2 o+ X1 ?, ?* @
fRoundRobin = 1 & ^6 P6 C2 {7 u& H. [
fLocalNetPriority = 1
2 Q$ F/ }8 q. a3 qfStrictFileParsing = 0
* B) W* b" G( T* s9 m" [3 ]fLooseWildcarding = 0
8 v: h8 d, B5 qfBindSecondaries = 1
7 r* x1 n! {: _fWriteAuthorityNs = 0 + o. |3 E$ f( H9 T" ]: s
Aging Configuration:
0 g/ p, `" F4 s, S* b1 XScavengingInterval = 0 # x" V3 ?9 W- d3 P8 C+ {. V
DefaultAgingState = 0
- A5 t! K; c% a( P1 A( SDefaultRefreshInterval = 168 ! _2 l# x* N3 w0 M
DefaultNoRefreshInterval = 168 Z" j6 ?3 p2 a' {- Q6 c* h
ServerAddresses: 6 E2 s1 ^+ `' a; P
Addr Count = 10 z+ c7 l' p3 f& L4 N' u) t* a8 P
Addr[0] => 172.16.12.1
8 D4 _' ^5 {5 F2 B& P ListenAddresses:
& m) |. }& r( L3 g6 K NULL IP Array.
/ k; i J4 \1 p- T: C) B Forwarders:
2 g5 f. q, `( ?' v Addr Count = 1. L. |7 m0 i! Y1 j& K; d7 ~
Addr[0] => 172.16.4.3
9 F3 }& i1 Q* } u; e8 c forward timeout = 5
^7 h( R0 |. J3 q+ z slave = 0& T5 Y8 Y! {% L6 D0 R
Command completed successfully.命令顺利执行完毕
/ p" a, z3 |' t, M( m* Q8 k 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 8 I2 U% @ F; F6 \( \
命令:/Config# y7 }5 H) j4 j* c7 p* E
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
8 [9 C2 t E6 G& `/ [$ j' x* k: Q9 `$ o( L1 t- R
用法:
. z+ D8 [0 N/ x7 z6 l7 W dnscmd ServerName /Config [ZoneName |..AllZones] Property Value, a* w G2 d# a5 ^
参数0 b0 o: p$ V4 M3 Z2 N- H7 z
ServerName :服务器名称,意义同上
9 m! K: X& l H- M ZoneName:$ ?3 ~( K% ?$ L- m. H& a
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
+ g, s4 F: K. w r Property: 8 I& t, D' D! Z/ I; D' [: N
这个参数是属性。这里所说的属性有:
$ [+ N0 Q5 \' ~3 n( s( [ 与服务器有关的属性:例如:4 y2 a( ]# V/ a- g4 r9 B
/EnableRegistryBoot
5 z2 ]: c1 w8 X9 k+ M7 l, p0 O+ v/RpcProtocol, t9 K" x0 T" B6 V* _
/LogLevel, s8 u7 W/ G" s: R8 s
/EventlogLevel 等等 (限于篇幅未能全部列出)
3 k+ _; i7 F h! i与Zone 有关的属性,例如:
1 ^4 K( j `" K+ q" G. `) r! u /SecureSecondaries1 A% U8 I( B$ G' W, M' C0 Y" L
/AllowUpdate
. {7 B7 b% F! z /Aging% [4 O) b: m' b) [2 U
/RefreshInterval Value
4 G+ t- g2 s) V* l /NoRefreshInterval Value4 x* S# t: R: r: \1 L B" a
属性值:
4 F! i* ^+ f! u! w' }. s/ F 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。& Q) K3 P( k) E8 u* S$ U5 m" L1 f) ^
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。1 c5 p1 F0 T% M8 n1 W
命令: /Statistics* r* p6 @ x# G& |3 d1 V
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
# n8 S- p" q' e2 k" W k8 f! x 用法:0 a3 p1 C# N) F* [
dnscmd ServerName /Statistics [Filter|/Clear]
' a! f8 q. `; N( u6 [ 参数:0 w% i/ X( J: R4 A V# f
ServerName
4 L7 z! B. d# J+ W% V6 V服务器名称,含义同上。
+ d" o# y3 `5 k1 L! H/ ? I可选参数介绍:
& w- w0 u6 |$ j共有两个参数,每次只能使用其中的一个。
% I/ g1 w( R X6 k 1.过滤(Filter)/ q E% t2 J! l) D+ r. P
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。6 N0 B: c* W7 s: a: u% T
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 2 J T- O% j% l3 I# w
00000001 -- Time
/ I- `' o- v% M 00000002 -- Query
* Z- P+ D3 G, V' P0 S9 y4 I$ R& o( c 00000004 -- Query2
6 a: ~* u' b2 g# y 00000008 -- Recurse
' l. S: b- x! k 00000010 -- Master
% M* s# `5 I( ]0 K; K 00000020 -- Secondary
U" z4 @0 q3 o7 O 00000040 -- Wins
8 t/ j' S6 G/ N8 e+ G; e e 00000100 -- Update
% D$ T- u4 W( q 00000200 -- SkwanSec: D% H6 G( t8 a' P4 f! [& `6 f- r2 P- G; D
00000400 -- Ds
% E8 B2 _# n1 n V d; J 00010000 -- Memory5 ?0 |. _% I' w: M) H& s
00100000 -- PacketMem) s+ w7 G* _% C$ b; @- z( _
00040000 -- Dbase1 t$ d, g9 A5 f2 C, [/ Z
00080000 -- Records: G& ~1 w2 E2 z/ Z- ~ q
00200000 -- NbstatMem
D, r4 q) k0 c* o. S 2.清除 /Clear : v r2 {* d" U' v# G+ c
这个参数用来清除统计信息。
2 r8 h8 U$ @9 |3 K7 f5 y 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。9 F' Z+ B1 v/ S" v4 q2 y7 V% k7 R
' l3 T1 p! S6 ]8 N' e8 y
2 N) {( U3 P) z# R. R
9 a, y/ M$ h' o/ ]: s |