本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。- Y% \4 }% a" f- S$ h8 O8 Y
命令: /Info
o. j6 K, f4 j, X& G5 G) q$ b 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。0 v0 Z* o) }5 a& u3 y8 S0 J( |/ f
用法:9 \( n/ N" [1 L3 K2 f' P6 P
dnscmd ServerName /Info [Property] % q1 N/ G- Z. Q, e* m Z5 e3 T7 J
参数:# h( r ^/ a; N4 l2 g, \$ R
ServerName # I, Z$ c# t6 e
服务器名称在上一篇中已经介绍过,此处省略。
- J4 Z, N% {4 p [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。' N; U* r9 i" a; V f5 _/ E( i
下面是该命令使用的一个比较完整的例子:
3 M# d- I8 l6 C( H# V1 \ 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:" ?: ^' F- `8 }7 d% T$ G5 U$ u; B
dnscmd 172.16.12.1 /info 只使用命令而不使用参数' h" C4 W1 a: _2 s9 d) d
输出的信息:# y f. A8 |5 i* {) s
DNS Server 172.16.12.1 Information:
; H7 z f1 }) d {9 BC:\>dnscmd 172.16.12.1 /info* l1 [6 l! r5 k
Query result: 查询结果
4 G, s/ m( D" s+ ~0 Z7 i r: M' yServer info: 服务器信息/ G2 p9 x- D1 e$ S
ptr = 00074718 端口
+ @5 Y( M: o% Q" U7 }# `' e server name = myserver.microsoft.com 服务器名称4 U7 ]3 {7 V# w6 [* f3 U8 T; U) C% E
version = C2000005 版本* I5 G9 Y, G) r9 b
DS container = c DS“容器”
1 T9 e9 N6 f- Y* j7 Q0 d Configuration: 配置信息 这些信息的含义请参考有关资料! k7 N' Z. g# W+ R+ ?# k* {" ]
dwLogLevel = 00000000
8 D% Q% A( }" N' Q7 H4 W& U dwDebugLevel = 00000000
- d7 x: q% f. [' r' d4 D* K. T2 q dwRpcProtocol = FFFFFFFF
4 W& S. a; b" \2 [ dwNameCheckFlag = 000000023 j7 J9 W* ] {3 t, j
cAddressAnswerLimit = 0
( ^! V$ f e6 U, W' Y dwRecursionRetry = 3
$ q3 A1 R4 y1 V1 G' r$ f! z+ S dwRecursionTimeout = 15
% B S/ z; v* [& K' P( K6 E1 W dwDsPollingInterval = 300: k0 a! P1 {& a
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
* g5 o- }/ P+ W0 kfBootMethod = 3 9 C& e5 r Y7 j5 t
fAdminConfigured = 1
2 e- V7 _) I- k( h$ ?4 dfAllowUpdate = 1
) l) ^0 R' r/ K) g. ^0 J2 N& YfDsAvailable = 1
4 J! q7 O( n" JfAutoReverseZones = 1 ] b- b/ D# y; l
fAutoCacheUpdate = 0 , |0 v" P" i- C1 a. e
fSlave = 0
1 T2 w, Z z' |- Z% }fNoRecursion = 0
- i1 k8 m, \5 u& j# N% U v- xfRoundRobin = 1 9 p' u" M J) e: i* D
fLocalNetPriority = 1 ! s$ D1 `5 M" q0 K, M
fStrictFileParsing = 0
& j, B; ~) G+ |4 WfLooseWildcarding = 0
Z6 y9 l5 C8 N8 }9 y4 p9 yfBindSecondaries = 1
: T4 J& _. b$ v* J* F; B, g# ofWriteAuthorityNs = 0
- A$ X' s7 a! O' ~Aging Configuration:
- ^. T. R3 N! v" [ScavengingInterval = 0 9 O+ m1 `1 s6 a1 d6 W% {7 ]
DefaultAgingState = 0 2 V8 M. f* C" A$ C( T( S" |
DefaultRefreshInterval = 168
5 z3 h% @5 C7 ]* XDefaultNoRefreshInterval = 168 4 z( t% x) I/ f4 B: j: F
ServerAddresses: ( c+ s5 l/ y, B V! D: y
Addr Count = 1
4 I, y& v6 k; \; w+ i) E( P Addr[0] => 172.16.12.13 S& _* D$ T" u" D' w4 p+ N5 f$ E
ListenAddresses:
; t& {% Y( P- _; X+ t4 V NULL IP Array.4 M' g- v z+ s H& K/ T
Forwarders:* i0 V, f3 @6 K/ @7 o% \
Addr Count = 1
+ ]$ s0 T F" e7 s+ t( S% h Addr[0] => 172.16.4.3& x6 \& w3 s+ a
forward timeout = 5
4 U# S3 z/ k9 [* j$ n- Y+ a4 O7 N slave = 0
9 z) ^6 Y0 [3 U# N) aCommand completed successfully.命令顺利执行完毕 & Y. \6 S, ^, B$ W$ d4 S6 p
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 6 U2 m4 ^* J" E3 p) D# o
命令:/Config
; a9 [! u S7 h5 r 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。) i/ G" L* H! Z$ G5 A+ {
8 [8 {$ u4 g% t, A6 X! I) N$ K
用法:
" L/ ^" S) f) z$ M, I7 p dnscmd ServerName /Config [ZoneName |..AllZones] Property Value/ C3 Y5 O N I3 `
参数
! l: J; l5 K0 }, c9 m. i ServerName :服务器名称,意义同上
! s: |; s% O. P8 { ZoneName:
P8 X9 D ]3 ] S* {- b. } 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 % h$ D5 N) w! L! D4 w" y7 g
Property:
: L4 R; N: p: j' K1 O' ? 这个参数是属性。这里所说的属性有:7 K; ^4 C& S% Y4 d+ a) X9 D4 c
与服务器有关的属性:例如:
$ u2 U# \) h, V- {: R: l5 v. p* n/EnableRegistryBoot
) u; {/ u/ N# O# A+ Z3 N' {# W3 U/RpcProtocol
" X8 ?2 w0 g2 N/LogLevel
" i; @7 s$ v% B: L E/EventlogLevel 等等 (限于篇幅未能全部列出)
2 c0 {: ]% O9 B) o8 n/ Z与Zone 有关的属性,例如:7 y. W+ B' ~, Z4 E9 {& Q6 v# E
/SecureSecondaries+ _, E7 M5 ~4 }" w1 G1 D) k! \
/AllowUpdate
: G/ I9 P v% `, K" ?/ c /Aging
3 q$ A9 e0 I! i* c% T' c+ O /RefreshInterval Value; i1 F0 u5 w p
/NoRefreshInterval Value
8 _; I3 Y4 ]0 _& Q- W 属性值:1 |, l% ^3 g. C7 S( {+ v" A
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。0 M8 J8 N) u( i$ Q+ m8 G) w
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
3 \( r3 r! C% H 命令: /Statistics) f. b# p3 r/ L
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
D6 G) R( n( O% D 用法:
; O# H1 M3 A# @ ?5 q dnscmd ServerName /Statistics [Filter|/Clear]8 y' \, h6 _) }1 ]
参数:2 \3 P9 x" w' f" }) ]8 q; V
ServerName ) n: ^8 m3 ]3 l k* ]
服务器名称,含义同上。% M2 ?4 H& i* Q x, Y% M% S
可选参数介绍:1 G8 K/ c: T3 s! G+ e- q# p1 Q
共有两个参数,每次只能使用其中的一个。1 o* }8 }3 B( t8 L& |
1.过滤(Filter); S5 T, T9 I* U g9 B6 F7 d
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。1 K! S+ \: y, r8 ~0 @. H
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
2 j* \0 }# e1 s' ~, n* D 00000001 -- Time4 \: N- i4 b# h9 N# s' J p
00000002 -- Query9 X. ~+ W0 \( u R
00000004 -- Query2- H: K. p8 a" g7 o, b, e& l. E) Z
00000008 -- Recurse
) _/ x4 V8 V/ n# x2 d- w5 R$ P 00000010 -- Master; J- I( n5 c' g; [2 }- Q" W' {, i
00000020 -- Secondary
. K2 f) t) n6 Z2 }7 ~6 Z 00000040 -- Wins! l( l u: L' G5 Q8 T8 [
00000100 -- Update) F) w/ m; @, v
00000200 -- SkwanSec
' {% n+ x8 Y' H 00000400 -- Ds" l4 T. F4 n" d. G
00010000 -- Memory
, B, s* Y$ M5 ^" ^ 00100000 -- PacketMem
, }) }8 s- t9 m 00040000 -- Dbase2 W% {9 Q4 E& C" X& S7 v
00080000 -- Records
2 `: a, s9 K; }' @ 00200000 -- NbstatMem
/ u$ M% Q# _- |; M" N 2.清除 /Clear
1 d6 ?0 v# w5 ?) K 这个参数用来清除统计信息。
' n' J0 {6 \$ O: W3 N" z0 d 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
# w! D' ~. m* ~$ Z2 ?" K( B& P- f9 ]( q, v+ m" [3 r: Y
- o8 e+ M9 C6 B! X" u9 C
# z8 Y C7 o6 F @$ Z7 D |