本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。, W' D3 t; p8 v
命令: /Info
: {0 ]( U1 }" x4 ] 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
7 x0 }) M% T) W J \' ?/ {- \* R3 u 用法:5 y9 \6 L* L3 ?' I7 ^9 _& I
dnscmd ServerName /Info [Property] X3 p; R/ p e4 ~9 }9 L
参数:5 ^5 R9 f1 [' f; G0 H
ServerName ( s+ {8 C* V5 Z, R! e
服务器名称在上一篇中已经介绍过,此处省略。 # @: \' P W, b7 I$ l* Q+ ^* |
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
! P' ^/ O% m- j; _5 [4 O2 j 下面是该命令使用的一个比较完整的例子:
, [+ m" |) Q5 | 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:& y. d- X1 k/ \4 V7 c6 b
dnscmd 172.16.12.1 /info 只使用命令而不使用参数# |- K& i: |7 l1 L A
输出的信息:+ l7 d- P5 s( t6 [
DNS Server 172.16.12.1 Information:
7 d# {5 F: _" p8 n z. r( DC:\>dnscmd 172.16.12.1 /info( m+ h( k+ |% `
Query result: 查询结果
x W* l, ]/ C" ?Server info: 服务器信息
d# ?. M$ J2 g% h ptr = 00074718 端口
+ K5 o/ I( e* m% |4 M9 V, v server name = myserver.microsoft.com 服务器名称
2 x" c4 L+ C% s/ B; b version = C2000005 版本
2 `1 T1 f/ L6 C ` DS container = c DS“容器”
9 ~9 ]8 t: N/ Q) ~; O Configuration: 配置信息 这些信息的含义请参考有关资料
$ C7 I) _; e/ I! T) R. w, A: Z x dwLogLevel = 00000000
* v; L* s/ j' c8 Q dwDebugLevel = 00000000
3 C7 m6 p. `! r dwRpcProtocol = FFFFFFFF
& I1 Z+ h# N9 v; I' L- b dwNameCheckFlag = 00000002
, n2 q' n. t7 L- j+ B cAddressAnswerLimit = 0
/ w' {' z6 L) L2 |7 l dwRecursionRetry = 37 t, V8 X; O4 X- c
dwRecursionTimeout = 154 V3 p9 \# K+ P" o$ R
dwDsPollingInterval = 300
) w# w3 v, f/ k Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料4 _8 C: x& M1 c7 p+ X" u
fBootMethod = 3 / N+ [2 h. u: q' N
fAdminConfigured = 1 0 E0 C r4 N: e3 H% g; m) Q
fAllowUpdate = 1 4 N1 [" m* ]2 x/ y
fDsAvailable = 1 " @% m6 [ w% G5 [' V
fAutoReverseZones = 1
. Q( [" _- G9 p1 d& TfAutoCacheUpdate = 0
; L# n; t {, pfSlave = 0 ; C9 y0 q( d# p' P, {4 m& G
fNoRecursion = 0
5 b" S8 Y& s1 x2 qfRoundRobin = 1 + I8 @. }6 s, y4 H/ S% v+ ]
fLocalNetPriority = 1 0 H3 Q9 `( D9 t. m) h
fStrictFileParsing = 0 2 q& n+ O' J* D0 m. z
fLooseWildcarding = 0
0 @6 [, [) i6 q3 K* W0 {" B7 r" TfBindSecondaries = 1 1 [& n: Z/ I7 h O$ `' _7 s: m
fWriteAuthorityNs = 0 / t+ J* {1 y! e8 H% o
Aging Configuration: 8 d+ x* L& f, e# b3 Z
ScavengingInterval = 0 0 v$ {) U# ]. U2 T* E
DefaultAgingState = 0 5 u- Y4 S3 B/ `# Q
DefaultRefreshInterval = 168 + a& t% i* x$ o `7 t, u4 _
DefaultNoRefreshInterval = 168
: [3 k [1 Q# v7 ] ServerAddresses:
1 v3 |2 I$ |. k! q Addr Count = 1
7 N. {4 G( ~/ p2 G) T3 f/ H# L Addr[0] => 172.16.12.1
( `+ [- K( r" _/ Q+ w; ~4 {: K ListenAddresses:
) Y/ N8 X7 _. ?9 ~4 ] NULL IP Array.7 s$ D' \# E T* p+ M% X, {
Forwarders:
. Z/ l( U, Z& n: N) I: ]& x: Q7 |$ F Addr Count = 1
+ `$ S8 A5 F, m9 @- } Addr[0] => 172.16.4.35 s q S9 ~- s# a" k; f
forward timeout = 5/ k) u5 B' u. w- q
slave = 08 P2 Q. X! N; U! a/ a
Command completed successfully.命令顺利执行完毕 + B3 o! v7 H3 N, f
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ! w, Y0 ]6 K. A6 h+ ~( a! q
命令:/Config
9 n5 S* |% W: _) ~$ A+ b 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。2 u6 g2 S4 D: I0 Q# R b
$ F U) s1 p+ |% j& v" F# U 用法:1 h- N# I% }& h0 t2 B
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value1 H4 F1 }8 L% V' [
参数
9 A' M- f4 y! q1 x ServerName :服务器名称,意义同上
' Z9 U$ q% }' q* @; N# Y ZoneName:
1 ?: r+ u. ^8 n 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 0 W2 P9 w$ n' h4 ^' f3 Z! X
Property: $ d/ I/ j# d7 T/ k
这个参数是属性。这里所说的属性有:
% g3 @/ X+ I! h% r 与服务器有关的属性:例如:
: X& K! u# }" W! g) J9 w/EnableRegistryBoot
# J0 X) u9 B+ B5 }0 m/RpcProtocol3 K, n- u0 D7 m0 B9 J
/LogLevel8 I/ R# k. t! @& A) k0 ]
/EventlogLevel 等等 (限于篇幅未能全部列出)
$ \$ z1 W4 e2 F8 a7 N- R与Zone 有关的属性,例如:& ]5 Y: [$ l# d' u; U! ^
/SecureSecondaries( l7 L$ J$ D1 W4 x- x) F3 g
/AllowUpdate
8 F) C \# {9 l, _ /Aging% \0 L/ }; ]* O' K6 T1 T& V
/RefreshInterval Value
( {: r- S" }! G0 D* r /NoRefreshInterval Value
# O; ]9 g0 d- N! a 属性值:
Y1 d S* y$ o7 j' q1 U4 W8 e 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
% v$ S9 g S$ Y$ b2 ?) V- U3 A从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
7 ~# q; X: u9 l" a6 P, C2 d2 z 命令: /Statistics+ @5 ~- c, E) M$ V
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。" c8 s6 h; F3 s+ ~
用法:6 {8 L6 t5 p3 n& h& q& D. q* H( n
dnscmd ServerName /Statistics [Filter|/Clear]
+ y" R8 Y; p+ g, V7 }! v) u 参数:
, g( P0 ~2 y1 RServerName
* I* O( {/ A- k6 J服务器名称,含义同上。
; n% C% }2 X& o4 j$ t( o可选参数介绍:
$ h# r0 ~, Z, P/ @$ J共有两个参数,每次只能使用其中的一个。# C; d' O! S5 [8 }( L7 z
1.过滤(Filter)) _6 H" l' E) n) s- [* V
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。" V/ e+ l8 E! c* t0 u: ~) O
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ' {( ^. X( Q8 e0 B+ t6 d
00000001 -- Time
' _% m' F" M7 L 00000002 -- Query( B2 S0 W% N; A1 W* i
00000004 -- Query2* b" J, ?: Y0 ]* ~
00000008 -- Recurse
6 H* Z# l7 L( k8 s: O 00000010 -- Master
% F3 U( T. E7 i$ z 00000020 -- Secondary# O, e& h+ _0 u9 C! f
00000040 -- Wins7 [8 r3 ?- I9 ~$ R. n
00000100 -- Update
9 H* J- c' Q" Q) [0 u3 w- Z 00000200 -- SkwanSec
0 [3 x2 D" C3 v 00000400 -- Ds. u* |. K, P- c5 E& ?4 o
00010000 -- Memory
0 U6 V; @6 ?9 | 00100000 -- PacketMem
' h0 {7 c2 G4 C" ?& V 00040000 -- Dbase U$ d; C0 I: c5 t! D
00080000 -- Records
3 D, p* N/ k! p' Q; V2 {& { j 00200000 -- NbstatMem0 c( D X* R9 T; k5 n" J; G1 f8 ~
2.清除 /Clear
4 H: M3 m5 E# X# S. e 这个参数用来清除统计信息。
" \) t) N2 C0 p: F# Y% L# W 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。" B5 m* p5 f' ?% }" t0 X/ G9 q
$ e7 I+ J" T4 W/ {1 @
8 ^' o! k$ b* h5 F( d( e
3 N' c& `3 q; @ V1 J% @/ |. ~6 J |