本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
9 D& J; P9 o2 P6 L 命令: /Info 0 L# ?! |6 b# b, W* g5 U: ?
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。! t2 `/ s3 S: \: a1 K+ Y! Y- h1 F
用法:
. S/ }1 W! w* A" X; ] dnscmd ServerName /Info [Property]
$ a8 u0 X1 u( ` 参数:
- Q* Z. N- Z2 s$ B2 o0 e8 V H ServerName
" g. D( {( ~2 L; e# | 服务器名称在上一篇中已经介绍过,此处省略。 2 D$ k- F, n; S2 A- ]4 l: O
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
+ f; Z/ V& x8 ]# |% ` e 下面是该命令使用的一个比较完整的例子:8 w; \3 s$ J8 L! |, R: T
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:, _2 t- S' O! W7 o" s
dnscmd 172.16.12.1 /info 只使用命令而不使用参数5 a' H( n, L/ A6 O0 A, E+ a
输出的信息:
- }0 Y" U: g; |DNS Server 172.16.12.1 Information:. N! V/ w q3 J* g! ?1 |% p
C:\>dnscmd 172.16.12.1 /info
3 e! _* A v! e d$ I3 e8 `$ gQuery result: 查询结果3 V- D* m) R( w9 R, e, i- d& z& V9 F' A
Server info: 服务器信息
0 n1 k) v0 |% p ptr = 00074718 端口
& W9 r; l z- i& }5 p server name = myserver.microsoft.com 服务器名称5 t5 e! J; C/ T5 M
version = C2000005 版本' I2 l( o; ^8 y1 l4 W+ R
DS container = c DS“容器”, _) q1 I7 V$ U, p+ N
Configuration: 配置信息 这些信息的含义请参考有关资料
D: O! R! L) s: F/ Z6 e dwLogLevel = 00000000
6 m! A- o" y; G0 p+ z* ] dwDebugLevel = 000000008 ~8 r. e! ^' t2 q& _, L$ ^2 f
dwRpcProtocol = FFFFFFFF$ x" F( b# q. \9 }( [
dwNameCheckFlag = 00000002+ W j9 u5 ?) T) x
cAddressAnswerLimit = 0
2 y8 I* E B' \/ d. e* ]' R+ @/ ` dwRecursionRetry = 3
8 x4 N, U% g2 b dwRecursionTimeout = 15" n) ~3 @/ ?: P2 f/ s
dwDsPollingInterval = 300$ }( [ Y, J8 M. t
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料$ k1 b! y( e3 K& o4 L2 k1 W) c% i
fBootMethod = 3 ( Q! ?2 m3 w- {1 @6 q, L. h2 B
fAdminConfigured = 1 , ^: u- e6 e( Q: |" Q: ~" m
fAllowUpdate = 1 2 p4 h' ?& e4 S( j0 ?8 D) f
fDsAvailable = 1
- D( w) r. X& F. V# |: ^fAutoReverseZones = 1 : S e) q n4 z' H* ^9 A. J
fAutoCacheUpdate = 0 - m3 ~9 X5 i2 @6 G' g
fSlave = 0 - C, j% v6 q$ {7 a
fNoRecursion = 0
7 o* x9 e8 m8 ^* FfRoundRobin = 1 6 G; k* f/ |1 r+ J7 _ b3 s
fLocalNetPriority = 1
: Y) { F4 I; z8 ifStrictFileParsing = 0 : a6 `$ {' w q, m
fLooseWildcarding = 0 . X' Q2 a2 ~! u3 T, Z
fBindSecondaries = 1
2 F: ]4 |( g, M* V9 O6 Q) PfWriteAuthorityNs = 0 6 L; J9 ~0 M( W7 t: B2 _5 {5 \
Aging Configuration: * q3 i- y5 V! O3 [( }& H$ K
ScavengingInterval = 0 + u- ~% Z: c! U" u( \6 e
DefaultAgingState = 0
8 w% m) L+ k2 C! {; j _DefaultRefreshInterval = 168 - P; V X3 R, H: L
DefaultNoRefreshInterval = 168 # k0 h6 @6 c# n/ h0 n" P" A/ R
ServerAddresses:
( t s2 P% D9 |0 i& C Addr Count = 13 F3 L# H6 W" l
Addr[0] => 172.16.12.1( n; O' {& k! S7 _5 V( z8 _0 {
ListenAddresses:2 p6 {$ I5 }& P0 C1 V
NULL IP Array.: e! r) G: |2 c3 N6 o
Forwarders:8 I* h) h. o& g
Addr Count = 1" k t, @$ W. i+ {& J' g: y" H' F
Addr[0] => 172.16.4.32 U1 ]7 C# m* e# _8 W/ Z
forward timeout = 5
8 e3 F( _; B+ {7 L; L slave = 0+ J+ m1 L. l& N u! E
Command completed successfully.命令顺利执行完毕
* |! R" A- x7 J4 b 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
9 b' S8 V( ~8 S; S 命令:/Config2 B* U% m/ N( o! u7 R& I2 s
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。) a4 w: ~# @0 Q% r: A
7 k1 A: p6 y. ?3 a
用法:7 ]" r) o! i/ q# y( |" O0 d
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value; d7 w8 N* c/ i" }: ]; c
参数& k, t4 ]6 e% w# _
ServerName :服务器名称,意义同上 ; R/ v* P1 f, V% j6 }( R, E1 q: Y
ZoneName:
" l$ g$ |$ W0 Z* K1 t/ }9 N 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 - x1 A% h: e. ^ u6 V% b7 d
Property: " l5 j& \2 w# ?5 A+ q/ p- y) \8 K' r2 C
这个参数是属性。这里所说的属性有:
/ G: `& `+ v) ?5 j) i 与服务器有关的属性:例如:
+ P# Z/ F0 \. S/EnableRegistryBoot
: ^ m# \1 L- J8 m) K4 a* `. K6 S( ~/RpcProtocol' Z3 N! _4 S1 z7 i
/LogLevel3 B& P0 g) f3 T/ ^, q. O
/EventlogLevel 等等 (限于篇幅未能全部列出)
2 w: j1 J+ n, Q6 Y0 }! }* V与Zone 有关的属性,例如:
+ Y2 F4 ]! {5 T1 y3 s1 ^ /SecureSecondaries9 u; K: {- Y) q& z# F
/AllowUpdate( i2 M0 z2 N. J5 ?. c6 N5 e% {
/Aging
7 x$ @$ ]% n2 L# O2 M /RefreshInterval Value
% a# f/ D }0 {. |# H+ ~$ X) }7 ~ /NoRefreshInterval Value
# d& w& T+ ~4 x2 b2 g4 `9 P 属性值:
1 A, \; \. t* z. m. V6 o7 E0 E! }; W$ [ 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
5 ^" ]% Q( D/ x从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
4 [/ |( H& k3 Z* _' C! z, R( { 命令: /Statistics% w5 `0 M- `0 G( l
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。; j! @5 d6 j) @& t$ n) G9 y/ O
用法:
$ I7 k# }) L8 _ dnscmd ServerName /Statistics [Filter|/Clear]
6 e$ V4 [8 S4 O5 m m7 s( g 参数:
# c. ]* ^, _4 R0 H6 e. Q: jServerName
1 @& f5 X M/ Y. I6 B" @服务器名称,含义同上。
3 B) V5 Q8 B3 A/ d4 k8 L可选参数介绍:$ P" J' C: x, f2 m1 @$ H6 O
共有两个参数,每次只能使用其中的一个。
9 ?0 ~) z" f4 b2 u9 g0 K; @" w5 b& P 1.过滤(Filter)
; f! @" [4 K6 f M" O3 z 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。: t8 f7 p5 }! x! _. s+ R
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
3 s5 x" X( p% p; k: o" c# v 00000001 -- Time# x2 G9 Z6 H( i) u2 G: W# S
00000002 -- Query3 I' J% Y& F) p7 N3 X
00000004 -- Query29 V+ i! a {2 Y5 b/ _) f( _1 [; W2 ?- B
00000008 -- Recurse/ V4 X! T$ f7 P& T1 X
00000010 -- Master9 z M. q3 j1 W: x3 O" x0 K
00000020 -- Secondary" C3 i/ l8 u" e3 R1 Z" g
00000040 -- Wins
* R% Q( j, Z0 U 00000100 -- Update! r5 f! M% F* @2 O0 }
00000200 -- SkwanSec: j) N1 l$ ?- c. Z( P8 o
00000400 -- Ds
5 J1 J+ r! v$ H% c- z3 B 00010000 -- Memory( X8 i8 H, N8 [: r" |5 g
00100000 -- PacketMem" N- Y0 I6 r5 v6 i3 _/ r
00040000 -- Dbase
H6 {2 N4 L8 D' W/ |& G2 g 00080000 -- Records
J7 H' d9 s5 @* J0 q 00200000 -- NbstatMem) |2 _1 N6 s6 b' a) n* P3 _
2.清除 /Clear 2 N& T% g8 Z* c% @: Y7 I. P
这个参数用来清除统计信息。! v, {& m' C& j+ c& Z | [, R
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
$ Q9 e% h, z) V- r9 X5 |) d4 e. [9 @
+ r6 c, ]" v2 V7 Y. H
D: w) m# o" C7 [
|