本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
2 C. C$ L' s! h) ] 命令: /Info " {9 _' H; i: M
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。& i3 S' y- z1 i6 R9 R) y+ p
用法:* S$ u7 ~4 n1 B; x) |6 y
dnscmd ServerName /Info [Property]
# g$ x* w3 W) w 参数:
+ n4 S3 [; G7 A) j" j( V ServerName
9 t( ~4 z& E7 h& J" h0 U- l6 _ 服务器名称在上一篇中已经介绍过,此处省略。
. S w& t+ U2 a3 a, m* C [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
5 E" m& v! s. X" e- a0 D 下面是该命令使用的一个比较完整的例子:5 U( J* z1 Q+ S4 S0 \2 _
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:7 v# K2 r5 F$ Q
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
0 d5 a1 {* Z0 U' N. D2 n输出的信息:
& {2 |) U( c3 EDNS Server 172.16.12.1 Information:5 \: S$ q8 o+ j- q2 x
C:\>dnscmd 172.16.12.1 /info+ M8 H4 F1 J4 M( C
Query result: 查询结果- L8 |) C5 B. R7 D6 ]* L
Server info: 服务器信息: M) M' K! n' V$ c
ptr = 00074718 端口; N3 P' q$ s: e l1 t0 a Q
server name = myserver.microsoft.com 服务器名称
. [; [# y6 B8 q- E version = C2000005 版本
# K# q6 m+ B% ~6 W+ ] DS container = c DS“容器”
% Y1 \+ Y' [" o: O7 R/ H Configuration: 配置信息 这些信息的含义请参考有关资料
1 s, Y8 z' b+ m2 n m1 I8 v. ?: L0 q dwLogLevel = 00000000
0 m5 u2 a5 v% S8 M. r# D, N. v% r dwDebugLevel = 00000000' u! H* s- k6 Z6 t& y0 ?5 ~* N3 j" t
dwRpcProtocol = FFFFFFFF4 v! K) w# H" z9 |. j; j
dwNameCheckFlag = 00000002( d7 I( W5 r7 v; K. l3 p0 n! }6 s
cAddressAnswerLimit = 0
- p# N7 u9 f$ j+ W9 Z8 l dwRecursionRetry = 3 p4 s2 L+ f- t4 h" ~- {* g2 m% E
dwRecursionTimeout = 15
8 l1 p! h5 H% E2 o0 @ dwDsPollingInterval = 300# a5 \! R, E8 T$ ]! n+ b0 w
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
1 a+ K$ c( Q! _. I' LfBootMethod = 3
4 Y- ^0 o2 @6 d& `: Z7 n- ~fAdminConfigured = 1 ! O/ P& G5 k1 u; ~+ K
fAllowUpdate = 1 . k' i5 F6 _# d
fDsAvailable = 1
# j& V9 x' a' d* nfAutoReverseZones = 1
+ ?- `( O# P+ |/ p: u2 ZfAutoCacheUpdate = 0
2 e0 g9 n) B$ y. y1 MfSlave = 0
3 I7 x5 `* Z" T8 w9 f9 h9 j$ ffNoRecursion = 0 " U/ G+ T; K- }* y `7 x \. w
fRoundRobin = 1 . y6 S) a( l6 F: c" U+ {1 e0 h' _
fLocalNetPriority = 1
* q& |0 m$ _$ }. G, e! W, K8 qfStrictFileParsing = 0 " O( U4 U+ d9 ]% N6 f
fLooseWildcarding = 0 # K: _2 p7 E0 {* ^3 H+ _ x
fBindSecondaries = 1 ) V3 t# u9 s& @ g' K) O
fWriteAuthorityNs = 0
9 f! f: v6 c8 d4 z6 i- S5 _/ YAging Configuration: 8 e3 @" ]2 q6 L0 z2 o" C
ScavengingInterval = 0 + b' A L$ j5 R" [4 x& Q
DefaultAgingState = 0
8 K/ X3 w: V+ uDefaultRefreshInterval = 168
1 D1 N8 F, N2 c4 UDefaultNoRefreshInterval = 168
( D& g: f; T+ c/ S$ E ServerAddresses: 7 J% ]2 `% Q8 L" }
Addr Count = 1
" L5 [3 p, n! j' l$ s; Q. i Addr[0] => 172.16.12.18 o. B3 r; B) d/ ]# a- E6 Y. f
ListenAddresses:% D% I8 F- I1 X4 p2 C2 C9 }
NULL IP Array.
1 {, ?5 M! ^! `* i( o/ F Forwarders:
+ `* ]$ D3 b7 ~ Addr Count = 1
6 e. j& [! Z% d8 p! \" r; P0 T Addr[0] => 172.16.4.3
8 V0 ?" s: V# d forward timeout = 5# V" t: y* R- Q3 s( _8 V
slave = 0
& [9 v' q$ \. L6 CCommand completed successfully.命令顺利执行完毕 # A! r8 j1 F1 g3 q+ s- T+ ^
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
, h$ V" i2 @* H; `, ~9 P 命令:/Config
- q! [9 `7 j7 d' |4 \ 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。 A. x9 G! k! o* r2 j
4 P8 Q* i( ^& h/ _, M# K# X
用法:
p" p0 o: N1 Q2 t( W9 B! c* D dnscmd ServerName /Config [ZoneName |..AllZones] Property Value1 ^6 J+ B" b0 \ r- ~' B
参数1 r' a6 G* c: ]7 X9 ~
ServerName :服务器名称,意义同上
1 N( u) N/ H* A8 X ZoneName:: P5 }: }4 [2 N$ ]4 ]. k
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
. p+ p' J# {) K0 V/ G Property:
! o, m1 l) R1 l$ C" ?3 S 这个参数是属性。这里所说的属性有: M2 r! w" X3 F5 S4 T* n
与服务器有关的属性:例如:7 ?! N7 ~7 G0 J6 _1 H, {
/EnableRegistryBoot
A; @+ |! j* L: ~/RpcProtocol
3 L' ^; B, R: ]$ A/LogLevel8 Q# k; {$ y% g) Y3 [
/EventlogLevel 等等 (限于篇幅未能全部列出)
( J0 S$ m. t% y% T. r4 k与Zone 有关的属性,例如:5 }+ h$ p* k" u6 ]+ ]
/SecureSecondaries
* A! Q+ M" h7 e4 t U' T R /AllowUpdate
+ ]4 U2 Z2 W& L. e0 p X: R /Aging% o; N% p4 A- ^) r7 P
/RefreshInterval Value
# j8 c4 C: G! V. q, \% u, _ /NoRefreshInterval Value
4 h: L7 r# T$ _+ m2 N# f5 _ 属性值:3 d" k1 X% @& U7 I! Q
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
: x, q4 y$ r) Z9 f0 T0 l0 |, L从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。0 h# f* G& f8 E' t7 W1 Z# M8 C5 f
命令: /Statistics
( N; l5 g8 s* k! R; [ 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
L4 F# W0 ~7 \) h) A8 D! Q6 q# J 用法:; M5 }: A3 ~1 R! o
dnscmd ServerName /Statistics [Filter|/Clear]
$ g, o3 b6 |) S4 G7 P8 y 参数:
- ^ I) X9 b* p& g5 JServerName ! x. ^$ w5 @! l! |+ l) u3 |9 T% ]+ ^
服务器名称,含义同上。4 C' I4 z, Y1 Q$ L. ]7 s; d: S
可选参数介绍:' A( b2 Q' M8 Z; p
共有两个参数,每次只能使用其中的一个。+ b) ?% B; U% L% Z2 s+ C& U0 Y6 D
1.过滤(Filter). n8 Y9 J/ [/ b! G) Y: v( ^
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。# ^" T! s5 [4 ?
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
* P0 D6 c8 q. k7 L 00000001 -- Time" k/ \- c2 [" I
00000002 -- Query+ c2 a( O4 l9 k$ a6 K* q: C
00000004 -- Query2, p5 I5 p% [. \; G( y- N
00000008 -- Recurse' C6 l9 w. N# [" v6 [
00000010 -- Master( v/ M. P: R9 f9 Z M0 \
00000020 -- Secondary
0 h O6 ^. {3 N) i) u) c9 { 00000040 -- Wins
' p$ H g5 ]9 P- C& k5 l 00000100 -- Update6 y; l' q \! L' y/ M
00000200 -- SkwanSec
( S# n+ } \2 G 00000400 -- Ds
, W9 P F4 ]) f5 t# e7 j' {5 v 00010000 -- Memory
/ ^1 C- P1 A1 G- c& w1 {; ]$ d7 P; Y 00100000 -- PacketMem
) t2 y3 g0 n. `; u0 h) W 00040000 -- Dbase
8 g; I0 `- x/ A6 M- m( ]9 u 00080000 -- Records# a+ b3 m) l! R8 B( T/ t5 Z5 C
00200000 -- NbstatMem
' E5 Q6 d: K! f6 X 2.清除 /Clear
+ k4 [' w# Y2 O* b$ t' C/ h 这个参数用来清除统计信息。. F! f) A$ `0 C* ^
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。3 \2 Q3 [4 Z$ y. B' F3 c
. u7 U( e- k) ~( s$ }* R' K
4 t* h6 ]* s( z! o. t8 O
$ y9 u8 b8 o2 Y t' W) Y% r# A
|