本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
5 A2 p. g8 J8 q$ f; f* j% H1 l$ \ 命令: /Info , s$ W" d1 b! L8 }. w
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。( b5 ?/ t9 K4 e* W2 V: r9 R
用法:* U9 N$ w4 m$ K
dnscmd ServerName /Info [Property]
; i% W4 W6 G, @- S+ b6 Z- ?, N' x 参数:
* L1 _! A% r9 t& A: v( T O: F* c1 b ServerName * |& c. f u- k( s9 V- C
服务器名称在上一篇中已经介绍过,此处省略。 R8 r# a: ]0 o7 H$ z a
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
4 x/ B* y) ~8 R 下面是该命令使用的一个比较完整的例子:
% s' R0 I6 O r- T9 u 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
% q% f% w" H. c; Tdnscmd 172.16.12.1 /info 只使用命令而不使用参数
9 {* |8 D# L' R4 t输出的信息:- Y! c0 N* V) \
DNS Server 172.16.12.1 Information:
7 G' }. u; _6 c% z/ u+ _& Z* x% KC:\>dnscmd 172.16.12.1 /info
4 ^! I# Y9 W: @1 d& l1 n3 T" jQuery result: 查询结果
, b2 Q n/ G: F1 P" _4 S) y! d" FServer info: 服务器信息
. i/ ?0 T4 V( z& V# r ptr = 00074718 端口
, X5 o/ O5 u4 _ server name = myserver.microsoft.com 服务器名称
$ Q K6 r& W+ b r- k version = C2000005 版本
% m8 z: j& C$ ?7 x: V) o" V DS container = c DS“容器”
6 T; w m' i0 U. m0 K. m& Q+ O Configuration: 配置信息 这些信息的含义请参考有关资料
$ r! [; ], l. |# _+ h2 e, I+ t dwLogLevel = 000000001 Z& G b/ Z1 C- m: G0 p: g& U
dwDebugLevel = 000000007 C1 e } S. b" u
dwRpcProtocol = FFFFFFFF/ R* _. i5 O v5 t" ^3 Y
dwNameCheckFlag = 00000002" Y/ W; ?& A2 l3 n
cAddressAnswerLimit = 0
# m% g% l; }: |4 P) x# m( V; [ dwRecursionRetry = 3
0 f" C8 a! C5 S dwRecursionTimeout = 15' b) C2 W2 N+ ~) K% g% _
dwDsPollingInterval = 300! [* s, j, D) g2 g, ^
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料; ~6 m4 M1 q# [6 T, w; h. m
fBootMethod = 3 $ V& ]; p4 |8 ~, i2 W
fAdminConfigured = 1 & T3 j2 B0 T2 L1 k
fAllowUpdate = 1
0 m6 _3 {6 D: c# QfDsAvailable = 1
1 Y5 a) @6 t y1 s nfAutoReverseZones = 1 ! ` C2 F" n0 r; t3 m2 y
fAutoCacheUpdate = 0 9 B& v) c" K8 c( h0 S6 K
fSlave = 0
' L+ L2 B' ^$ `8 mfNoRecursion = 0
; I$ H9 W! T o0 j$ `fRoundRobin = 1
/ H+ s6 {' @' @" R( M2 W- OfLocalNetPriority = 1 9 U, }. p3 \; N
fStrictFileParsing = 0
1 N* h0 r4 M; s5 UfLooseWildcarding = 0
+ \6 P7 t; P' L* D1 bfBindSecondaries = 1
- `3 i1 F4 A- m7 y l7 NfWriteAuthorityNs = 0
6 p. o2 x$ U9 c8 C! l7 iAging Configuration: 3 L1 T% L7 ~$ P/ d6 r, T0 }2 F
ScavengingInterval = 0
& a! _: \# h6 n# Q& T C8 UDefaultAgingState = 0
1 }/ D5 I* x! m% R9 h8 SDefaultRefreshInterval = 168 # ^" P' \- G3 Q' k# E
DefaultNoRefreshInterval = 168 3 Q1 y8 L! A6 h% @: B" Q+ i: l+ t, Q
ServerAddresses:
: U& U# Q+ C! S' q# G Addr Count = 1
7 p. U1 p5 i o7 L. Q Addr[0] => 172.16.12.1" F0 B; u: ] a% X* T( D2 m
ListenAddresses:
( p; ?' h7 }$ q0 Y NULL IP Array.: n# l5 Y/ e: T) E, \8 t$ N
Forwarders:* _% _ T/ `. k6 P+ G
Addr Count = 1, I! \8 |5 g& o/ x D& x
Addr[0] => 172.16.4.3 @5 M4 x5 }3 O M& K
forward timeout = 5
; [! i7 q3 `+ u e- s slave = 03 [- l! A" i& u
Command completed successfully.命令顺利执行完毕
" k0 a8 i0 j4 B* F' U 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 0 _# g r1 x! O9 U8 h' F/ r
命令:/Config
0 a9 p5 I. q" w- n 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
/ p% a6 `! I5 i( D! O9 N' g( S6 V8 W9 P7 k. x- r
用法:$ Y2 v0 F8 S( {& j( x& ~
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value% y, b% i) V7 f) v
参数
- P5 R/ J7 ~2 _ O* W; z: n1 x ServerName :服务器名称,意义同上
h5 m7 t6 I: Y" r# }) z ZoneName:
9 O3 m4 P" \. v 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 , B5 }; t8 Y7 G) n0 ~& {
Property: ) w5 F5 I, E1 E+ i4 @- C
这个参数是属性。这里所说的属性有:
% N6 }, L1 Q* R: @2 N4 \. a 与服务器有关的属性:例如:" Q4 c9 k; s, b# l0 Q9 h
/EnableRegistryBoot$ s: _) ~" P- {% X5 n% e
/RpcProtocol
* ^, o, n- e* P/LogLevel
T: B" [9 y/ P( l. P8 O/EventlogLevel 等等 (限于篇幅未能全部列出)& i6 \3 g# q+ }. U2 I/ o- x
与Zone 有关的属性,例如:
4 D- z% K3 P6 U( a4 ^ /SecureSecondaries( \+ _9 W( I$ O
/AllowUpdate
3 X, h3 i0 P9 c; c: H' G } /Aging
! {% R+ f; a5 t /RefreshInterval Value4 S- X7 W+ E- O- D3 i) {* d/ s
/NoRefreshInterval Value( E: m+ b# L9 W" ?( K
属性值:
@6 }- S' L1 I$ S3 F4 M 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。( Y3 b! N! M( q. Z( l
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。 N1 V8 U2 I$ i
命令: /Statistics
9 Z( g% j: I! t: E/ U9 J1 f 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。4 s; R! v# U& t$ A1 |6 g
用法:* f3 C+ p/ D$ V+ h5 U
dnscmd ServerName /Statistics [Filter|/Clear]4 L8 A: v! x2 N F
参数:: P" H; ~" K3 f3 t8 I, _4 O
ServerName ( l+ V' Q1 N4 D2 K' T# U) l
服务器名称,含义同上。
0 y( j2 G" A- t/ K- l" U可选参数介绍:
( |4 T) D6 V1 i1 t) y/ A5 T) i共有两个参数,每次只能使用其中的一个。0 @1 {$ Y3 s, l7 Q2 h/ }
1.过滤(Filter)
1 R% k0 D% m7 u; ~+ b7 s& m& Y 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
& K- v2 O+ ]- ] I- q- @可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
# h H* ~4 G p4 x/ L5 x 00000001 -- Time
- I) `4 ?0 u: p) l! J 00000002 -- Query
2 M3 J9 i/ h! S( X 00000004 -- Query2! ^ t _( j/ d% b2 Q
00000008 -- Recurse' e4 p! E! @1 F: x
00000010 -- Master
; \' E3 F/ o2 t% ~1 | 00000020 -- Secondary
: O1 B" c6 R2 E' ^1 b5 O- B( A 00000040 -- Wins8 Y1 f" P2 ~! ]- a7 Y
00000100 -- Update. N3 `* b& r6 I9 e7 ~
00000200 -- SkwanSec: [3 e9 }3 w u7 p
00000400 -- Ds
9 j* S( Q: J7 A; i l 00010000 -- Memory9 t% d. _4 g7 m5 H" v/ E! ^+ D* j
00100000 -- PacketMem
! {6 m" t$ a4 u* f) _" @" a: U 00040000 -- Dbase9 L. [8 ]8 w) ?9 E- H1 m2 g
00080000 -- Records; j: B' _* s6 Q/ m
00200000 -- NbstatMem& a8 [& ]- \ \/ |: `
2.清除 /Clear
# V: @- r& a* ~ 这个参数用来清除统计信息。
, b: O' [8 w' U+ H+ f1 v L 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
3 h, t( j4 M8 }# M. i. A# w. v
8 S" s1 V: {! [" w/ S & d; r# k$ k0 I
% X/ y; `. }: u
|