本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
" k9 N& V! x( _1 k7 [7 T 命令: /Info
K- w! }( F- @9 Q9 |* _ 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
9 @8 `7 L9 O# R 用法:
7 q! t/ x' y5 A. o dnscmd ServerName /Info [Property] 1 Z: j7 g6 f ~' ~
参数:; z- h# [0 T) N" A' w4 {& Z
ServerName ' E& G: ~- H$ M" g4 A8 j( e
服务器名称在上一篇中已经介绍过,此处省略。 O5 U+ g4 S5 A: `0 G% u7 a
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。; Z$ o8 `3 z: l+ ^, d- |2 O8 m
下面是该命令使用的一个比较完整的例子:7 H" x' R1 Y1 z2 b; r
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:" g" p$ k. g6 U% c i9 b
dnscmd 172.16.12.1 /info 只使用命令而不使用参数. G6 V" J3 d4 r" o
输出的信息:; k6 t' P. f7 Z2 B9 d( y! M
DNS Server 172.16.12.1 Information:
) `3 E! `& s+ r0 F8 iC:\>dnscmd 172.16.12.1 /info, v! f3 y* C' o
Query result: 查询结果
7 x; G% E$ V; c: b2 V3 iServer info: 服务器信息- G* S3 p8 Y/ E' o; [" Y
ptr = 00074718 端口+ w. Q; V/ s& c/ k
server name = myserver.microsoft.com 服务器名称
" w& Z H4 `0 N* _6 W( { version = C2000005 版本4 r: g0 @8 c9 y* w0 S% n
DS container = c DS“容器”
2 R" J4 N9 v! m Configuration: 配置信息 这些信息的含义请参考有关资料7 \! I9 Z1 y! J1 x2 E X' ^2 C, {
dwLogLevel = 00000000
& n+ Q+ ?& p! ], z2 E5 p( X$ }6 V dwDebugLevel = 00000000' h; e2 \1 L, u6 l
dwRpcProtocol = FFFFFFFF* p! A1 M+ ~6 q2 @
dwNameCheckFlag = 000000020 o5 R6 V6 N b4 _
cAddressAnswerLimit = 0+ v- h* j! q0 H) i
dwRecursionRetry = 3
% R7 X+ p; j; j _ dwRecursionTimeout = 15. _* z+ ?' t0 B/ K1 d2 b
dwDsPollingInterval = 3006 p8 r4 |4 z! }0 `
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
' u/ I& A; ]' j4 o+ f! H g. CfBootMethod = 3
' v- g/ L3 R gfAdminConfigured = 1 ; k4 w/ H& e6 _1 b
fAllowUpdate = 1
% R( s( [& n, u- Z& \fDsAvailable = 1
! e: ~2 o9 W4 C ]fAutoReverseZones = 1 # J* j7 B* S, f; G) p7 a% o3 {6 r
fAutoCacheUpdate = 0
| R9 |7 x+ R# L) efSlave = 0 " b) P, }! p1 j/ x! }
fNoRecursion = 0 : A L. d, C" d9 n
fRoundRobin = 1
- Y( B0 a( C9 q' K! H7 v4 xfLocalNetPriority = 1 4 i2 F( w* `7 n! ~* B6 G
fStrictFileParsing = 0
. u1 i, Y1 L4 FfLooseWildcarding = 0
$ ?0 J, u; j+ u6 N# K x, F6 HfBindSecondaries = 1 # Z/ K. {. {. u9 P6 ?4 n
fWriteAuthorityNs = 0
! Y/ E/ K- |* w+ {8 \! ~+ ?+ EAging Configuration: . m: B% T) U% r8 L/ q0 H) J, P# V
ScavengingInterval = 0 / j! u, G- K' v5 i( u! b
DefaultAgingState = 0
8 h$ n8 D: f$ x" c- aDefaultRefreshInterval = 168 1 A1 K. C' o9 ~
DefaultNoRefreshInterval = 168 $ d8 y" r. X( d; i; ?0 `
ServerAddresses: - g* `: @% g* i+ U; \+ V
Addr Count = 1: p1 g# r) V5 }/ g% d- f3 C; S
Addr[0] => 172.16.12.1! U" } Z# _& @( O" |. q
ListenAddresses: J, f2 K% D9 T+ g
NULL IP Array.* s4 H4 i! x' U( i' e5 i
Forwarders:+ O4 u& X# p$ l
Addr Count = 1
, j6 F' p q* o2 q7 V Addr[0] => 172.16.4.3
2 D; g; t' ^/ e5 T forward timeout = 5
- W2 Y9 G! \8 o# N$ v; s9 \ slave = 0# k* n& M8 Q" z- d# m2 M# o
Command completed successfully.命令顺利执行完毕 1 R5 K" Z3 j1 y2 U+ ^
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
( l9 o, U9 p4 C" ^4 l6 N$ O 命令:/Config5 v0 v& Z6 M8 h& Y3 c4 q1 b2 G
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
; d( _* g* W% T
: `2 P* q! B) k 用法:
$ {! l( B9 O- V" i) o! W$ O6 B dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
" k2 b+ `, t2 S. r# G( q# E 参数
" f8 l5 |4 G+ K, p3 `) g: n- I0 A, ] ServerName :服务器名称,意义同上
5 Y3 o! x) h7 Y% X8 q4 }2 N! ]& M7 b ZoneName:3 X2 n% d7 ?" `: y! R2 z
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
) B" s* ~0 ?6 v; s- P K4 y6 N Property: 8 E" L% Z$ ^4 v4 x9 w
这个参数是属性。这里所说的属性有:
+ O2 |- }" p+ V9 O; P/ C" Y 与服务器有关的属性:例如:
/ @6 W8 X+ w4 G0 c; i3 T/EnableRegistryBoot
?7 V1 P' B$ [1 l/RpcProtocol
( X. a0 _7 h; P8 }/LogLevel1 Q- v% b$ _( S& n
/EventlogLevel 等等 (限于篇幅未能全部列出)! r' ]* `7 q; l' I
与Zone 有关的属性,例如:
) X# d; e; G& v; _# I, _$ x6 b+ Y /SecureSecondaries- B; l1 z) O5 a! N2 u. [
/AllowUpdate
7 j) F# j! G( v$ s' V /Aging
0 H7 `* E; t) N% n/ T. Q /RefreshInterval Value
R9 m6 S0 e! F5 X' Z /NoRefreshInterval Value7 m4 P- A. ~' W* R
属性值:
+ ^0 Q( G6 e [6 Y/ d 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。4 @8 ?. o, C3 T; C* h2 a& ~( D
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
- z) \% q6 [9 t0 ^7 a 命令: /Statistics! X. m% Q9 `# o; O
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
4 w, r- u1 ^% f& ]( e 用法:
" G$ p# T3 M8 T {2 q7 Q9 x dnscmd ServerName /Statistics [Filter|/Clear]
4 R# H* ~! p! D. G 参数:" z" a6 t6 i" L6 t( L
ServerName ( M* V: {- A+ i( l
服务器名称,含义同上。
+ b& O9 ^. `7 ^* G可选参数介绍:' x3 D# m A! G+ L1 r. V
共有两个参数,每次只能使用其中的一个。
$ b6 u2 ` K$ S) X& n& S 1.过滤(Filter)
5 T, N$ J k, F* v 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
/ x; ]- [! v( q) b可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ( q& ~# v. V1 O3 |( }7 ?9 e
00000001 -- Time# a2 }+ K0 T: |$ b2 o* y
00000002 -- Query
/ P ]+ o1 L/ J; Y% Z3 f" h 00000004 -- Query2
& c J6 F" L) u% A5 L* M! } 00000008 -- Recurse
/ C# V: h6 X, a5 ?2 M9 g, ^ 00000010 -- Master
$ u1 k, U' h8 Q" {! O1 w 00000020 -- Secondary2 y4 }2 F% m; P+ I+ ]
00000040 -- Wins4 h+ z$ p0 _: ~! r
00000100 -- Update
* N. n5 N" G: P+ ?1 x, Z# b 00000200 -- SkwanSec% X; x! _0 S: E& N
00000400 -- Ds/ O3 S" I% @7 s0 M) @0 E
00010000 -- Memory
( w6 Z2 p: X: O# l 00100000 -- PacketMem$ \2 }$ V0 M4 \" e* k/ Q
00040000 -- Dbase
4 m, K% m9 S1 {# i( z8 Y2 d 00080000 -- Records
' t& F( X" L `9 y* l/ X 00200000 -- NbstatMem) ?2 T( D3 E& T; {0 B+ f! k% |
2.清除 /Clear 3 p. B" W) ~; N1 ?* O/ W
这个参数用来清除统计信息。
9 V6 f. g/ V) F. x: ` 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。. \: c; e4 x6 N4 I
+ a5 Z: W8 w/ M- g4 } 0 D& @: y2 u5 `3 u
4 ^4 G: y, F ~' d) d5 d1 D |