本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。, o1 S; w' f9 J2 C
命令: /Info ( r- a$ C7 X" B/ _4 O5 D# v' l
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
, u/ `, j% J3 x; P7 B 用法:
2 _% v$ C; c( U+ D dnscmd ServerName /Info [Property]
" _: ^) l% Q1 B0 u5 D1 F9 w* v 参数:+ s2 z% U C1 Z/ d8 O( @
ServerName
) v8 i$ S# c6 O2 S8 _" i& W 服务器名称在上一篇中已经介绍过,此处省略。 * T4 l2 ]. u0 ]& ]1 Y
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。# y: Y! K; z6 P1 _
下面是该命令使用的一个比较完整的例子:
" F" d; u& o" Y; P$ G2 v 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:8 q) v+ j' I! G( X' D% {8 {+ H$ q
dnscmd 172.16.12.1 /info 只使用命令而不使用参数/ N; N8 U+ y2 Y
输出的信息:( A. f) c/ T) Y3 V6 t' R, j
DNS Server 172.16.12.1 Information:
. J7 ^1 u( Z1 b3 yC:\>dnscmd 172.16.12.1 /info0 D: ?, m2 {$ I: u; G
Query result: 查询结果0 r2 A9 \6 u/ D# [. l- I
Server info: 服务器信息
7 }: |9 w% D j- {* O ptr = 00074718 端口
) E8 j8 |" u7 D# I server name = myserver.microsoft.com 服务器名称2 O6 k* t- x7 `! M6 Z& P
version = C2000005 版本
8 p6 `) Q2 B1 I0 D2 d DS container = c DS“容器”# m. Z# b/ C$ p& C$ R" C q, L6 k
Configuration: 配置信息 这些信息的含义请参考有关资料
* b& Z2 n5 |- Q9 K. A' a8 \ dwLogLevel = 00000000/ P9 L8 D, ~. y
dwDebugLevel = 00000000
- U+ F0 t1 ~! n- o' ]4 t) W dwRpcProtocol = FFFFFFFF
' }1 m) G! a9 Q9 v- \# \ dwNameCheckFlag = 000000027 o! D) i ?. @- W' ?
cAddressAnswerLimit = 0
' J+ `1 w5 y" Y: K dwRecursionRetry = 3
& K' ?% ~1 i n+ l8 n( ~" f1 D dwRecursionTimeout = 15
6 }: Y* y* K \; N dwDsPollingInterval = 300) \# d2 R7 u0 F, v
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料! G9 r& s. y$ _; k- l/ S
fBootMethod = 3 ! V' ^& \' V- q: a" l7 l4 n5 |/ \
fAdminConfigured = 1 # W5 Y j- c2 S8 s, W5 i+ F
fAllowUpdate = 1
, X6 d$ O& v' D; JfDsAvailable = 1 + o- U8 I4 W! y$ Z, ^ U
fAutoReverseZones = 1 # Z7 f$ ~ q0 g4 D$ `9 i( ]: l
fAutoCacheUpdate = 0
# j9 c2 j8 d' ]. F- \. {fSlave = 0
. j! |1 ?# a; h% i* T( Y* C; N8 vfNoRecursion = 0 $ {- h7 U) Y8 \' I
fRoundRobin = 1
& P5 l3 |! B+ K9 hfLocalNetPriority = 1 # `" ]2 |$ C: _2 U/ ~# g" O
fStrictFileParsing = 0
+ g! Q( o* D5 \0 m1 Q9 y7 T/ bfLooseWildcarding = 0 , ^( |) b$ |+ ?% W
fBindSecondaries = 1
; C8 H, L$ C( }9 k6 W! m5 {) x' ]fWriteAuthorityNs = 0
, ?) J; J: ]- B- S% k3 EAging Configuration:
7 X$ e% u6 `, ]- RScavengingInterval = 0 ) J+ D; `, ]' h% S4 G7 }; Y9 O
DefaultAgingState = 0 8 c+ X2 Z$ D; ~, P" o+ Q/ K& m( [
DefaultRefreshInterval = 168
. p7 H% Q H% I- DDefaultNoRefreshInterval = 168 8 q; y& z$ }; X" ^5 u7 s
ServerAddresses:
4 b8 r! A; i7 L Addr Count = 1; Z" o* |, K+ E |* C
Addr[0] => 172.16.12.1
- U( X/ Z% u& c0 b* h `5 p ListenAddresses:
3 J0 V; m$ Q! y7 w* E& e/ J3 h; d NULL IP Array.
) ]1 e! H% ] V) \ Forwarders:
! C) s7 L9 b, S* |) ^: f Addr Count = 1
+ ]2 K. W" z3 @3 j! S Addr[0] => 172.16.4.3& O+ V. M$ X3 M6 K8 W8 M
forward timeout = 5 n$ q' S, F3 A; D( R& _
slave = 0
], X+ L3 o, P0 C; P% rCommand completed successfully.命令顺利执行完毕 ' m8 h: T k# A6 P0 Y
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
. b' |' ?0 O4 G3 [( j9 f/ Z 命令:/Config: k. N V9 O6 g4 n( w3 V
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
( U P7 d; ~) U$ q! A% a2 F6 `; s' O
用法:
- D" X, s' b3 x' P7 _3 Q dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
0 ^4 G4 c: y9 W- E$ s% q 参数
9 s$ s4 o! c4 ~ ServerName :服务器名称,意义同上
7 W/ ~# |4 t) K; Z2 u; X3 ~ ZoneName:
3 u7 n7 o* Y4 U: ~, S% k 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
" Z4 a. h! [3 a4 c Property: % F n5 {' ^% X! _4 x- _
这个参数是属性。这里所说的属性有:
5 o0 e2 R8 t9 r0 L* y 与服务器有关的属性:例如:6 i. s+ j6 h. i4 @
/EnableRegistryBoot# ]( L2 R$ r* b7 s' C) K# q( i( ]
/RpcProtocol
1 b; k0 ^- \9 W7 u- T5 I p/LogLevel( o' k/ k$ [9 z5 ~; a- n2 ]
/EventlogLevel 等等 (限于篇幅未能全部列出)
. d$ d1 [9 g2 m4 _与Zone 有关的属性,例如: _/ j" Y# F7 y2 u3 i3 F' n
/SecureSecondaries
3 F: r' M! V6 y4 K) X /AllowUpdate
, c6 s/ z- p, E5 Q+ K6 d1 A /Aging
2 z9 {7 u+ I1 E* m /RefreshInterval Value
# d$ e) Z+ o' z; D5 j# i /NoRefreshInterval Value$ a, i3 r: m1 W+ N
属性值:
3 k" H' Q' I% R/ a) s: a" R) X* [ 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
8 N( J5 @. D/ z" c从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
2 G, F0 Z- m) e6 c. s" d% ^+ ?0 K 命令: /Statistics( Y( N, w/ f& L9 k3 G
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。; D; e3 B6 w; J# @
用法:% @" L* P }. x- V
dnscmd ServerName /Statistics [Filter|/Clear]
: ^; @) `! V/ {4 `4 U 参数:
6 H9 }6 j! x4 s2 V5 }9 oServerName / O H# F6 p6 p$ R/ q! |
服务器名称,含义同上。
$ G8 g. |9 b+ s y2 |- @& X; _可选参数介绍:
8 L' I9 t/ @) O4 U共有两个参数,每次只能使用其中的一个。
8 p, O. q" `1 U 1.过滤(Filter)0 R5 X: s! a5 V: s' p1 a+ s
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。8 \. p) L0 b K! n! y+ h
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 2 Z# O; z" H. s1 c. M
00000001 -- Time
0 n* P8 q0 v$ y! o# X% J. L 00000002 -- Query- [ F) ]: P+ B, q: \: S9 N
00000004 -- Query2' Z; F- t0 Z9 r( I* R6 m- W4 n
00000008 -- Recurse
" u% t4 \: X \, t, `/ F3 C. r 00000010 -- Master9 ]% w J! o: J6 q5 X/ R
00000020 -- Secondary
/ [1 b" s4 h# P* T, A8 T) e n C 00000040 -- Wins$ { z) n8 W, e U2 p. @6 Q8 t
00000100 -- Update
9 D0 T4 o* |2 U) O# D$ B. H3 } 00000200 -- SkwanSec
: k6 Y, M" x( S8 F1 n. ~1 a 00000400 -- Ds
" W/ K5 t- X/ r* S) G 00010000 -- Memory
3 G( N! z8 M: M+ R2 c3 D( Q# r; i+ v) [ 00100000 -- PacketMem
9 h2 ]& C2 h H, s 00040000 -- Dbase7 A- y, `: A/ l5 ]4 Y
00080000 -- Records- e6 {2 ?# U* a( |( f) [0 N4 P1 w
00200000 -- NbstatMem8 n. h( F5 z' C1 C9 ^; `
2.清除 /Clear
% x! Y3 b7 x( S( ?0 } 这个参数用来清除统计信息。
# F5 E! a, x5 s8 }/ Y G 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。/ ?/ w' }. k; A
4 A; ?: N& J7 [, I x1 v
! f/ e5 B( I) C5 @: n3 G- ~0 `% M; Y- i6 K
|