本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。( }" [9 l1 B% @( u% M
命令: /Info 9 e N5 M, G- |0 e7 z+ Z4 z" `4 f
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。! v. U ?2 ^ R$ h8 S
用法:
/ D7 C+ M1 a5 _1 {8 ~- O* x2 i' _- J dnscmd ServerName /Info [Property] , Y' t, | [8 c* v2 d2 u" O, ^
参数:* h6 E& l- q1 Q7 j9 l) o
ServerName * ] K& W6 H. X) v1 K& H- v
服务器名称在上一篇中已经介绍过,此处省略。
% _5 V B( K* f' t$ E0 H [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
( o5 ~3 C. k0 D 下面是该命令使用的一个比较完整的例子:
9 h) b$ A9 x+ s- N, ^* S 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
1 v$ h8 O' l, qdnscmd 172.16.12.1 /info 只使用命令而不使用参数
. Q- U6 R! v% m( X' k9 ~+ v& C4 R9 T1 q输出的信息:
- R2 y, T; e9 wDNS Server 172.16.12.1 Information:
+ F4 M9 I+ Q; x: ?( b8 H8 C ]C:\>dnscmd 172.16.12.1 /info7 f7 s, {7 z( I1 T& y, a! V
Query result: 查询结果 R$ ?5 H1 l9 i2 p; W! M
Server info: 服务器信息( f9 l. I/ ~" ?! H C, y
ptr = 00074718 端口; `+ A2 p; G( r) S2 K
server name = myserver.microsoft.com 服务器名称
6 V$ {0 {6 h' i0 {$ d version = C2000005 版本
7 t# M7 Q8 P3 N- ]. j% J' L. M DS container = c DS“容器”/ u) ^* A- ?" o2 L: ]/ @0 O
Configuration: 配置信息 这些信息的含义请参考有关资料
( Q2 u/ I6 D9 K: T dwLogLevel = 00000000% g8 z: i% c$ I
dwDebugLevel = 00000000
4 S n9 h2 n8 Q5 h dwRpcProtocol = FFFFFFFF* H! i8 X! _/ T7 D7 B: W" r4 O. J
dwNameCheckFlag = 00000002 S0 W2 }3 }9 ]0 x) w8 _# u! G$ _
cAddressAnswerLimit = 0
7 a N6 B/ v$ i f( c dwRecursionRetry = 3, e0 Y# v. d, W7 ]
dwRecursionTimeout = 15
) @+ T; f+ |* J; n dwDsPollingInterval = 300
: Q9 {7 F; J/ o; g1 V! L7 { Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料3 d. ?% p1 ~) m3 R) y
fBootMethod = 3
! w" Q' V7 W k" _6 |fAdminConfigured = 1
! s3 W' h3 `" M7 f. e) AfAllowUpdate = 1 0 [) v: j7 H+ Q( t
fDsAvailable = 1
# `- ]! _; G& t0 R) V! f. ]3 L# BfAutoReverseZones = 1 - m' f' q6 D. g6 S I& a
fAutoCacheUpdate = 0
% k" u% k' P: L9 w- g, OfSlave = 0 9 b! L8 e. M. }1 K
fNoRecursion = 0 ' x: r/ i' N3 G" _8 f8 l- _5 [
fRoundRobin = 1
* V" l8 @" T- X, a6 `- IfLocalNetPriority = 1 ' g- n5 }0 }$ w" t6 L [
fStrictFileParsing = 0 : x4 o$ O( N& m" c1 ^
fLooseWildcarding = 0
% K4 _+ z" D: X$ l! [. N7 x) qfBindSecondaries = 1
$ O$ s9 k" y! o3 b* E3 ZfWriteAuthorityNs = 0 $ ^1 d# N: y: C' e
Aging Configuration: " G% N, u& x1 A
ScavengingInterval = 0
2 A& n& P! w8 ]/ p% e! X4 KDefaultAgingState = 0 . n, a$ F+ i; g+ ]' v
DefaultRefreshInterval = 168
. o6 P, p6 B( f3 hDefaultNoRefreshInterval = 168
# T% w1 a* e4 n+ b6 N" ]/ b ServerAddresses:
3 |$ w G0 [. S* O& `$ x Addr Count = 12 t8 M/ e4 i% {* b
Addr[0] => 172.16.12.1- C9 N R! t6 D( S6 Y
ListenAddresses:
8 k; ]! v; t7 D5 |6 B2 ^ NULL IP Array.
1 {. D) b8 ^3 s Forwarders:
. @$ K% N a( b. ?, J3 t2 J9 y0 F Addr Count = 12 _% d7 n: O& F. M
Addr[0] => 172.16.4.3 [# d2 b2 k9 {
forward timeout = 5
; s4 s1 O4 S' ~6 `6 I3 c" L/ H slave = 03 Q, S9 ~9 l+ v3 U
Command completed successfully.命令顺利执行完毕
" s; m" s, d3 R& R; o. }$ Q 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 6 |: I% C V" U: k% A% v
命令:/Config
, W( H3 Q4 M: b3 ~( ]" K 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
) I7 Z- D( \6 U) @# R) M8 |1 s7 j
( [$ F" ^: p: m4 p0 I M 用法:
& X, H4 o. b# |1 d7 A3 c; U dnscmd ServerName /Config [ZoneName |..AllZones] Property Value) S: d" Y- }0 m5 ?& I3 B" K
参数
8 P. } r3 J' H. E ServerName :服务器名称,意义同上 5 p" a$ N. e/ }1 l- _3 R7 c. M
ZoneName:
2 l! N: V! o6 { T 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 * R' C1 U" c/ B" z
Property: & R9 S. r2 u9 I4 S7 l
这个参数是属性。这里所说的属性有:/ Q" G Z3 H- ^( k
与服务器有关的属性:例如:$ Z# Q9 N, B3 U5 T% J3 a! H3 X
/EnableRegistryBoot
- V) U/ f q% f( N( p, t, Q/RpcProtocol
% \1 m! J3 [' e- [7 V& L/LogLevel
f% K- @ @ ?+ w: D4 Q/EventlogLevel 等等 (限于篇幅未能全部列出)
" M5 w& Z6 ^0 Z, }1 n W与Zone 有关的属性,例如:
+ ~: F# M; {9 g6 {3 l; R% N /SecureSecondaries
( O: z$ F3 t% P% x /AllowUpdate
, S9 I# p1 s3 H, ?' t( h. f /Aging
0 i: d6 F, Y4 ~4 }2 E8 w /RefreshInterval Value) y. F* W& i6 L+ G Q
/NoRefreshInterval Value
3 h! ^0 _* z4 n2 M! T( n 属性值:" K8 w( }% D# o3 x5 U+ F
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
* g3 U+ z7 S' i$ D5 [+ v从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
) k5 P4 q C& U" J5 F! q 命令: /Statistics
: _, K4 q8 z2 u8 }! x 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。, Z2 R* z# k: ?* F
用法:/ s9 w0 y$ B; E) S. M
dnscmd ServerName /Statistics [Filter|/Clear]7 s2 _9 i& A( C( ~: P; X
参数:( q# V: R6 F8 B6 M
ServerName
3 m$ b, v: ^8 {" Z& [; e: B服务器名称,含义同上。
. k* s. K0 p. K9 o可选参数介绍:
0 s: T" D% t. ` H$ C* X' c+ X9 ?共有两个参数,每次只能使用其中的一个。5 D4 j. v4 O1 D1 D
1.过滤(Filter)
, M0 }4 o! i" J6 @ 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。$ e( Q2 V5 E$ {* x5 b
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
: {/ c" {% f6 J& b& J* T4 R* c7 n 00000001 -- Time' r# q; A9 g% o8 w" t8 N" p7 V
00000002 -- Query7 e. {! A4 {5 V, T3 j. g8 f9 ^
00000004 -- Query2/ A: ^. w, |$ S7 N* D D( S; w$ C* @1 y
00000008 -- Recurse
. G' b8 m2 `, A! Q7 T1 w 00000010 -- Master
8 X4 Y }4 k* U$ a' E2 i 00000020 -- Secondary# I7 k* D4 ~2 y
00000040 -- Wins2 H1 W7 L I$ @
00000100 -- Update
* y9 |& _' F* h. C8 q 00000200 -- SkwanSec
( n' q. e( x2 S. F2 ] 00000400 -- Ds
( {8 G6 x* [! `0 ^ 00010000 -- Memory9 C( t# l. w L; }, |& @8 q! G3 h
00100000 -- PacketMem5 S" b6 ?0 e7 u$ O, T- n. C
00040000 -- Dbase$ P7 c0 k9 M' K% M/ o
00080000 -- Records6 H; ]" B" b* Q) a8 [* b
00200000 -- NbstatMem1 O5 e- Y) R' F" D. |' m# ~' d: f
2.清除 /Clear
# r9 E W/ l* O& | C* @4 S 这个参数用来清除统计信息。2 z. h+ Z# g2 t4 j9 b! J4 [
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
# ~. O G( ~! X: q$ D/ X- f6 ~: u" p/ M6 U: T; U8 D
8 @" _; M2 N/ U/ W
: j' S. [+ E$ }9 B |