本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。6 J, N9 t! p) G$ F+ k8 d( \
命令: /Info
3 h5 r: |( X* `, G" r, S 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
& a0 q% { d9 _; o/ p% U 用法: ~4 E: Y' B5 _- b ]2 O/ B
dnscmd ServerName /Info [Property] : G1 i; a7 W& p
参数:
0 R/ [$ _' S- E8 d; L9 A ServerName 9 ~/ C4 j! I' d) l
服务器名称在上一篇中已经介绍过,此处省略。
+ z% T5 B7 {( a: ^* e1 Q [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
/ n8 _/ ~2 \- U8 ~1 b 下面是该命令使用的一个比较完整的例子:0 _4 \7 T( ~. `2 c) T" A/ t3 W) _
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
, U) X, A8 g/ T. K) o! udnscmd 172.16.12.1 /info 只使用命令而不使用参数+ G$ a* ^6 h/ H7 n# \' ~
输出的信息:: L, N e( p3 N- ?
DNS Server 172.16.12.1 Information:2 Y9 K( a+ W F4 V9 w" r
C:\>dnscmd 172.16.12.1 /info8 }* u3 t9 k. B2 x. ]! ]# D
Query result: 查询结果% l1 t2 g$ K* `% e
Server info: 服务器信息" g7 Q, Z7 l; x5 `" g9 V, {
ptr = 00074718 端口
c4 k6 j/ B7 q$ A' N9 g server name = myserver.microsoft.com 服务器名称% }2 {. s) o. R8 D- x
version = C2000005 版本- \( x" w" \8 Y, T7 d$ }5 p [ T
DS container = c DS“容器”# Q) {. Y" ~* E; R
Configuration: 配置信息 这些信息的含义请参考有关资料: {8 r- n9 t+ G0 L5 F
dwLogLevel = 00000000( r4 e, s) ^# x" v1 X; @4 q0 |
dwDebugLevel = 00000000
! ^! U4 ?: J4 B( a" \ dwRpcProtocol = FFFFFFFF
# \) `5 s; k& `; K dwNameCheckFlag = 00000002
/ k- C0 W2 b; V) e% q cAddressAnswerLimit = 0" T: d) e. ]3 y" i+ Z3 Y( h2 x) e9 \
dwRecursionRetry = 3
4 B" o% w: N) W& f& q, {2 n1 l$ [) s dwRecursionTimeout = 158 J3 p% p6 N1 [* Q% t
dwDsPollingInterval = 300
" m" {- A( M9 w0 M Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料! A5 z2 Y& g% T9 E9 G% [
fBootMethod = 3 ( t* l Y; ^4 K# ? @1 ^+ ~" g
fAdminConfigured = 1 9 ^* R0 ~( c+ _% g) `
fAllowUpdate = 1 1 S! T; O. ?! @; y
fDsAvailable = 1 # u( L0 o% o/ V } b
fAutoReverseZones = 1 . I9 l X* d3 p4 Q
fAutoCacheUpdate = 0 0 @, C# K$ K- f; m1 h* b$ O& g
fSlave = 0 + g; [: M- K$ O( h
fNoRecursion = 0 ' `- X3 T! y* |! u- L: H3 _: ?
fRoundRobin = 1
- p! ^, Z! B$ T b0 tfLocalNetPriority = 1
8 S; l3 M. O9 {) o' FfStrictFileParsing = 0
6 d1 T1 M# e: rfLooseWildcarding = 0 . V# z$ B" F( f& K/ e! B
fBindSecondaries = 1 ! g: e, b+ E' p. U) G- j3 W' C3 [
fWriteAuthorityNs = 0 & `% t3 I* I* W7 U: Q
Aging Configuration: * A9 x+ \( H+ s
ScavengingInterval = 0 * a) u. {4 S9 v2 Q# l2 `" h! ]
DefaultAgingState = 0 6 n$ K/ ]5 s# R T
DefaultRefreshInterval = 168
) _ g0 J5 M9 `- [2 V, e! ]( v+ `* D1 P1 BDefaultNoRefreshInterval = 168
. f: }5 ~* O# y+ y9 J2 ` c ServerAddresses:
! N/ x) X/ {; S" c% s, Y% y Addr Count = 1
2 C6 i- a9 s! b) u1 \( H Addr[0] => 172.16.12.1$ {# a+ W8 b, {% _4 r' J
ListenAddresses:; V. j) X' {0 R0 J9 W2 \
NULL IP Array.5 y- l3 i( C; d8 m: J
Forwarders:
- n, q0 {# Y; |# p/ u& a" R, j Addr Count = 1
2 J" Q5 l' b y3 R1 N2 s Addr[0] => 172.16.4.3+ M S9 W/ D- P" ?* {6 _6 _* M
forward timeout = 5) u! C0 K& y4 L# ~4 {' v# i
slave = 0
) D( ^ r! `% C+ H7 `' N! DCommand completed successfully.命令顺利执行完毕
; P) h) N* T3 `6 C9 F+ V; G2 J, g% R 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
5 `6 F" @$ G" r( R7 U 命令:/Config
/ B4 w8 B5 f, h7 O0 ~ 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。, k( E/ M& Y8 x: g
, i" X/ H7 d6 m! i
用法:' W y( w0 I" X! [' E$ d
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value% E7 H$ p o+ N1 j- X+ l# R
参数% y2 ]- b5 P# t9 B
ServerName :服务器名称,意义同上
7 f& a" y% t+ V ZoneName:6 o2 s! d3 v3 ~$ v8 q
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 / ^3 [/ p1 z1 q# ]
Property:
" A) B% D" y& f2 F$ g) ^ 这个参数是属性。这里所说的属性有:, @4 L- D; e% j9 ?
与服务器有关的属性:例如:
$ Y0 S* W" j9 D$ I$ ~# n/EnableRegistryBoot
6 }1 G+ G2 m* B3 C1 f' O; {4 {/RpcProtocol
# p ?9 d, F2 g# X& t8 v% x/LogLevel
: O5 ~' o; z3 X! X- O: M0 t& x" Z; C/EventlogLevel 等等 (限于篇幅未能全部列出)
- D* T3 m7 G+ ^: Z" {4 t1 L与Zone 有关的属性,例如:
$ B, t9 k7 ~# z4 l, J/ O4 V$ L5 a /SecureSecondaries
* Y3 ^' O5 Y% g4 e5 ]2 d: n6 h /AllowUpdate
1 n5 T/ W5 j E9 [2 \% ~3 x2 S /Aging* ]) I( G4 P \5 h0 w/ V5 R
/RefreshInterval Value
& B0 {" A, P- _+ c9 V /NoRefreshInterval Value
7 Q0 b! d. J5 s& Q 属性值:3 w% Y% _+ n( g G' p
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
: H9 P+ w, i. ~从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。# }# ^. T$ y9 x0 n
命令: /Statistics+ m0 ~$ n0 Y6 t) u' [
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
+ g. H8 z$ ]2 Z- @6 n* i 用法:
( Q& _+ o* F: v$ q7 O/ ]3 ] dnscmd ServerName /Statistics [Filter|/Clear]
& l" X% v& Q- N Q, d 参数:
: c* b$ C O1 k+ A- ^ServerName " v4 x( Y9 K) a3 L7 D6 z; S
服务器名称,含义同上。
, C2 v% ]3 _5 A0 R& q可选参数介绍:
, g# T$ Q6 @$ J& P6 j; f共有两个参数,每次只能使用其中的一个。; X; ?8 {2 @5 K" ]& m
1.过滤(Filter)
5 e5 Z6 h0 }& w7 o 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
, y, y) v* C$ x9 ^3 I可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
9 d) t, {2 Y$ I5 |: H( K2 u% P7 U: Q 00000001 -- Time
, \3 \* o' \# E2 O% v' x0 A 00000002 -- Query
2 i: j+ m- L' l. X0 h/ P 00000004 -- Query2! z( p- `7 I; s# R; x0 Z$ H
00000008 -- Recurse. H! L2 }3 W, t( W( {$ h9 H6 w
00000010 -- Master
% Z1 F- t4 y( J& i! e 00000020 -- Secondary
0 a% i& t" z3 p8 V5 R' w3 C 00000040 -- Wins
" j4 F0 _& t# F# n: h 00000100 -- Update6 E) t: V' p) B1 X. T8 D" g3 x
00000200 -- SkwanSec
4 ]% Y* z9 W0 z& g# j8 _, U 00000400 -- Ds" X+ a' d$ b9 D
00010000 -- Memory( ?) ~4 b/ u8 p! d' Y
00100000 -- PacketMem
& O$ s! C+ K7 R: i 00040000 -- Dbase# T+ v, j2 K3 k) K1 b& Y
00080000 -- Records
0 Z- z. N- m) U# u y 00200000 -- NbstatMem
7 _+ D6 p! H9 z% }2 S1 R 2.清除 /Clear
. w, Z1 P0 B2 w3 R+ k 这个参数用来清除统计信息。
$ m/ u! G& \1 u- f 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
2 u; j. y2 f0 R4 V2 }, Z
! o4 M8 e2 ^ j4 |+ Q* F1 K8 j : y9 {! y `5 c9 Y
[6 {3 D0 U2 i0 y: J) p: {
|