本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
$ l( _% z1 P6 Y0 ^' u 命令: /Info
, L5 v' I. t% _" `% j 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。9 A2 |3 N. `8 q/ P
用法:
8 T9 I3 ]/ e1 b( w- t# s/ q dnscmd ServerName /Info [Property]
5 a- ?" I- `2 F' f2 l 参数:6 R) E3 f. b u9 e& E" M
ServerName " Q; d' U: z/ w8 q `8 r
服务器名称在上一篇中已经介绍过,此处省略。 1 u- Y/ K3 J6 L K$ A! x6 R
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。2 U3 ^ H3 l/ H2 h H( d Y6 [
下面是该命令使用的一个比较完整的例子:
: H" O& J! p- N9 Y+ W6 t9 [ 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
, l& S0 O; J+ U4 h3 ]dnscmd 172.16.12.1 /info 只使用命令而不使用参数3 o+ T! @1 P1 |# L
输出的信息:) G, e4 ]1 B6 Y- O. \: h% [
DNS Server 172.16.12.1 Information:
& y9 ], b% N! U! lC:\>dnscmd 172.16.12.1 /info
( b$ y A5 @! P7 Q! R+ z0 GQuery result: 查询结果
" O* k! {! l$ q- E0 UServer info: 服务器信息
! J/ I4 ~2 G- {2 [9 j+ n/ X6 T5 \! n( i ptr = 00074718 端口
* A9 B4 S- G3 ?7 x0 } server name = myserver.microsoft.com 服务器名称! D9 k+ U5 Z- k0 f4 W
version = C2000005 版本
7 w& ^ X: W! r" m, Q DS container = c DS“容器”
5 T4 {, x" Y: N- K' m; W Configuration: 配置信息 这些信息的含义请参考有关资料6 k8 W1 h, ?( @' O. k. |' s* d
dwLogLevel = 00000000
5 T8 K! z3 f T3 B, a: V# W9 } dwDebugLevel = 00000000
$ O( J2 t/ V9 X/ z" I$ b+ D" ^/ I, W dwRpcProtocol = FFFFFFFF
; @9 u+ `; d9 q# O* e7 e, O dwNameCheckFlag = 00000002; U X$ O/ k! A: W
cAddressAnswerLimit = 09 d6 Z$ q8 R3 C1 C
dwRecursionRetry = 3' L/ K+ W* H- \! P9 K
dwRecursionTimeout = 15' h$ `( h3 E0 W5 l' c: K
dwDsPollingInterval = 300% K; h3 ~$ L* l. P. w
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
$ C6 `+ s$ s, v: Q3 CfBootMethod = 3 " b9 |! H" I: }: A
fAdminConfigured = 1
5 \ }& z' E7 `- C4 u/ T8 ^fAllowUpdate = 1 1 a# \) n0 a& p& V- l# \
fDsAvailable = 1 # S) r3 [0 f5 m" B
fAutoReverseZones = 1
1 \+ C" |, t0 Y/ ~fAutoCacheUpdate = 0
9 N7 N* b3 {2 x" @" Y! mfSlave = 0 . h1 Z# a! r5 Q% I% {$ {2 d3 G
fNoRecursion = 0
& H4 I( g: t \fRoundRobin = 1
) Y4 u, x# q" n+ K) J; t5 zfLocalNetPriority = 1
$ t8 g8 C6 b3 q8 efStrictFileParsing = 0 5 R3 W5 _. g+ ?5 y! w
fLooseWildcarding = 0
/ ]7 E8 j! t# e6 EfBindSecondaries = 1 : M. v7 |# W1 C8 Q
fWriteAuthorityNs = 0 # J6 [% A9 U; O7 ?/ n3 V% _
Aging Configuration:
+ I9 M F0 y0 e9 E$ UScavengingInterval = 0 2 |9 V0 `: g k3 \
DefaultAgingState = 0
9 ~3 r8 c) O ]0 e" j/ i& YDefaultRefreshInterval = 168
% z/ l5 ?: }8 K' G) `DefaultNoRefreshInterval = 168
* R0 r/ H. P! O# R' Z ServerAddresses:
0 y7 o* S O: e4 u, E Addr Count = 1 u' e* s. |4 o e3 _8 `" N
Addr[0] => 172.16.12.1
% A! p; r# r5 s4 o9 Y! `( G; ^4 C: v ListenAddresses:
, u* B8 F/ g/ c. ` \ G NULL IP Array.: X3 o' o4 l. Y' D3 l( q
Forwarders:
7 L+ Y, c8 x2 Y* W& X- b6 P Addr Count = 1
# m1 u6 p* y* z7 d5 H Addr[0] => 172.16.4.37 W3 A; @/ R9 z z" h! t% r& B
forward timeout = 57 D4 \+ D& _5 [ r7 Q+ W
slave = 0
/ P% Q: q* K2 j7 @( sCommand completed successfully.命令顺利执行完毕 : e) c% j, p0 \- q5 v
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
, |- R$ {5 G. ?8 X3 @ 命令:/Config3 d' Y6 L( Z! |; v: f
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。1 S/ U; I. W- _4 t d. K
: ~3 Y! z) g3 q( @: V
用法: [( }. N2 e* Q I/ Y% x9 [
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value3 C! N, w! u# S9 j. V S
参数 ^$ O* g' s. B$ }, A
ServerName :服务器名称,意义同上 ' |4 i4 O6 Q) K* p
ZoneName:
! E+ Q! r; h! n; p/ T; j 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 }' u2 R, t# L8 F/ ?# G
Property:
P; E2 t7 `% p( T9 Y, e6 D U; W 这个参数是属性。这里所说的属性有:
4 S% G8 o. k5 l( P 与服务器有关的属性:例如:; X; U+ _1 @9 u4 `. d
/EnableRegistryBoot
' Y9 @; d/ l2 W1 C6 Y. e) n/RpcProtocol: t1 V: A" @$ w7 }6 @0 m
/LogLevel2 M3 L* ?! y( a4 N# q D: y# R
/EventlogLevel 等等 (限于篇幅未能全部列出)
! p8 C) u1 K( D5 `6 u9 X9 V与Zone 有关的属性,例如:
$ \. F2 `8 Z2 J7 @. c+ _- j7 S1 o /SecureSecondaries/ s" H" |' N$ j
/AllowUpdate
( n+ F2 q) L/ e /Aging5 p+ s1 H* L) n$ k0 ^ q
/RefreshInterval Value* Y& {9 {$ s2 m& l" R
/NoRefreshInterval Value
. {! f/ |; c5 I" M 属性值:
" b, v! y( C& [* j- M 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
8 O6 E! w" ^! k# P8 _' S$ {从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。( m. d# }6 F. K( Y. L: v
命令: /Statistics* N( I y& ?& w0 y% q
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。1 p# J5 V7 d$ n" o# L8 L6 q
用法:7 d: N! P; T0 Q; v# I
dnscmd ServerName /Statistics [Filter|/Clear]. c2 B1 K0 }; Y D4 U5 E
参数:: E8 M$ w' w0 y+ N1 B- Y
ServerName
- N9 B% d% J7 r1 I1 R2 b服务器名称,含义同上。. M. w: G; m% S u- G) W
可选参数介绍:) ?3 H! L* f8 x- _, I
共有两个参数,每次只能使用其中的一个。
0 X0 h& K0 t" U6 P1 X4 z 1.过滤(Filter)# M( Z' ?2 `' w" g1 C; e* z
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
1 Q( U8 s% n; {, U& F4 i可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
6 k# u4 i" X; |& b$ H8 d& f 00000001 -- Time2 k$ x9 c5 V- j
00000002 -- Query
0 ~& H! t5 n4 W, [% w. s, {2 u8 x 00000004 -- Query22 _& S* n* V X, O2 g
00000008 -- Recurse' e4 B. K, o" M8 k/ `9 Z. Q
00000010 -- Master
- a* N" _' I: X 00000020 -- Secondary
# m/ p( I/ t/ L5 H 00000040 -- Wins/ P' d- @+ X9 W
00000100 -- Update6 G% ~6 q, x8 R7 V; f: P
00000200 -- SkwanSec" _( m* n: u& X& P, {# {
00000400 -- Ds
0 o8 i+ D; s5 H 00010000 -- Memory% x' w7 N) ~, }) }9 J
00100000 -- PacketMem
+ x0 |! C$ M' X4 w 00040000 -- Dbase
( Y' P# F0 k5 Z9 c. Q, M 00080000 -- Records; f+ B& a1 M* j- g
00200000 -- NbstatMem4 g U' D% R% N, S: n2 x7 _7 }
2.清除 /Clear
' J. `' _% |% Y6 _ 这个参数用来清除统计信息。
' V0 r/ T2 g( Z6 | 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。0 N; D# L. a H4 T; k& T: _
5 {" a" A& M6 ^! @4 s( C3 Y
* J6 X/ N6 I) h' e- ~* S% a$ j, H, {; T& K' E& c, a7 m0 J, ^( J! S
|