本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
1 _2 n M4 _2 J) C 命令: /Info 4 W- D+ i4 _& x6 M* b
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。" V0 _/ c7 E0 \7 V- C$ Y. t) r( F4 P
用法:
& B4 F0 w, V2 }9 E6 {" c3 E dnscmd ServerName /Info [Property] " E# e+ t7 ?1 O% U) I; v
参数:
5 j. k4 ~4 E8 |. I; V- ]' j( W, G ServerName ) C( q0 D4 w6 U5 @ ~( v; [
服务器名称在上一篇中已经介绍过,此处省略。 - Q. j2 C; z! y* i, e) h
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。8 j/ N8 ~' x0 W T
下面是该命令使用的一个比较完整的例子:7 ~% f+ c* O f+ t
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
( b% k0 U, \4 r) X3 Udnscmd 172.16.12.1 /info 只使用命令而不使用参数
* K! I# Z* |4 q3 p* z输出的信息:8 v" x' ]/ y4 O: T6 ` v6 C& I8 {
DNS Server 172.16.12.1 Information:
: M7 L1 V, j4 e, w1 Z, AC:\>dnscmd 172.16.12.1 /info
8 I7 T+ `% T: J& k6 {5 xQuery result: 查询结果
9 P! @/ I4 [0 s7 ]! o. KServer info: 服务器信息
, k- R: p# [! a. z ptr = 00074718 端口
0 E# h6 }- r1 a2 \+ K server name = myserver.microsoft.com 服务器名称! t: U# I: W, S; r/ Y
version = C2000005 版本
( Y( i% K9 O8 r) W DS container = c DS“容器”- `, g; |5 L: b+ z1 `6 [
Configuration: 配置信息 这些信息的含义请参考有关资料
6 J. S; g# T3 {$ B3 H i' T, H" R- R dwLogLevel = 00000000
: I6 s) _+ V$ p" f; { dwDebugLevel = 00000000
$ a: E9 q5 Y2 X: x& x) |3 u dwRpcProtocol = FFFFFFFF
" z3 \; \! ?7 k7 N) ^# ~9 V5 S4 ~' Q& P; M dwNameCheckFlag = 00000002
. q% E5 [. V! A" s/ O cAddressAnswerLimit = 0
; @% A! z6 F, t- h% N# z dwRecursionRetry = 3
. C6 F ?6 E5 `$ g4 O. _3 B dwRecursionTimeout = 150 S! V( U; f) P' o- z" ?. @
dwDsPollingInterval = 300
# r6 t3 v+ _6 g, P- a) ^ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料7 r+ @" t* R! v3 }% I) {' Y
fBootMethod = 3
. A7 B+ H! L, y9 Q1 WfAdminConfigured = 1
% Q9 c: o1 {* z p9 u1 yfAllowUpdate = 1
. z& W% c9 M, L5 A' ^+ ^fDsAvailable = 1 9 h- b; }2 T9 V
fAutoReverseZones = 1 1 r3 L* t3 j) [" Y$ R: d5 [
fAutoCacheUpdate = 0 1 s1 B% B0 I, ]' D5 k& u) A" p
fSlave = 0
. x' w/ R8 y3 M: R$ L* H9 ffNoRecursion = 0
! p/ F6 Q6 }4 P% @ [3 tfRoundRobin = 1
; A) W3 V- A" @4 c4 A% F: V6 P0 lfLocalNetPriority = 1
: g5 ~# E! ]5 N; L. I, P2 ]+ BfStrictFileParsing = 0
% ^1 r% [' F6 J/ ]2 l+ kfLooseWildcarding = 0
/ p5 P3 V* u* b) O5 R( UfBindSecondaries = 1 : c2 [& M& F% c; N7 S" p2 k+ P
fWriteAuthorityNs = 0
2 i1 G! k5 p" HAging Configuration: # [* v! z& m; C' i+ N
ScavengingInterval = 0
3 @! P: s7 m5 g. w( X: ]9 K% ZDefaultAgingState = 0
" @: U! ?% ^: b/ X; PDefaultRefreshInterval = 168 + f- F- @: T( B
DefaultNoRefreshInterval = 168
8 P9 O; Z1 L/ e. [ ServerAddresses:
; I/ ~! g p; g- y7 x9 } Addr Count = 1
$ L5 Y5 T0 X5 U Addr[0] => 172.16.12.1' g/ _6 I* l1 O; D
ListenAddresses:- L# m. ~2 _. @: ^# w4 {
NULL IP Array.
' ~( K% m6 b# [% a" _4 U5 h Forwarders:) K- m0 y8 P% ?. u& j# i. y2 i
Addr Count = 1
+ e# w. b+ ]2 T; D4 n Addr[0] => 172.16.4.3
6 r8 U( E1 J1 v: W- `- A; E! e forward timeout = 5
7 b- p9 u, w# w1 p1 \$ M4 I8 G slave = 0
: ?& P) y c ?0 ~Command completed successfully.命令顺利执行完毕 % p- \; f t4 ~, y5 H( C2 H5 M+ Q
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ' p8 u& `4 c3 ]
命令:/Config
1 S% k5 L+ d# D 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。8 n9 M# k; f2 s. r
- p! l1 Y# n, Q3 G( S! @8 F
用法:
! s0 \0 d8 J: j' o+ T dnscmd ServerName /Config [ZoneName |..AllZones] Property Value) s& \; y q' ^( I
参数( i- |, Y9 C# R; ^
ServerName :服务器名称,意义同上
g, e/ K; A- Z& ] ZoneName:5 b% N6 u( p( Q- p
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 # b( K c6 T5 d
Property: 3 p6 O3 R* T3 ~5 A/ C. D$ T, [
这个参数是属性。这里所说的属性有:
2 }6 b9 Z9 S! }0 l 与服务器有关的属性:例如:& q2 N) p; e( ^7 v4 ~; `
/EnableRegistryBoot: c M; v, B3 g3 b1 B! k0 V
/RpcProtocol/ v1 s) J# w& X, T* A: [. a3 d' w
/LogLevel- b1 a: g, ~& f$ ~; W- S0 @9 s8 F: F, V
/EventlogLevel 等等 (限于篇幅未能全部列出)& U. \; r8 q; A' k8 L1 u
与Zone 有关的属性,例如:9 i) T, r' E2 ^% L, X9 C8 S
/SecureSecondaries1 ~2 o% E9 w! x% W& a0 m' P
/AllowUpdate3 i' ~ ?+ u$ W/ g
/Aging' p) H1 T. P- ?. |7 r3 D! o
/RefreshInterval Value; \% J& n$ K! e) u+ a1 }
/NoRefreshInterval Value% H" S# O3 e- j. Z+ `2 c' x1 I( n
属性值:$ f* L U* o+ v, I z' M
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。- @5 M- \- D' E `3 p
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。; a: X: x$ X; @
命令: /Statistics4 Z2 O: M" q# h0 z0 U
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
$ O9 \7 g c# t( B6 d$ F' M 用法:9 w- E) X# v' a
dnscmd ServerName /Statistics [Filter|/Clear]4 v2 W( J9 U- Q
参数:- Z9 b) O7 w5 F& C% Z8 F
ServerName 5 c8 F& |; w' p+ b1 |/ w) ^
服务器名称,含义同上。3 _5 h, f: w, D: M* Z. K. g
可选参数介绍:7 a; Q) n2 V* _/ O: g* l3 Z
共有两个参数,每次只能使用其中的一个。+ s' t6 K. F9 J, B) a
1.过滤(Filter)
) f; L( f; \& m, Q4 n. Q5 f 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
# P/ G8 Q* \$ n L) S可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 0 U. L, c9 {3 j! i) p1 p4 @
00000001 -- Time
* X8 Y* Z6 l# G y5 M 00000002 -- Query% M% q C# n" c4 G! D
00000004 -- Query2
- k. u( \% Y+ P' W( X6 n 00000008 -- Recurse, R" t8 M1 P. t/ v1 S
00000010 -- Master, H% c" ]% x! D
00000020 -- Secondary
! b2 Z6 W0 Q5 J% Z 00000040 -- Wins
0 p1 f% q7 k2 _3 B! R 00000100 -- Update& l# F. I9 s0 t
00000200 -- SkwanSec
6 Y/ z! X9 o% s$ k" p8 a' t7 L$ e 00000400 -- Ds. e8 C1 y# e8 ?4 k# @' }1 E* L
00010000 -- Memory
+ w' w# N" }6 z: q8 u6 _ 00100000 -- PacketMem j# t! I' D- w; d* o3 Q! y# f
00040000 -- Dbase
" s6 R/ Q6 ^* j8 y7 i: ]4 b 00080000 -- Records
C6 r' |6 U% T/ D6 q2 L 00200000 -- NbstatMem5 ?) m% ^8 I6 {+ S! M" y$ m
2.清除 /Clear
5 U. r2 ^5 `/ Y 这个参数用来清除统计信息。
j) V& ]: Y3 I0 ^$ a4 h 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。: q y8 a2 W, r7 q/ ^; P
0 e; R" \) [0 h
: J( |/ h) r, Q6 y# _- r5 q4 W' P9 \1 m7 l- L0 b' T# W
|