本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。1 r0 C" u) z5 B3 ~, |8 B
命令: /Info 2 E" c# ]; z& x6 g* W: [
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
8 w+ h% x" s3 `( C! ^8 l: l- y 用法:+ v% E& b+ |7 s; o
dnscmd ServerName /Info [Property] 0 w1 ]' A- x9 k, c
参数:
c- E( G) s2 x9 ]6 T ServerName
/ U/ x: V, X6 Q! C( E& q 服务器名称在上一篇中已经介绍过,此处省略。
% f$ E; r# G- W [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
4 p. a. A5 }7 q4 m 下面是该命令使用的一个比较完整的例子:3 d$ y: y( [, g" s5 A( ^$ N
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:0 t8 H( O& \/ |/ ~$ I) E/ w
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
# C1 u9 S* E ?# D5 H9 M输出的信息:
2 o# |* t- w- L# d2 f4 \$ fDNS Server 172.16.12.1 Information:3 J1 c# z0 y1 y, z) e
C:\>dnscmd 172.16.12.1 /info
2 _" v$ ]% R. uQuery result: 查询结果
6 Z7 k8 q8 M9 B) c0 WServer info: 服务器信息8 ^3 s, i! B: I) N( C$ w
ptr = 00074718 端口7 p% l! W0 h3 B: D
server name = myserver.microsoft.com 服务器名称
' a+ ~/ L, k- ^ version = C2000005 版本
W- S% K0 g2 E* k4 J5 i DS container = c DS“容器”. ?1 B7 z% ]2 X' `
Configuration: 配置信息 这些信息的含义请参考有关资料
; A3 x r- o! o0 B$ ?4 s% I dwLogLevel = 00000000# c1 e3 P5 T, g* ^0 ]
dwDebugLevel = 00000000* a/ Y+ q6 [! X$ b* s
dwRpcProtocol = FFFFFFFF! j8 u+ [, ~- g. C
dwNameCheckFlag = 00000002
6 W% A( v9 n- q1 P0 X cAddressAnswerLimit = 0. S. d$ E4 I2 x* x$ t5 D
dwRecursionRetry = 3
4 d; {" P4 I( |: w" L1 d dwRecursionTimeout = 155 u! B& } {( Z
dwDsPollingInterval = 300* [* f; D4 e2 X( V* @- H8 M6 b1 X% a
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料' Q. j8 N( u, \5 S' x5 g
fBootMethod = 3
$ H( M6 `2 ^* c7 h- E0 S1 p' z& NfAdminConfigured = 1 - ]- F, F2 `2 p, x. r
fAllowUpdate = 1 $ I- M) k8 T7 u1 z8 c u
fDsAvailable = 1
+ M' r L# u6 \" A) O8 u, K7 Z/ r1 pfAutoReverseZones = 1 " O7 t+ ]: D+ c f- @5 ?
fAutoCacheUpdate = 0 : T" c3 ?. H5 _- ~
fSlave = 0
# W- i5 n; `# ] }6 }fNoRecursion = 0
6 q$ @- c: S9 ?$ {" t% O& t, EfRoundRobin = 1
3 I& X: t, ~4 m4 cfLocalNetPriority = 1
) j3 |: v6 Y- o6 T2 {fStrictFileParsing = 0 % A5 n0 u9 H4 z" k# G
fLooseWildcarding = 0 1 b: C# e: x8 B% `. G2 d
fBindSecondaries = 1 : T# M& [# X' T8 V' @; z, B
fWriteAuthorityNs = 0 M* _9 Y0 b8 x! _0 p2 Z" W+ p6 t
Aging Configuration: Q3 V9 g3 k( X# t5 I% _
ScavengingInterval = 0
- D! S1 |2 R/ k1 e- v l4 PDefaultAgingState = 0 " J( q1 ]& j3 R3 B
DefaultRefreshInterval = 168
; E3 M {# c- J$ X/ GDefaultNoRefreshInterval = 168 " [2 |; {. B0 [; D
ServerAddresses: T: W+ l* G; x/ H* y
Addr Count = 1
- C( H' V& n& K X* s& {9 k+ D+ ^ Addr[0] => 172.16.12.15 u+ w0 A6 c9 i) {6 W: r
ListenAddresses:6 F8 @/ P! B5 ^0 J/ I: F4 w/ k
NULL IP Array.- F, R& q. I |4 s3 R Z6 Z
Forwarders:
1 e' }6 f1 [, r0 w W1 \8 m Addr Count = 1
) N1 |6 J% f# T Addr[0] => 172.16.4.3' I9 H. ?4 P: Y3 i
forward timeout = 53 u. a, @: ~. a. p* K0 y: ]
slave = 0
5 q$ q! ~& f! Q& O; E8 L# @* HCommand completed successfully.命令顺利执行完毕 6 U# {' W+ @" C! V
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ; z- g: ?( h- A0 q% _( c, a
命令:/Config
+ n% S4 t L- X% Y! C 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
8 i) X4 N4 C/ k1 G& c+ V8 @: l- j. A9 I/ w
用法:9 }% B$ @4 E& j+ B- Z( d
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
: S' V% b" Y5 v; V 参数2 ]9 Z7 Q5 o$ r8 M K8 ^% r5 [
ServerName :服务器名称,意义同上 ) Z1 x2 [5 q7 N# V$ |) e
ZoneName:. n: @9 r, V d, o* ~1 U" L, r
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
# b8 g/ `' \; L' t Property:
( @# w+ ~; p) N 这个参数是属性。这里所说的属性有:! k3 K* B0 z' t- n8 k: l
与服务器有关的属性:例如:
! N2 l- @7 [9 ?# X9 r0 E' k+ X/EnableRegistryBoot
& e9 p' v% I0 y7 G/RpcProtocol) N7 G/ E2 g* \5 t4 O' E; A
/LogLevel* T, B/ I \& I" {: K
/EventlogLevel 等等 (限于篇幅未能全部列出)- {- Q1 D1 n5 W
与Zone 有关的属性,例如:0 K1 \) X% d6 e7 d% F6 a
/SecureSecondaries
7 Z0 E' F# B% D! S /AllowUpdate: j( S+ n5 h% y8 C; [5 y4 V
/Aging
2 w, y* u2 O$ F* j" m$ G /RefreshInterval Value
2 a& \. }: F: a* h- T /NoRefreshInterval Value
& N9 I' Z+ l0 X7 Z" ~3 e7 y 属性值:/ b8 r9 k+ @5 ^" \
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
! u7 J9 B% @! n: O5 D. z9 `从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。6 b# _+ c. D) e; Z9 X% x" t C
命令: /Statistics! y7 C1 C; {" N2 H0 B) k
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。2 d( m6 }5 b) s
用法:' s' [' o( G2 z' [* _) v& r+ o
dnscmd ServerName /Statistics [Filter|/Clear]! y6 }1 t2 S% u0 D
参数:
0 F- F# m1 ~, @' |ServerName
" Y5 y5 {/ ?; Q, V/ S6 }服务器名称,含义同上。# H6 i2 R7 \; c( Y9 g; ]
可选参数介绍:5 B3 [& J# j( V) s# \
共有两个参数,每次只能使用其中的一个。
- `& U" }0 N, c' p# l 1.过滤(Filter)
0 B1 |7 A, E7 Y/ R! @9 ?, ? 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。, w" z4 |+ a E8 X3 S4 H$ F6 d+ a
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: , L" x, T- x! A, V
00000001 -- Time
- ]/ n* n8 D# o/ ] 00000002 -- Query
|* O* A' j$ Y! g* S: h% O5 { 00000004 -- Query2
3 j) l1 F' p+ I. m* | 00000008 -- Recurse/ o2 s& S, O; e3 `
00000010 -- Master
! S u* C! t2 q$ |; d8 ?3 { 00000020 -- Secondary3 h/ f8 e( R, g2 ^
00000040 -- Wins
# B8 r E1 m% j9 I1 V$ v 00000100 -- Update5 X% a) x t2 F
00000200 -- SkwanSec
+ G4 ~" Z8 ~' U3 x 00000400 -- Ds% u2 P: P- M8 T5 C
00010000 -- Memory6 z' w* X# `1 D. ?$ L/ @% N8 b1 R2 k
00100000 -- PacketMem4 d) @/ E. r8 r# u$ z/ c0 l0 [
00040000 -- Dbase
: q5 G; G5 Q+ ?. }6 y, s 00080000 -- Records
- V% _8 j# s9 l0 L" N M 00200000 -- NbstatMem, R, w- ~/ Q: {$ r1 P
2.清除 /Clear
$ V) O; ?! t6 U3 a/ A- G7 [ 这个参数用来清除统计信息。1 g9 B [" J0 ~( s! ? x
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。 i8 [8 i7 p8 H1 p
8 o: P+ S4 a( R9 m7 z" _8 |+ a; X
2 |: H* z D& H
: d2 t0 U" M/ n
|