本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
M( T) {3 b. A3 N 命令: /Info 8 X% J9 k ?- x0 q! m3 W
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。( S1 }0 ^6 K) l5 Z' d6 Z9 U* y, x
用法:% I! u. z, E K, G8 o, R2 B
dnscmd ServerName /Info [Property] 4 q6 G' R+ `& g% c; O0 Y0 Z" X
参数:
0 f8 v# K2 ]2 B! J ServerName : r, J( E1 P$ p* Z
服务器名称在上一篇中已经介绍过,此处省略。
: u ]! N6 |6 G3 ?% X( c. J _ [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。& r3 ^5 Q* F: F) e. w
下面是该命令使用的一个比较完整的例子:
1 Y0 \) `( l" d( e1 x 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
% B& C+ Q. ]# ?* a) g' U2 Bdnscmd 172.16.12.1 /info 只使用命令而不使用参数
# F/ p- z4 ]& g3 u# w. S6 Q输出的信息:
4 V, g, z& n5 z; J, a( wDNS Server 172.16.12.1 Information:
6 V, f+ ~1 {6 }3 T6 K' w, zC:\>dnscmd 172.16.12.1 /info
5 E) |* T: k% d y5 Y' @8 E3 e- qQuery result: 查询结果 G e1 i% d/ V) A( h" m! Z$ g
Server info: 服务器信息
: D; O3 f* T" P& Y& f9 @' c ptr = 00074718 端口! v6 S1 |+ e% q% m7 V! B/ C5 W& l
server name = myserver.microsoft.com 服务器名称
: {/ D" M7 K4 u' V0 T4 R3 Z version = C2000005 版本
" S6 L1 Z1 ?+ | DS container = c DS“容器”
* P5 M. `* a3 x7 D Configuration: 配置信息 这些信息的含义请参考有关资料
- [( O3 n9 O9 ^! A$ Z dwLogLevel = 00000000- l! I' V( G% x
dwDebugLevel = 00000000% K' e7 `# E7 h L. @
dwRpcProtocol = FFFFFFFF7 }1 ] b. a9 E. j/ c& F/ w2 R
dwNameCheckFlag = 000000021 w$ P8 {0 L. Y+ f Z2 [
cAddressAnswerLimit = 0! M) ?8 }. u' k! e4 B" ~ |& N4 m
dwRecursionRetry = 3) P$ J: i+ u( @2 A5 j. B
dwRecursionTimeout = 15
' c+ R; O0 B4 {. S* k! x4 d/ X0 S dwDsPollingInterval = 300
~/ ?8 @) q% g% U( k2 L9 F Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料0 P- W- t/ W& ^
fBootMethod = 3
- Y8 Z+ Q- S* r6 s* P/ G" NfAdminConfigured = 1
4 M4 e h2 m' S( t, W2 mfAllowUpdate = 1 . T9 G& ?. t* q5 l- x" ^
fDsAvailable = 1 , a) N5 U, m+ e1 I' z
fAutoReverseZones = 1
! ^( l$ \6 u0 n3 {& R# L. D* N: JfAutoCacheUpdate = 0
- J9 {- Y5 W7 l/ x* R# I' ofSlave = 0
7 K, D/ E! \0 h" r$ w6 z" p9 tfNoRecursion = 0
- }+ D+ q, W6 _fRoundRobin = 1 7 y+ C# q2 R5 C& a$ b3 @; N9 B+ O
fLocalNetPriority = 1 ; a, G$ \! T% f' Y
fStrictFileParsing = 0 ( e$ M9 L% B: U+ a# }, M
fLooseWildcarding = 0 ( x6 @6 A8 d5 X6 D6 e
fBindSecondaries = 1 ! @( n5 W$ t3 y" ?& n2 _2 u
fWriteAuthorityNs = 0
4 y1 J' L% H' VAging Configuration:
' W1 y L7 {" m3 c9 _9 L& v( z+ xScavengingInterval = 0 ; r4 L# e+ Z) {6 V: _, a4 }
DefaultAgingState = 0 7 Y1 Y" m3 F0 I/ F
DefaultRefreshInterval = 168 - Z" q) C* ^, L. Z9 J9 V
DefaultNoRefreshInterval = 168 & b1 p" s( T/ A$ \& L8 L4 M. C9 h
ServerAddresses:
2 k/ h/ E3 ]( Y, F Addr Count = 1
/ A A" G' X; o( Z! T) W Addr[0] => 172.16.12.1
5 y" X! H9 q4 U6 v7 n: l+ y ListenAddresses:$ \1 l( |) k- X
NULL IP Array.
6 F$ w/ _3 q% x" ?; f6 ] Forwarders:
) w. c* c# K* k6 W" \$ y Addr Count = 1
$ k( W3 J' x! A$ M7 c/ L Addr[0] => 172.16.4.30 [1 J" f! Z$ ~7 y* J9 S- N. G
forward timeout = 5
. D2 p0 R6 R1 I( a5 \" i slave = 02 I& F* Y' e9 i' C/ W
Command completed successfully.命令顺利执行完毕 7 k9 y& F/ e! A' ~2 L$ W1 o
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
3 `& n5 @2 B) o" t& M3 _4 d" a 命令:/Config
- |& m# A0 W& _ 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。6 U' D X; `! {6 Z
6 N0 {9 q1 Y" G* \
用法:
6 M9 h: ~( N! C# ~ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
! X+ z* M, r ?' d% F 参数
" z! k4 s+ [1 k, L/ _ ServerName :服务器名称,意义同上
[0 M; ?8 W% l$ C; W, y, f ZoneName:
1 s! |4 J) l( {6 g1 ?' S 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
, T. s/ b1 D' s; S/ _8 Y, b8 s Property: * Y, C2 M+ {7 b3 P: r- q1 ^5 y! x
这个参数是属性。这里所说的属性有:/ r7 r9 T$ ~7 I- p+ \6 @* R% I
与服务器有关的属性:例如:% i/ ^8 g" W# N
/EnableRegistryBoot
9 Z; |2 f2 B- H1 f2 F. H/RpcProtocol/ S) k4 u* h- c4 j* m" V. d
/LogLevel
7 r# ~) u& e- H: k& U/EventlogLevel 等等 (限于篇幅未能全部列出)
[! F6 V8 d5 L/ P7 Z与Zone 有关的属性,例如:
* y8 o4 j* w5 o9 |3 J( Q6 P8 q /SecureSecondaries
8 \. c2 a- n9 y# N5 S% z# ` /AllowUpdate. w c# Y+ t- K
/Aging% a" A: M! y4 I8 p0 i9 o( l
/RefreshInterval Value
3 a( q0 N& L$ i* h6 @ /NoRefreshInterval Value
) Y2 r* B5 \, u3 f 属性值:7 k/ I8 q+ n- Y% @. c
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
: V+ p2 \* Z" [5 m2 A- { Z3 E- p从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
9 g# [) [; k! J, V. F, {7 m 命令: /Statistics
$ G9 _+ @4 c4 @" Z# p 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。+ `) N3 r+ g. J( F; P
用法:
0 f) [% e d' ?0 N0 M% q dnscmd ServerName /Statistics [Filter|/Clear]3 D( T8 h5 ?3 F1 v9 A! L+ R( P3 h2 ]
参数: B1 d: `. o, p9 A7 l8 N. O" P9 ~0 n; Q
ServerName + j7 u0 L% p6 R
服务器名称,含义同上。
- x# t, a. f# P. S; k, W" G8 V可选参数介绍:
% b! ~7 T, ]% |共有两个参数,每次只能使用其中的一个。8 R; k5 X# n5 L7 }$ v
1.过滤(Filter); U6 l7 c9 r8 A2 P' c, A1 U
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。0 o. n+ O; N9 W
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
L/ |2 M. v" A H8 S4 E 00000001 -- Time+ k3 o* ~7 t( \4 P+ x
00000002 -- Query7 y- S. {2 m" p: y3 L. m9 |; `
00000004 -- Query2
+ C2 m2 h- f7 H4 C; E! S4 \# I 00000008 -- Recurse
& J& F: x! U0 ` 00000010 -- Master6 n' K% W% c4 {* Y# U
00000020 -- Secondary
% b$ O- l. H8 k- C+ e# Q- m0 U 00000040 -- Wins6 B0 V2 |, W; l& l8 v% q4 v
00000100 -- Update
3 T5 w2 G1 G6 H4 E: D 00000200 -- SkwanSec0 G V, R& J$ z: o9 d. h
00000400 -- Ds/ P8 J3 Q5 C, I. O
00010000 -- Memory n+ V6 N- P# r
00100000 -- PacketMem
* a4 s# l" ?% @8 Z 00040000 -- Dbase$ {6 [& _$ ^1 V ?4 [0 z% g. @
00080000 -- Records% d$ n7 P( b# p- k0 n8 l" N7 j
00200000 -- NbstatMem% s; V- `9 {; @/ C* J) i
2.清除 /Clear 2 B) n6 L6 O7 M4 Z
这个参数用来清除统计信息。
9 Z! p: X0 z0 N) g0 q 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
3 E1 a3 F8 l$ a) D; W# ~* L
1 L. M8 g$ ~+ ]8 x 8 Q+ P4 H+ L, V- c, W) O
; @ v; J8 f7 {) H2 Z |