本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。) n! t! k$ D* ?4 }. j. P7 L- L
命令: /Info & T$ H" p6 @$ _* j
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
2 x* ` K9 ]; m8 x 用法:
5 W9 t3 Q# M, b, K# g dnscmd ServerName /Info [Property]
' n# N, {! ] y& H7 E+ _- m4 m5 e 参数:+ Y; p9 A3 F- H& i8 c0 G9 k: v$ V1 B' F
ServerName ) n! k [# H3 E4 O8 h+ d+ @3 s
服务器名称在上一篇中已经介绍过,此处省略。 " X/ u/ @" m% L5 L
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
% t# r( U) ~7 h/ A 下面是该命令使用的一个比较完整的例子:( ? v8 f& o8 y! R0 `6 b! w, x, F
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
* i V% t, X6 L1 |7 Sdnscmd 172.16.12.1 /info 只使用命令而不使用参数+ r( ?5 M! O& o8 r7 \
输出的信息:
2 d% u$ X) t3 cDNS Server 172.16.12.1 Information:: Z7 I2 R! d( |
C:\>dnscmd 172.16.12.1 /info2 d7 L( u: L- r$ Z$ Z# E3 V
Query result: 查询结果
1 y" @7 c/ i3 G. O. x/ w6 fServer info: 服务器信息4 D( ^. K# f7 z- ~5 o7 ?
ptr = 00074718 端口
, R7 K% E5 k8 { E$ K& T server name = myserver.microsoft.com 服务器名称7 Z% P* Q s8 i* A
version = C2000005 版本
$ [/ [( i* W9 z9 W6 |2 z# |: w7 [ DS container = c DS“容器”! u& i8 a4 F- m
Configuration: 配置信息 这些信息的含义请参考有关资料! i7 F* c& g4 u3 k* @
dwLogLevel = 00000000
" M4 T ^9 E5 ^7 v! f3 ? dwDebugLevel = 00000000
' [# n! H0 O' H7 H* r5 N- }( m/ e( e dwRpcProtocol = FFFFFFFF9 ~: i& A8 b8 ] ?
dwNameCheckFlag = 00000002
8 v' N5 s) {6 G0 B( ~: m cAddressAnswerLimit = 0
: X- ]; n, H7 }4 j: H+ o4 J* C, _ dwRecursionRetry = 3$ d) }: }" m5 G& G
dwRecursionTimeout = 15
' Z: u6 V5 e$ z6 h6 B dwDsPollingInterval = 3005 |0 M6 G8 p. n% `
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
/ F2 I+ U' ~4 b8 TfBootMethod = 3
3 @ Z$ w* H$ P& g. D; sfAdminConfigured = 1
- w2 r X3 Z6 S3 w( H5 c$ AfAllowUpdate = 1
0 ]! \# V- l& p- Z; a5 B/ P* z9 r# ]fDsAvailable = 1 - F8 p: i) O/ L$ m0 x
fAutoReverseZones = 1
6 ~, C1 H$ S$ g7 \0 TfAutoCacheUpdate = 0 / U3 e7 I. {" o) V( o& \" Z
fSlave = 0
7 x1 N0 R$ N" ffNoRecursion = 0
: d3 B, L5 v& i/ B" ^fRoundRobin = 1
+ V& z1 K+ u# }3 e) Q6 KfLocalNetPriority = 1 & W p3 Y/ x+ x+ @4 }9 w( B+ n
fStrictFileParsing = 0
. Z) { ?- ]/ T, ^0 ffLooseWildcarding = 0 8 J) f4 M4 ?& w% m; f, X3 N( Q
fBindSecondaries = 1 / e: V4 o3 p: k
fWriteAuthorityNs = 0 % L) {2 q% s/ w* X# z
Aging Configuration: 7 g/ v, N' t3 d0 p4 @; y
ScavengingInterval = 0 5 M+ F* E. e$ t( t' S
DefaultAgingState = 0 . N2 F' K' ^3 ~# y
DefaultRefreshInterval = 168
$ N2 }, w! I" o* P" CDefaultNoRefreshInterval = 168
+ x5 h1 t% X7 r' h ServerAddresses:
3 I7 t& i- q. P' t7 S Addr Count = 1
+ i$ U; w8 k5 B" g0 f Addr[0] => 172.16.12.1
* E0 T' E9 n" d5 V& j ListenAddresses:0 E, L4 ~4 o0 h& }" X
NULL IP Array.- }% S& ]2 m% H( R
Forwarders:
/ Z( \4 G4 M7 ?% V& N. I Addr Count = 1
1 B' h, o# R% F m Addr[0] => 172.16.4.37 Y( ~9 v* ?! y/ e9 @
forward timeout = 52 z: e" y2 ?. o, C0 a( p
slave = 0
; n# |0 n+ P7 y S$ Q& \Command completed successfully.命令顺利执行完毕
% ~5 K8 o; X( g/ v- t 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 + T3 o! B: B" m# N& Y' F
命令:/Config
# q2 [- W6 v: a4 a5 V# y6 X1 G j 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。; ]* D# V3 B) ^5 r [
% a& \' E% H* L2 d
用法:% d. V3 W7 i; M2 s0 g
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
/ P2 L7 d; E7 J 参数
5 ^ k; B. \, ]' c4 k ServerName :服务器名称,意义同上 ( z( _8 @+ `# f. P3 j+ {* ]
ZoneName:# E: |% l8 p/ l1 o: p9 b
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ) j# Q- g% N. q6 h3 E! g
Property: 8 R. p- A5 y, c+ U
这个参数是属性。这里所说的属性有:. @/ v U) W) M" o, l) d3 `
与服务器有关的属性:例如:
6 Y6 h: w6 J+ x* c0 C7 Q+ J, n/EnableRegistryBoot, c8 W2 I! W, `- i" b: x
/RpcProtocol
B0 V' S- W3 {# m$ q; w4 _* h/LogLevel5 P2 H. @ J# m+ M: d% ~
/EventlogLevel 等等 (限于篇幅未能全部列出)
; d# W$ V6 G8 x# Z$ S与Zone 有关的属性,例如:
) C2 T% d( m$ \9 p! @ w( Y, ?- V /SecureSecondaries! E* [" A# h& t+ |. q0 j
/AllowUpdate: |5 T K% l5 Q, A3 M& U
/Aging- I9 U; V7 L0 P
/RefreshInterval Value3 m+ q; \/ f: S0 W
/NoRefreshInterval Value* V7 j1 T7 _4 d; l% B
属性值:% p) ~0 e# }6 j3 s
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
: z2 B( E7 o9 Z从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
8 ]/ j# f, V, A' {% ? 命令: /Statistics
" Z8 z. r7 f N5 x 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。+ z# k/ _; T0 k3 E1 Z8 ^
用法:
( [3 m! r, m9 W' d# X dnscmd ServerName /Statistics [Filter|/Clear]( D5 H$ l$ C j) [+ m: n( X
参数: U$ k0 T- d [- N4 a) ]4 V
ServerName f* E; D* m/ q# Z
服务器名称,含义同上。& T) U! L* @" ^ F k' I
可选参数介绍:
! F' y* ]; E. |6 t! C3 [2 y共有两个参数,每次只能使用其中的一个。7 J, J/ z \0 w/ `
1.过滤(Filter)
7 |' f/ k" B, X. o) r 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
7 l- k! f# [+ E3 }) n# ~可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
' @; V9 u M0 H' z 00000001 -- Time' s! d1 c# m( g+ h
00000002 -- Query6 _" G0 ~- Z1 F" `: c+ z3 B4 \) D- K
00000004 -- Query2
7 `: ]6 r1 @/ y7 s 00000008 -- Recurse, |5 ~+ V( n6 r/ i3 U0 l) Q( G1 [
00000010 -- Master
, L& z, u% h9 b! m& q6 B( d: o 00000020 -- Secondary- ~5 c% C6 z1 [, a( w2 `3 }
00000040 -- Wins
, u0 C% V q: P9 ~ 00000100 -- Update
* a. v6 w# o2 i+ L4 j4 n. L 00000200 -- SkwanSec
. Q% i; k; ?; j4 J7 C9 o3 Q 00000400 -- Ds, n1 a: l9 r, H/ J0 J# G- s6 ]
00010000 -- Memory* O6 w7 e' q. }3 B* t9 W# J
00100000 -- PacketMem9 N* j* p! A8 ^2 W
00040000 -- Dbase
4 Y, ~3 Y- ~4 ?) u7 Z0 I 00080000 -- Records
5 l) ^! z* v# ^ 00200000 -- NbstatMem" E9 `' Y& l% n
2.清除 /Clear
, B) [, B O9 Z. e% ? 这个参数用来清除统计信息。+ B5 U: v, G% ?( s) e5 X3 o. L
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
) f! _9 r, \- S q' g+ l( f7 M% r# H* \
, f# d1 R0 Z- s4 j5 E* {/ t% |) g# }. ~3 A% | f
|