本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
2 P2 o0 B3 W+ p4 C) t* ] 命令: /Info
( T+ _) P) K" N3 Z5 D1 U 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
+ R% F$ W4 J+ F2 T* w" l 用法:
7 }, N/ x: h: d dnscmd ServerName /Info [Property]
6 q/ r) r1 ~ e6 Z 参数:
& {2 F2 x! r' |8 d4 \ ServerName
5 ?& B1 x1 N0 Q, H3 z% T 服务器名称在上一篇中已经介绍过,此处省略。 / t; ]9 H$ b# G7 n% W- I# }
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。' l v8 j8 \ Z/ V
下面是该命令使用的一个比较完整的例子:
# F3 z2 Z( Y( q" Z 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
- k; y& w/ b3 F L& } _dnscmd 172.16.12.1 /info 只使用命令而不使用参数7 C$ P( D- Q% G7 H/ g# ]/ k
输出的信息:
# j6 V& N2 o* zDNS Server 172.16.12.1 Information:
* b* X4 \- c4 U7 `C:\>dnscmd 172.16.12.1 /info, S" l' J3 }5 f8 M, e1 S2 c* O
Query result: 查询结果
* n" u4 C8 d3 C, i J+ |8 {+ D% HServer info: 服务器信息
! R6 e4 ]7 o8 G+ E! p. ~$ ] ptr = 00074718 端口1 G- z! E/ s8 ~9 X2 ^
server name = myserver.microsoft.com 服务器名称
- s o9 z0 i B6 w9 v version = C2000005 版本
5 |3 |7 Q! a3 X* u. d8 a DS container = c DS“容器”
{& `: X6 \, t9 l% ] Configuration: 配置信息 这些信息的含义请参考有关资料# \$ f2 Q2 }& b7 z7 P) r8 i
dwLogLevel = 00000000
) `( M7 w& _; ] |2 N9 V dwDebugLevel = 00000000
. R, S' y1 r+ A; O; | dwRpcProtocol = FFFFFFFF4 ^* |, Q8 ~8 b+ ~# \6 O! ]8 m9 e4 e
dwNameCheckFlag = 00000002" \# q' a# g+ z8 F2 K! W3 u `. p
cAddressAnswerLimit = 0
2 ^( y( P o/ P3 X) u dwRecursionRetry = 3
8 p; q2 _1 s! b! A! M: _8 Q' I dwRecursionTimeout = 15
4 p: h5 N/ b, q dwDsPollingInterval = 300
3 n% B# T, v2 A Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料! `1 @6 X. V# u+ }8 R4 W
fBootMethod = 3 * j0 E T! S2 h- j2 u
fAdminConfigured = 1
' v) Q) Y) D! n1 d# y2 ^fAllowUpdate = 1
5 B7 E( M0 ~9 C- AfDsAvailable = 1
, ?$ L1 R& T$ YfAutoReverseZones = 1 7 ~" o8 T/ E: W: x
fAutoCacheUpdate = 0
+ z. A0 @, o0 t. GfSlave = 0
) S% U. r% P; K& _fNoRecursion = 0 " m, Z" V% e$ R6 x
fRoundRobin = 1 ; F% D! v l$ i9 K/ @/ b5 a8 { N6 L1 {
fLocalNetPriority = 1
: E/ B7 j8 c# C7 m: d' r- G8 Y6 F4 ifStrictFileParsing = 0 2 y! t3 K! M3 m, F
fLooseWildcarding = 0 * y& e s4 k* B% V3 O0 Y9 Z! j2 q' Z
fBindSecondaries = 1 + }0 d: L5 X I6 D# N
fWriteAuthorityNs = 0 ; h/ j, R/ U5 u- f
Aging Configuration: 6 L# H1 U1 {+ ~9 E; Y; v" W) T
ScavengingInterval = 0
+ B) T- b* d! U" VDefaultAgingState = 0 6 A2 j9 }/ q& U
DefaultRefreshInterval = 168 + A2 f( L6 m! i4 {" _1 n' l& q
DefaultNoRefreshInterval = 168
, t( [1 q# r/ l4 ^4 V3 Y ServerAddresses:
& m8 J; z, M( e5 P v- [ Addr Count = 1
% Y$ ?, n% B# U5 S, X9 u2 G( ^ Addr[0] => 172.16.12.1
0 `$ x% }' w& E! ~' K+ h* | d ListenAddresses:; e, Z+ v. l0 \6 M/ ~
NULL IP Array.
- L8 f2 T; f. J! B8 c Forwarders:: R+ a: R8 s( V& u( X
Addr Count = 1
9 t$ w2 H$ o1 t [0 a Addr[0] => 172.16.4.3 E7 J4 G- a% s- V! ^
forward timeout = 5
- {. n A& l4 ]" O* R, s. Z slave = 0( g" Y% O- p, g
Command completed successfully.命令顺利执行完毕
% ?. i' ^9 l) Y4 V 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
0 c n; ~9 b$ | 命令:/Config: u6 B' q4 K+ U; E5 j: ?
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
& ?2 |6 j9 R! ]$ T9 i' z6 J7 v+ [4 \; u5 R
用法:
/ p6 [2 X1 k+ H Y dnscmd ServerName /Config [ZoneName |..AllZones] Property Value7 x9 P& ?. v4 w- o
参数
! T. h+ O8 P3 k ServerName :服务器名称,意义同上
r I+ V* a& x( T2 T ZoneName:7 n, v5 v' S- h' D4 h y; N0 }4 ]
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 2 [: s& J9 K9 M1 a2 a# U( n
Property: " E3 E" L, o* Y( P* @7 F7 ?3 U
这个参数是属性。这里所说的属性有:
* y% J, r2 y. E; P4 F 与服务器有关的属性:例如:
4 x, L' Z I! [2 `2 }- E0 T/EnableRegistryBoot
2 y. C6 @8 B$ I' `/RpcProtocol
, X" x+ G0 m3 H5 q2 t: \/LogLevel3 C- D1 S5 C8 R3 Z- b0 l) }% r
/EventlogLevel 等等 (限于篇幅未能全部列出)
, ~7 K0 o8 P0 l) e9 r+ a% Y; a与Zone 有关的属性,例如:2 U$ |6 |7 I+ i
/SecureSecondaries
& o0 f, j# ~4 }0 A) s6 y% @- d /AllowUpdate
+ z7 F0 h+ W8 o/ Z. u4 z" p /Aging* D* C' {+ M4 a( a
/RefreshInterval Value
4 e; Y/ X+ {; w( n /NoRefreshInterval Value; }. `1 |4 U+ k
属性值:
2 O) u Q: S! R 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。" e; J+ b7 S7 A; M: ?
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
' e0 ?$ Q* G: V! |( {1 K 命令: /Statistics
' L: T$ w: U" L7 f 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
) a* n1 E9 x+ b! j2 \! t 用法:
! w. t6 a/ o" @ dnscmd ServerName /Statistics [Filter|/Clear]
5 a J" c9 M3 T- @9 ` 参数:
9 v: S$ z" p. g+ P. f/ }1 pServerName 1 l7 e6 @* { G K
服务器名称,含义同上。2 b/ ?/ v; Z2 l( D0 n
可选参数介绍:
. x$ |& v& M1 Q5 x& Z# P) W共有两个参数,每次只能使用其中的一个。1 x" W* J; o O
1.过滤(Filter)" `9 {2 i$ J, b% ]# O, K) [1 M
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
' n' F0 t. n: f8 E" H可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 5 B" E3 L) I8 a5 a) N/ X
00000001 -- Time/ X5 j% j; U# h. Q
00000002 -- Query
' x1 |) M" @0 g. E9 U* z$ G5 B 00000004 -- Query2% `3 v7 H! ^5 Q! D3 H9 f# B# S
00000008 -- Recurse
! j. W @7 U- j1 q2 E 00000010 -- Master- B5 m ^5 Q& V5 o( c
00000020 -- Secondary
5 T$ x, C9 [! K* C+ x8 }9 }; F 00000040 -- Wins- a5 Q6 M. | t0 s
00000100 -- Update4 J: K/ @% c( Q
00000200 -- SkwanSec
6 f3 R& _( R5 b$ ~" I- [* X 00000400 -- Ds" B+ z4 Q/ T8 {+ m( {; H
00010000 -- Memory" r9 L q+ A( m) i; l& E& V( T3 z( `, I4 I4 F
00100000 -- PacketMem. |+ v3 ^( ?: ]; T
00040000 -- Dbase- a/ k' S0 V. h8 [* s/ W- a8 N
00080000 -- Records
8 W$ U6 S( R. H- [% B: D 00200000 -- NbstatMem8 P$ F& R) p( u# F9 i* I* ]4 [
2.清除 /Clear
Y9 v% `; C7 B- I, P2 ] 这个参数用来清除统计信息。* u5 a2 |& u! e, e) `" ]
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。, I% {/ A# i! k
% s2 V) Z+ T( N: V7 |5 i
# @; [4 ~5 h! c: [! j( g; ^: X& `8 i4 F7 ^5 E2 E( |& o
|