本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
+ c6 F: k4 ?( y0 f 命令: /Info
, A7 t+ y$ v. G0 m8 s4 F 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。% _+ Y5 N* H8 F* O T
用法:
& H2 l8 M: g+ Z Q3 p* I! W* D dnscmd ServerName /Info [Property]
$ y3 X+ a* [1 v& s/ j, N 参数:9 D4 n, I: Z& C- q
ServerName 4 {- B) I& W; T' Q5 m& S) S: t
服务器名称在上一篇中已经介绍过,此处省略。 ) v. p* r l& o0 G K3 i) w
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。$ J& B8 d2 `+ k& h, Q
下面是该命令使用的一个比较完整的例子:
$ l$ w5 H6 Q& B1 z5 V5 Y6 [ 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
W0 x' z( E8 m4 _; I- |dnscmd 172.16.12.1 /info 只使用命令而不使用参数5 ^' V( q" V; e4 @! q
输出的信息:7 J- ]* s( {% l4 J L# T/ Z* d
DNS Server 172.16.12.1 Information:
4 h. \# g" u( n: SC:\>dnscmd 172.16.12.1 /info
) T. V4 F. c6 L1 |4 o+ `Query result: 查询结果6 p4 H: ^/ r( Y' U/ ]% n( x0 L
Server info: 服务器信息9 g% x9 p4 p+ B. a; [
ptr = 00074718 端口
# v- \0 z2 Q8 M server name = myserver.microsoft.com 服务器名称
: `; G% ]$ t0 A5 `8 K1 l8 p version = C2000005 版本
" L9 R: }7 `0 s m, Y DS container = c DS“容器”4 B: G! s5 c+ X9 _8 V1 i
Configuration: 配置信息 这些信息的含义请参考有关资料" S' Q6 h! l+ ?9 \5 I
dwLogLevel = 000000009 u: \) T& ]) B4 g
dwDebugLevel = 00000000
% i0 i: F1 d, a" y# y, Y dwRpcProtocol = FFFFFFFF7 ?" N/ _& z. ?7 ^) I
dwNameCheckFlag = 00000002
$ f+ y( V! p) a cAddressAnswerLimit = 0( A+ K1 ~" n8 G+ g
dwRecursionRetry = 3
' f" u8 V9 _3 U- m! P dwRecursionTimeout = 15# `; \) H0 U) U; r
dwDsPollingInterval = 300
+ L7 ]$ G3 X: r( M. R$ \ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料! t: v8 v$ ]* P9 X7 x8 t1 }
fBootMethod = 3
: Q! n/ ~' q3 r& \3 A, L5 z; gfAdminConfigured = 1 % T/ V2 |( z$ C& u( E9 [
fAllowUpdate = 1
1 [1 @. X+ l- y$ e# |; PfDsAvailable = 1 ( e& y9 y. `# ^9 [
fAutoReverseZones = 1 ) ?4 d& t8 m$ w q
fAutoCacheUpdate = 0 - w0 t' E# N9 v' a8 Z
fSlave = 0
. X9 I; L3 d; nfNoRecursion = 0
" }( L1 V' m: _fRoundRobin = 1 ; P' y9 I4 `" u/ J: u5 _
fLocalNetPriority = 1 , K9 b2 m; r3 b# f2 F N
fStrictFileParsing = 0 8 v) V" q _9 @1 k8 {- D( j' V
fLooseWildcarding = 0 ! Q2 F5 e- U E
fBindSecondaries = 1
: \$ V& L+ g" z% FfWriteAuthorityNs = 0
/ L: ^8 }- q6 ?3 v8 wAging Configuration:
( {1 w1 F8 p. m3 W. RScavengingInterval = 0 3 Y# Z( c- @: N0 l4 `: u! y
DefaultAgingState = 0
4 v( Y& K* c5 ?( u: X NDefaultRefreshInterval = 168 $ O7 V5 K* |; |- s2 e9 _( \
DefaultNoRefreshInterval = 168 ! p, x# W7 v2 Q' r( Y
ServerAddresses:
1 X! e; s! }$ [* D: q Addr Count = 1
# X1 L0 J$ r( [" |3 V Addr[0] => 172.16.12.1% D6 i2 z& G) ~" B
ListenAddresses:& u) a# P7 z& ?" o1 O
NULL IP Array.
9 i" Y# o( F) n1 y( z3 h) I Forwarders:+ ~+ h2 C3 j8 ]* T! S( p! e
Addr Count = 1' [- [+ O4 N( P7 g! Y; \
Addr[0] => 172.16.4.3
. B8 t' x) G4 V forward timeout = 5- z2 i; ^6 K6 n" y8 ^
slave = 0
9 t. a9 j3 R3 U, H" [ |Command completed successfully.命令顺利执行完毕
( a, X, r8 C8 m* l8 |, y+ y2 X) W 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
) O% n# ^! n$ d( X1 G' r+ m) y: ^ 命令:/Config
; Y0 \$ ~ r: V- L4 K; o; r 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
7 q& b9 ? a7 o5 Z8 }9 }: G0 L: z5 v& ~6 c4 V
用法:
" g& V" D- v; M8 a# w) ?" K dnscmd ServerName /Config [ZoneName |..AllZones] Property Value7 f( H8 U0 F/ O; p
参数
8 G$ t; V/ i# K& c" l ServerName :服务器名称,意义同上
( _1 M0 ^ R7 H7 \2 x6 H0 M ZoneName:
+ I4 c" n ?' o; f 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 . e* j4 N- F# H
Property: % N. O3 K) u2 v+ O" ?; \$ w9 |# S" {
这个参数是属性。这里所说的属性有:9 W+ s, x d, L$ o) V" ?$ b
与服务器有关的属性:例如:8 o& `0 J+ c1 @9 a+ ?4 k6 a
/EnableRegistryBoot
D% h- M" B/ J3 j+ f% q& V/RpcProtocol& z) j) K) ` n; I" ]" R5 P! `3 n
/LogLevel
# }+ j. ~' h7 G$ {( `0 ^/EventlogLevel 等等 (限于篇幅未能全部列出): u0 M3 c# j- c' u9 H( I
与Zone 有关的属性,例如:2 W4 ]3 Y, C W& W9 Z
/SecureSecondaries' D* L# i4 O% n) P) m) `
/AllowUpdate* R& { Z' U1 C$ U+ I
/Aging W+ q" M$ h. |9 q( u- h
/RefreshInterval Value
' }/ p6 h0 N9 d /NoRefreshInterval Value
! ^/ v/ B' h# d& [ 属性值: t! `. I* I+ i8 _/ z$ t' Q- J
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。4 h* c, z h# J( F7 V$ ]8 q+ a
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。# `5 n# ~8 L4 z
命令: /Statistics
( ?2 Y& a( L( ~, P( |( k 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。% \" G9 a2 e7 ]2 J3 N- n5 R9 c
用法:" z* n! B# G$ d: x* ?
dnscmd ServerName /Statistics [Filter|/Clear]) Y8 {9 w' I' _1 _1 A- j
参数:
K, P+ P* B6 i0 \- Y+ ]ServerName
/ l, M" e) Z' N. }) i& _服务器名称,含义同上。
+ K7 C5 D% R `可选参数介绍:
; }. O- h8 i( @; h( ~共有两个参数,每次只能使用其中的一个。
+ h0 `3 V1 h$ L2 @ X 1.过滤(Filter)/ H6 u# \, U# W; E7 P* x9 t0 c
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
/ p2 m r0 `1 W; k$ l2 \可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ; x/ U z. ]! I" z
00000001 -- Time) G O! S: q$ U% Z6 r& u
00000002 -- Query* B" C" x5 K2 Y( n |7 O
00000004 -- Query2
2 d. R7 p( k* c1 n- C, T0 Y/ h3 l 00000008 -- Recurse( }) h8 [ E) `$ n( z0 h
00000010 -- Master
5 J" f9 k3 {! L, _; k6 n& K 00000020 -- Secondary# J3 Q0 S# R7 ^+ c w! e, ?
00000040 -- Wins
1 v( ^1 _3 C8 w4 a& { 00000100 -- Update
, i' G/ h9 `5 u- Y8 Y0 B, L 00000200 -- SkwanSec: a2 b( M" J n- j
00000400 -- Ds4 L9 T( L7 T" k6 }% s: }+ l
00010000 -- Memory
8 U3 c# L$ b% T Q- @ 00100000 -- PacketMem
; j2 s2 l/ R0 [9 j' o 00040000 -- Dbase
( K0 y! X5 C J& e+ u 00080000 -- Records+ k+ l- |9 L3 k, w, k2 U, O2 M
00200000 -- NbstatMem
& Z& V! V- c! z+ m% d: V4 y 2.清除 /Clear
3 Y, z% @9 K u" d3 }: |; S2 [, G 这个参数用来清除统计信息。
$ G1 ^+ L3 G) ?" L 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
! R3 r: [ u. W9 o- h+ [/ `7 { F9 Q( F3 t# O% j5 N' h: C
: m# |3 k6 O: Y/ @
) q O/ a0 l- Y4 ^' n& U9 R9 U @
|