本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
* N$ i1 n5 Z7 U0 O8 y2 r7 Q2 B$ b8 i 命令: /Info & s' T( A1 P; ^( _& N1 K$ V
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。% U8 A# d' r2 B" L
用法:6 H8 o- \8 c. Y) k2 z
dnscmd ServerName /Info [Property] 5 L# E" l" w1 u. l. y
参数:
+ S( C j* M. P ServerName + o; n ?" f. G8 l& I g9 y- ^
服务器名称在上一篇中已经介绍过,此处省略。 7 S5 K0 L" X* \9 x, z d a \
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
/ l- i3 F/ }: y& i4 K5 \* l% a 下面是该命令使用的一个比较完整的例子:
) N3 e' ~9 P4 F8 R" v 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
+ A* Q% Z" Y3 j( ]8 S" i& k1 udnscmd 172.16.12.1 /info 只使用命令而不使用参数 W& Q, q3 \( j N3 ^) x9 h2 B2 X! u
输出的信息:
( z2 ~" H7 [+ IDNS Server 172.16.12.1 Information:
6 F% _* {- k* _0 \0 O5 ]C:\>dnscmd 172.16.12.1 /info
8 _+ E2 ?6 h( D# vQuery result: 查询结果
/ M/ J' y: `) @+ L# b7 m. nServer info: 服务器信息4 ?/ u8 k0 A" H& ?2 v
ptr = 00074718 端口; y; \1 @! I1 e+ [! c
server name = myserver.microsoft.com 服务器名称
% ]0 T/ I4 `: C: q3 S2 ^6 l# J- x4 T version = C2000005 版本+ J8 r' v9 Q: s0 [$ X. H1 D# c
DS container = c DS“容器”# `4 g2 [: z# Y
Configuration: 配置信息 这些信息的含义请参考有关资料6 r' l5 e( x* ^( m$ e \3 p
dwLogLevel = 00000000# T3 C1 x L' ?9 x' C
dwDebugLevel = 00000000
$ m9 p3 x# ~8 z4 Q" a }/ J+ ? dwRpcProtocol = FFFFFFFF, ~6 F7 g( Y5 L C
dwNameCheckFlag = 00000002
& P' S, V9 ~5 m cAddressAnswerLimit = 01 m7 t$ I' Z% V; M$ s H, t
dwRecursionRetry = 3) @6 E$ C7 ^& \* w, t, v4 h
dwRecursionTimeout = 15$ Q6 v) C% @$ E3 a
dwDsPollingInterval = 300# Z+ q1 \: d% V
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
( S. x- \& F8 U5 _fBootMethod = 3 5 l3 z a2 K6 d* t1 ]. N) q! d. o/ U$ p
fAdminConfigured = 1 , B0 ` V5 J, t$ \9 y
fAllowUpdate = 1 + y& [1 h9 y1 L) \( f8 O
fDsAvailable = 1
4 X) o, A' q! ^- Y3 IfAutoReverseZones = 1 / N1 c: e( j* w2 P, D
fAutoCacheUpdate = 0
; C% c k7 v. }, g! C7 Z& @: AfSlave = 0
& N- a* z4 ]& o, V& v. IfNoRecursion = 0 # l2 o3 s m4 D) A7 b% W
fRoundRobin = 1 $ |3 r, I0 H& O9 ?3 X- }) W
fLocalNetPriority = 1 : k4 d! O7 M' X) z6 c% A
fStrictFileParsing = 0 ) Q; u2 h$ M- f/ ^. _) |& _& l n
fLooseWildcarding = 0
2 i) Y7 @- n' Z7 QfBindSecondaries = 1 , H1 \1 @7 w- b
fWriteAuthorityNs = 0
" D, G5 D' X9 F8 l1 |# XAging Configuration:
* k9 e- [: l: y: Y4 |ScavengingInterval = 0 " ^3 o/ r' A, ~ [3 v7 U
DefaultAgingState = 0
' E; b6 I" \/ O" ?* {DefaultRefreshInterval = 168 , Z" a8 V) ]5 a. P
DefaultNoRefreshInterval = 168 / x% ^; l! b2 p# Y( P
ServerAddresses: 2 }/ k Z$ ]* z! C( _5 n# e% E
Addr Count = 1. e2 O* T* e! h# z, H% G' N; G
Addr[0] => 172.16.12.1
# P: i6 ~9 l5 x4 m5 _+ O ListenAddresses:# C `7 j! C& S3 W O
NULL IP Array.: Z& {. w3 Z3 c; l6 ` U
Forwarders:% ~, g5 G5 U: [# L# p' m ]) B
Addr Count = 18 U0 P8 M K( c, k6 R& e3 O
Addr[0] => 172.16.4.3" \1 R* G# f+ ^$ f: H
forward timeout = 5) V7 p& p% z4 N1 L
slave = 0
5 H2 S; ~- d1 vCommand completed successfully.命令顺利执行完毕
# p# n, @) E5 ]$ j1 r8 K ` 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 & `4 V9 q+ {2 ~; U7 y* F
命令:/Config
c- ^; S% \+ y6 A3 J 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。7 Y7 N0 W7 O# E
) U4 [( t, ^5 N3 y" q$ }- e 用法:
( ]$ Q3 _6 k a1 n# n# P) G8 { dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
& ]2 y) D9 }+ O/ i& l 参数+ B* ?# Z$ {: j" v$ G: T
ServerName :服务器名称,意义同上
& ^, s7 ^8 p& n( S% Q) F& F ZoneName:, N7 J- d2 A# Z r0 ?
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ( T( b4 t1 W. X" L; F- o: ^
Property: 8 T7 c; b" O9 k9 J7 p
这个参数是属性。这里所说的属性有:5 O' x$ h' [* t) W! s, w& A6 y
与服务器有关的属性:例如:
. M) m1 w5 n9 [& F0 T/EnableRegistryBoot$ s* R% G% B/ R
/RpcProtocol
3 U8 Q! i. C$ Z$ O- ~/LogLevel
2 Y8 Q {" S9 h/EventlogLevel 等等 (限于篇幅未能全部列出)
/ D5 L {6 V: v! d2 l与Zone 有关的属性,例如:
! k% g" e* M0 d5 Z) @9 d$ V/ B /SecureSecondaries
3 y) F4 K9 R, d /AllowUpdate
: X3 `5 Q; S8 p, |* k$ @" j /Aging
0 o w+ k9 P: v1 x+ r) V /RefreshInterval Value
) y9 M: C$ d0 |) G5 n /NoRefreshInterval Value
+ S% w; \: A p w 属性值:
6 |4 {0 E/ f/ g1 s& B% { 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
9 E* X& H5 F5 l. v( T6 \从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。. e p3 c6 Y7 V7 U) ]9 m
命令: /Statistics ]0 l3 V! g- M0 J
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
. Q# x. d1 r, h6 D 用法:. j) O, b7 q z1 q; [* X
dnscmd ServerName /Statistics [Filter|/Clear]5 {# F9 o& y* h4 H4 e9 q% l9 h
参数:
- s* S3 o2 @8 n z- P; C5 aServerName ! [$ Q1 f; o, Y) \+ ?: x
服务器名称,含义同上。4 a2 d, h' C D$ ?! E
可选参数介绍:: [' B* ?3 s0 q" x1 A! p! B4 J
共有两个参数,每次只能使用其中的一个。9 J; U5 T, v. ^8 L
1.过滤(Filter)
( l6 \6 ~% P$ d: {" b w 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
( e& b" s/ O5 \" O可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
& O C( F8 i. U: z. q 00000001 -- Time# \; G6 H! X9 I+ {5 w8 X7 j
00000002 -- Query" `9 \' E. X! v. T5 q
00000004 -- Query22 t7 r+ {- N; s9 }( h6 G/ B
00000008 -- Recurse4 l% j, R' B0 z* b6 S
00000010 -- Master! d* F6 {' g' S; e+ t8 U% Z, n d
00000020 -- Secondary
- K4 s2 Z, x6 E d. V 00000040 -- Wins
+ k/ X5 @% K1 }: ] 00000100 -- Update
, H3 f- K$ b6 I 00000200 -- SkwanSec
9 L/ S8 Q8 R5 s8 F4 t' W+ I9 l9 Q 00000400 -- Ds
1 h. c0 {) ]+ ]& p [" p( O 00010000 -- Memory
- ~' z$ g2 U# S' N9 r N1 ` 00100000 -- PacketMem, W3 L: v4 M9 y4 t+ R+ k% h" R
00040000 -- Dbase
) ]0 ?* y7 c1 @ 00080000 -- Records7 ~, p2 B& p ?/ K% O I
00200000 -- NbstatMem
1 Y2 `, E: m8 W, z 2.清除 /Clear 3 \& e/ l/ U8 n' F* o: i3 o- t
这个参数用来清除统计信息。
0 m& `9 `2 V4 [5 \2 X" k 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。' @8 Q- F* F G) w
+ z; f3 F b( r* k4 W: h
3 u+ f1 z4 c* J" Y! G! M6 {: W7 D
% ]" }3 D. L* O0 H8 ~) t# T
|