本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
/ ]% K) c( V- L0 A7 Z$ }6 r 命令: /Info 5 F: {- b4 n2 j/ y- X9 e
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。0 |. X/ W$ N. u3 [( J- X* \7 Q
用法:0 u7 [' @& T% h7 `
dnscmd ServerName /Info [Property]
1 d$ }: X' j* p L! J3 @" S0 b& s 参数:
7 r9 M( k& E0 m ServerName
- I' y4 C5 J, ` 服务器名称在上一篇中已经介绍过,此处省略。 " \ [3 W# O# c# E: D
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。$ f. t0 c1 z! _! R& s* Z
下面是该命令使用的一个比较完整的例子:
1 B- v+ F" U2 H5 T% o5 y 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
' e: F/ G- I! ?+ |* Xdnscmd 172.16.12.1 /info 只使用命令而不使用参数& ^$ n- K, h' I8 O, n( s
输出的信息:
M% }; d( _9 p6 J' d vDNS Server 172.16.12.1 Information:
/ ?- |$ k* }0 O/ S Y4 tC:\>dnscmd 172.16.12.1 /info+ F: s6 s9 I4 S
Query result: 查询结果$ m* ?" l: j" y% K% j7 M) @+ q
Server info: 服务器信息
* \" t' F+ k3 h1 W4 ^ ptr = 00074718 端口
& T# A& v+ E- ^, h7 @ u' w) x server name = myserver.microsoft.com 服务器名称( F9 t% \1 } ]$ z# A
version = C2000005 版本
5 a: G% A( b) ?/ z+ s# f DS container = c DS“容器”
' w9 t; ?2 ^' s2 }3 S Configuration: 配置信息 这些信息的含义请参考有关资料% V, `8 R9 D- P) l
dwLogLevel = 00000000% e( x. L( W/ G8 J T6 Y$ A
dwDebugLevel = 00000000) M6 w: u- P: _- H2 E. W4 C
dwRpcProtocol = FFFFFFFF
1 k5 P4 m+ o8 e# ~- s0 H8 e dwNameCheckFlag = 00000002
1 `7 Y5 |5 p: J cAddressAnswerLimit = 0
% I- I* \, q6 @+ u$ B dwRecursionRetry = 3
* u) n* s! \" |: p dwRecursionTimeout = 15
/ T2 Z2 h9 M* z# r dwDsPollingInterval = 300
8 p4 } S5 c* k7 c0 z Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料$ D5 h: t1 w8 I- n/ N3 r# [# E& w
fBootMethod = 3 . c) Q: c& g9 f
fAdminConfigured = 1
! T4 u* ?5 e8 l; S. ZfAllowUpdate = 1 . w8 K+ j# ], R* U3 x4 t4 z, v
fDsAvailable = 1
( A+ ]) E# W) ^fAutoReverseZones = 1
: [1 R; C6 }4 _6 \fAutoCacheUpdate = 0
, E% H0 A- }9 q9 [! GfSlave = 0
* Z% e1 F+ G/ ^+ c, a$ {fNoRecursion = 0
$ r/ V) W w1 S1 V$ `fRoundRobin = 1 6 N$ L6 U7 B. x" r4 i
fLocalNetPriority = 1
$ Z- v, Q5 V6 \% x3 [5 n/ y! ffStrictFileParsing = 0 ! P4 {. M1 _! q& k% f; K( K7 r
fLooseWildcarding = 0 . F4 N: Z) [; ~- N+ v
fBindSecondaries = 1
( k7 ^( u4 M0 c3 H; F3 N6 |fWriteAuthorityNs = 0
0 f) Q" C L- |& T0 K1 SAging Configuration: ! h- `/ l5 [8 M5 \2 H' e
ScavengingInterval = 0
' t! ~& _, n/ zDefaultAgingState = 0
! R C, L J1 L/ O1 R- rDefaultRefreshInterval = 168 ; f5 L: b: @" }' }+ l% {
DefaultNoRefreshInterval = 168 ' z5 d% k# j7 C* e, [% b# J
ServerAddresses:
% Z4 _+ C$ F! E0 O z' e; ?1 z, ? Addr Count = 1
* w' x- e3 h6 C7 m" [: k- P' l Addr[0] => 172.16.12.19 X* a( b% r5 R2 H; `4 e1 t4 m
ListenAddresses:
: E+ d! T4 h' E- G; f* G$ v NULL IP Array." t& a e- @7 w$ X. _
Forwarders:3 W% ]2 {$ Q) s) B/ B; S
Addr Count = 1- K! i5 g2 F* F3 ^# p4 {
Addr[0] => 172.16.4.3 Z9 H1 w, V, P1 I# ]$ K- \! z
forward timeout = 58 T9 g3 v9 R) {
slave = 0
* b f% H6 k1 W8 E9 ~/ ACommand completed successfully.命令顺利执行完毕
" b1 o2 @: {' \ 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
. ~' b1 d* C1 r+ N 命令:/Config
5 M+ M z. I; B% n: w3 X 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。+ \8 S% y9 I; t3 F; t+ k- y
% n5 Z3 B2 {# z+ c; N- \' _
用法:
+ M: v! E3 p* q5 h& H S dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
: z3 {) F2 m# G( N$ Y 参数
9 b- _+ {' J; f( d* p, K ServerName :服务器名称,意义同上
0 k: R" Z! U# I; v0 _2 r3 W# b/ } ZoneName:
) U# m* h7 v3 Q 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
; a. Y0 W2 _0 F Property: 8 N2 ]& ~- X. Z; M5 O8 i
这个参数是属性。这里所说的属性有:
% D1 L+ E, A! a 与服务器有关的属性:例如:
0 z; n$ S I: G' ?: |/EnableRegistryBoot
5 b, h& b3 `8 ~7 B' N {/RpcProtocol
% w1 P4 Y& `4 X4 E% X/LogLevel4 J5 {: y2 k, O$ D" o; t
/EventlogLevel 等等 (限于篇幅未能全部列出)
9 o; z2 X+ g1 l9 Q( S" j% q. f/ |与Zone 有关的属性,例如:
) Y; o& D; b, j* g& H% N/ i) d /SecureSecondaries7 e0 M0 h3 i5 X' P7 r) q3 `0 o: r6 ]0 K
/AllowUpdate/ }1 G- X+ ]! D0 S, S6 M* E9 Y3 m
/Aging6 w& `( K4 B" f- s7 N
/RefreshInterval Value! n0 v2 R7 f; [. F
/NoRefreshInterval Value; o8 @& T6 M7 T# s1 \+ V
属性值:
& g; G# W2 p% x. ^( i. d' c 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。$ }- X2 V, m- M4 U* s" ]
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
: S0 _7 Z2 j' X4 r 命令: /Statistics
0 z" \7 x6 ~: |9 J% n s0 R 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。7 m& t Z W W- r5 V5 V5 g9 D2 H \# V
用法:
& \% A' i! z0 E" x2 j$ H E. O+ J dnscmd ServerName /Statistics [Filter|/Clear]" Q$ M8 Z3 N, b+ Y5 m: N1 S/ z
参数:
5 m0 B6 A" f* W" r$ F- c _* zServerName
0 q& v* d \4 d: w% \服务器名称,含义同上。
% l2 V `* I* |- {% Y可选参数介绍:: W+ P6 H3 I" a& `) V
共有两个参数,每次只能使用其中的一个。# Z1 Z3 V0 X9 v
1.过滤(Filter); Q' }/ K0 W0 G+ T o P
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
a. Q# f; ^$ m% G+ [可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: / U9 h# B. y* G. Z3 x6 P! X* ^
00000001 -- Time: J* Q0 q5 l0 [7 q
00000002 -- Query
! ]) ?2 l6 [ I: W 00000004 -- Query24 Q! \/ h' }& b* X& ^& t" c% ~1 k) B
00000008 -- Recurse
9 C& [8 b6 V; L1 W* m 00000010 -- Master
& i9 J: E. S3 Z 00000020 -- Secondary S/ v0 Q2 L' ^. C% f1 y, A
00000040 -- Wins' l O6 S. J. }* W* I
00000100 -- Update
% h/ E2 }, C" h+ M. M5 l 00000200 -- SkwanSec
: P. `& ~! k {( z d, w0 Y+ X 00000400 -- Ds
p. S6 b3 V6 k5 G 00010000 -- Memory
" o/ \! s+ K5 g1 l/ P2 n 00100000 -- PacketMem2 S# R' Q ]% r `
00040000 -- Dbase
- u- h( g1 h& g7 W2 e 00080000 -- Records
+ R! Y- k, x: E$ [" }3 r& v/ a4 b5 e. h 00200000 -- NbstatMem
) `6 v3 k" {. F! t* T3 D 2.清除 /Clear
" q+ l" ]: j, s1 z 这个参数用来清除统计信息。! L4 ]# |) W+ q, N
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
! @, C3 S# u) b( ^# W+ I a9 G# O9 n
J4 b& b' |3 o4 t
4 u1 T$ y9 z3 N& M3 `, n W
|