本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
' r! V9 u' P5 S 命令: /Info ! g' X; V g! ^' Q2 y
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。$ X5 e' J: H2 B4 Y7 d3 {4 O
用法:
" e' _# H, @8 f& W dnscmd ServerName /Info [Property]
0 \" w5 ~! V2 b R 参数:( ^/ r6 [, @4 @0 n/ l3 `& {) B u
ServerName
0 X, }$ z: _8 J: e3 m( ~ 服务器名称在上一篇中已经介绍过,此处省略。
) ~; O) M- w8 K" {6 Z$ F1 p- i [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。/ U b$ s) D/ }1 I
下面是该命令使用的一个比较完整的例子:7 h( D5 K1 D# u+ ^5 t+ R1 u% R
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:8 M* v2 B; a: X$ |: u! c
dnscmd 172.16.12.1 /info 只使用命令而不使用参数2 r/ H2 Q# V5 W2 `/ t6 P
输出的信息:
9 T5 I" K5 N: LDNS Server 172.16.12.1 Information:: B# n/ m$ ~& h. W0 c4 x# c" B V
C:\>dnscmd 172.16.12.1 /info! C, t3 l/ A r% Q% H
Query result: 查询结果
3 t& A0 f+ s1 s( G: t! NServer info: 服务器信息
/ |, q9 [8 e* H$ S. g ptr = 00074718 端口4 M2 _" _/ ]% W# Y& ?
server name = myserver.microsoft.com 服务器名称
- x# R) Z n0 Y- a$ \ version = C2000005 版本
8 A' O' l" N% {- U DS container = c DS“容器”
: o2 O0 {+ y. s8 I& v Configuration: 配置信息 这些信息的含义请参考有关资料, a% g9 O) Z, x D' _' f
dwLogLevel = 00000000$ s/ ?5 n7 }, P2 p# ]
dwDebugLevel = 000000006 K9 r+ w5 Z7 E' n& k
dwRpcProtocol = FFFFFFFF8 g: q5 }4 m. Y& Z
dwNameCheckFlag = 000000029 g& I* K7 D4 c3 W# ^9 {0 T
cAddressAnswerLimit = 08 E! F+ Y' J0 @9 l$ W! a
dwRecursionRetry = 3* D/ q; R6 T" s1 T8 R$ ]
dwRecursionTimeout = 15
0 a( F5 G$ y$ c4 z! @ dwDsPollingInterval = 3001 C' Q+ n' @; u1 T# K: x- D
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料6 Y4 F' h; D* `: c. M+ j' P F
fBootMethod = 3 0 _+ f2 R+ j- d% V$ q2 L
fAdminConfigured = 1 7 F4 v4 ^8 ^7 x ~: h+ o
fAllowUpdate = 1
# u' a+ W& }# x( U; xfDsAvailable = 1 $ y i5 p) w; _& ^
fAutoReverseZones = 1 4 W. S+ {! O8 D7 Q0 Y/ A
fAutoCacheUpdate = 0 / \- L" t( F0 h8 T: V p, u7 @& O6 v7 z
fSlave = 0 6 H3 _. `: n7 n/ Y- D* ?8 e: Z
fNoRecursion = 0
3 @& ]0 ]# h* Q' l3 kfRoundRobin = 1
4 f$ n, z. x: W vfLocalNetPriority = 1
* g4 x% W; h6 }' e: y+ GfStrictFileParsing = 0 1 j9 @! H5 C- j+ o8 d! M
fLooseWildcarding = 0 , m2 }7 z5 H+ r! p0 V' V
fBindSecondaries = 1 ' I! c, o4 G6 O! |! e6 L" Q
fWriteAuthorityNs = 0 ' ]( G6 \) K" k8 [
Aging Configuration:
2 ~% b- t3 r7 S ]& s! ~- |ScavengingInterval = 0 ) m+ T+ k9 l9 ` b! t2 p8 F% {
DefaultAgingState = 0
. |% g3 Q6 a- z7 j$ l/ |: O. ]( }5 bDefaultRefreshInterval = 168
1 ?; f/ U2 A; ~6 zDefaultNoRefreshInterval = 168 / t- G2 ?& r2 l# ~0 _0 @
ServerAddresses: & b( g4 N% b& y; p, z+ Z
Addr Count = 1 P# X7 v6 j' i
Addr[0] => 172.16.12.1
( b7 R, v8 ^3 A ListenAddresses:
7 A/ c& A; G/ I' s. W NULL IP Array.
6 l. a4 d' c5 t8 J Forwarders:! k# A& v. @ M5 i
Addr Count = 1
. d- k8 I; u v) T1 t Addr[0] => 172.16.4.3. u: Y! P: X% z6 m
forward timeout = 5
- B+ f' `0 V& s! Q' q9 S slave = 0
6 K5 _* u! @- J, r4 d CCommand completed successfully.命令顺利执行完毕 3 i* a* b4 \2 D' s
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
2 r- ^$ x9 b! d7 x- z* W 命令:/Config8 f `$ J8 s! ?, h
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
' Q+ r" l+ g n4 T4 b1 j2 C+ G; p9 n2 ]% b y; `! j& [& o" M
用法:
% f& i& p+ c4 W# t# g& d# ` dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
$ p6 ~- x& S1 F5 a" m% i 参数
5 S0 B( s/ ? @% L7 F ServerName :服务器名称,意义同上
3 `1 D i: ~$ P- A1 m* ^# @ ZoneName:
5 `0 b; p4 d2 }/ S 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
& w2 L9 F" q" { `9 q, I Property: 0 w9 e s' t# m7 R! ~, X3 ?
这个参数是属性。这里所说的属性有:
: _' I! }1 s4 ] 与服务器有关的属性:例如:* c) b: E' M5 [. n
/EnableRegistryBoot
3 e+ ?: w. K' _9 ~' P/RpcProtocol7 P3 |; p" ]9 Z5 M; ~
/LogLevel
2 h( q; O5 b+ I! Q6 \/EventlogLevel 等等 (限于篇幅未能全部列出)
; Q; x5 z; f( z) \9 ?% E) s/ _与Zone 有关的属性,例如:
% `9 G9 H1 j$ J, p /SecureSecondaries5 h7 x4 S! V2 ~/ O
/AllowUpdate! y; w: ^5 n8 H) i; |1 | Z
/Aging! K# K, @* v7 B8 b
/RefreshInterval Value6 V. j) N- T! h( B$ E" }1 o! b& u, ~
/NoRefreshInterval Value2 Q7 T# L- A0 h/ K' g Z! _3 R8 K$ o3 h4 Z
属性值:0 | z% p A7 |; H% E' k
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
5 q3 M" p# n, Q c# ^) M从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
- T( v7 A# G. E0 A4 a, I; ?( Z" v 命令: /Statistics! o" e# D B$ L, s
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
3 `% i: C" J0 B" r4 i 用法:
?- G3 ^+ q2 @; u, ~+ T dnscmd ServerName /Statistics [Filter|/Clear]
+ Z# {8 s9 y( } t* [ 参数:
, Z. {: a, {4 a* q: R) AServerName
$ J* X; f# s+ h" P服务器名称,含义同上。
8 b" f& K0 W5 v. n) E$ x; e可选参数介绍:
- b5 v& X8 F8 M5 [( h, M! Q共有两个参数,每次只能使用其中的一个。
" u( w' a* ? K0 k' U 1.过滤(Filter)
7 V# J; p3 M5 z9 A 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。0 ~+ b4 t O1 m5 @
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: & H+ g- Q3 l9 f7 R: i' Y' w; P( c
00000001 -- Time( _. G( V3 ]- A
00000002 -- Query
8 V3 v2 B; r3 j+ s/ Q& l, e: ? 00000004 -- Query2. { ?( ` ]( s% g
00000008 -- Recurse
8 ]: d5 u' a& h2 c+ ^( M 00000010 -- Master
7 x0 D* ?. _+ I) N% n9 J 00000020 -- Secondary: J( Y6 y% p2 h( N
00000040 -- Wins1 Q# {$ n" o: y `4 k6 }' z2 Y4 t
00000100 -- Update
! R, m6 n# x. M' | 00000200 -- SkwanSec8 `" j& y) b/ h4 Z) N
00000400 -- Ds
* }" S' b% h3 V: V3 w 00010000 -- Memory
% z3 X" i W4 M9 B) q& R4 D 00100000 -- PacketMem
- C- R3 B* ~, e' [6 h B' `3 a 00040000 -- Dbase( t# V6 A; @, T6 g3 c* p7 L4 ?
00080000 -- Records
6 P7 S+ q; T. Y 00200000 -- NbstatMem
( S% Z. W% `4 e 2.清除 /Clear
9 A+ L, B1 E# G0 R( G 这个参数用来清除统计信息。$ w0 |4 f% v! v- \
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。" y6 j+ b( r* n& B: _+ T( _3 \
! P0 K& B, S" A h3 h8 P& }" H) k( K
- a6 k! u: |, \0 g" }% M
! Q& i3 R% D& X2 k, K
|