本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。: x, J! P4 v$ V5 f" p5 Z' p. d1 U& {- }/ c
命令: /Info 4 n. C: w' F+ ]! X# h' R7 e& i
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
& y l4 @- R8 M, ?- ? 用法:$ O! k9 z! h M; v1 y% S
dnscmd ServerName /Info [Property] 0 f) `8 t! G) {4 r- B
参数:6 G' J" J& |9 Q8 r
ServerName . ^1 r# z! I8 v6 [' Z
服务器名称在上一篇中已经介绍过,此处省略。 & c! ^- n4 f- e% G+ [9 e
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。. _0 p9 k4 H! C) O p9 u( q
下面是该命令使用的一个比较完整的例子:
/ {6 K. |5 l& l% f: q7 M2 r 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:- p% S* g- t# ], f
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
1 s3 l, }. Y {+ H" T) n输出的信息:
! [2 ?, ?. i3 {* K# P+ S: _$ mDNS Server 172.16.12.1 Information:; D+ t9 P* j( u. B3 e
C:\>dnscmd 172.16.12.1 /info6 H( {2 @5 U+ e o
Query result: 查询结果8 s! B( Y- _/ N
Server info: 服务器信息 @1 O2 n7 s1 k) ?8 M7 x
ptr = 00074718 端口
/ T, o7 ^0 n) N1 q; d) X6 @ server name = myserver.microsoft.com 服务器名称( O* p4 m [; b; |& A
version = C2000005 版本
$ o. }4 y; |# p. j9 n DS container = c DS“容器”. H) k# e _) W
Configuration: 配置信息 这些信息的含义请参考有关资料
( n# _8 D }( a6 g dwLogLevel = 000000005 ~& s4 b4 ]/ c" ^
dwDebugLevel = 000000002 D- A$ o5 _ m+ `, S9 N6 s$ h/ C+ W
dwRpcProtocol = FFFFFFFF
- x7 x% y2 c8 |% S+ }* B3 r# l dwNameCheckFlag = 00000002
- M8 J8 ?4 a/ ^ cAddressAnswerLimit = 0
& g$ |; p+ z3 W dwRecursionRetry = 3) v8 A( p3 h8 }: f3 n
dwRecursionTimeout = 158 a# j( j$ P* D0 t4 V; ^
dwDsPollingInterval = 300
9 p; u8 c) h5 J7 T Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料# \, z5 ?; \/ s& ?
fBootMethod = 3 % v6 a6 `. }$ D) ]& F, E8 A
fAdminConfigured = 1 3 U# Z- i, c! w7 N$ j
fAllowUpdate = 1
$ C( A/ @ D% x3 {5 u- f/ I" vfDsAvailable = 1 ' }' b$ s, M4 l1 V# R( z0 j
fAutoReverseZones = 1
) T' b, d7 s3 A% y3 u- {; xfAutoCacheUpdate = 0 9 P0 z" E6 X5 @
fSlave = 0 ' d7 B u& s6 a: }
fNoRecursion = 0
T2 [6 L5 d* b" ~& nfRoundRobin = 1 , W) B- e3 n" t L
fLocalNetPriority = 1 + S. {" I7 z) `
fStrictFileParsing = 0
+ ^" F+ T2 L$ B# g' N! `2 R8 _fLooseWildcarding = 0
* E% P/ w, f5 Z' K, YfBindSecondaries = 1 0 `6 C6 U, y+ d
fWriteAuthorityNs = 0 % }) }7 L& o" e, i) j9 d
Aging Configuration: / C, @0 {2 ^0 x5 h" K. L3 q+ W
ScavengingInterval = 0
; c6 m6 u! R- C) C, `DefaultAgingState = 0 2 @4 {4 J& K \ J# d, q
DefaultRefreshInterval = 168 ! ]( {; }& U. z! R7 h( `
DefaultNoRefreshInterval = 168 $ C8 F" G% m) T& ^4 `
ServerAddresses: . Q2 f7 r y% m- L
Addr Count = 16 |% R# ^& B) n6 k# H
Addr[0] => 172.16.12.1
2 o$ t4 ^- h" ?" Q0 z8 {0 F7 M: e ListenAddresses:
: \6 }# \; q& W& D NULL IP Array.
/ t) [9 j7 w, v Forwarders:
: q! F( K4 A3 `5 F- d" l% T- o Addr Count = 1) ]; I# g8 [. u H" B* g2 \
Addr[0] => 172.16.4.3! p8 T& i: H" X) {) t' u/ s! L, _
forward timeout = 5+ R* [% q: _+ c
slave = 0* [" ~5 x* i: r x; m
Command completed successfully.命令顺利执行完毕
; g- o- m& l# c5 n+ R3 J3 G 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 , J' u7 m% | c& _# s; e/ j0 \+ a% f* _
命令:/Config. e, x) I+ r& M1 i
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
3 Y8 Z& f6 Q( F- {1 S1 ~: d+ X/ w$ v7 X( l- m) k$ y6 j
用法:6 [2 g7 F. |* j3 A8 g
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
0 ?( [! U ~# [, i7 n 参数
: h* H5 l( b2 A2 t2 Y ServerName :服务器名称,意义同上 - f3 z; ?5 Z! U1 b" Z
ZoneName:
/ g! \9 J. S" @5 o 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
& V* `5 X9 }, k" `; \) Z- @/ P6 i Property:
* f6 _% [" n, s* V0 I! b 这个参数是属性。这里所说的属性有:
- ^- g4 g8 c9 V 与服务器有关的属性:例如:3 x- g7 k$ H; `% v* {9 V" Z
/EnableRegistryBoot) I a6 ?" K! d/ p2 I) A0 m
/RpcProtocol* V4 d* I# M- b' A/ {& R) r
/LogLevel9 R }% `9 o$ H% f6 x
/EventlogLevel 等等 (限于篇幅未能全部列出)
0 [2 T" d6 m! q j$ k与Zone 有关的属性,例如:
: Z& N, n. M6 l i+ k e9 _ /SecureSecondaries
. S. i4 m6 s' ?: G+ a/ e /AllowUpdate9 R( _/ c( `7 o- j( h# s6 j
/Aging
' [) W1 A" r) G/ ~, C/ Y7 L; V /RefreshInterval Value
. r6 C1 c, `4 a" d /NoRefreshInterval Value
" d) i l# |+ I# t 属性值:
! s- S& B3 ~2 U, a. I 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。3 A% h, | c* b7 }, O- a
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
" [: v, @; D5 Z7 n) k& ?4 [ 命令: /Statistics
- q: b: x+ p- y2 _ 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。+ b; L' g2 b! C: D: F2 ]9 E
用法:1 R! z7 [0 f" G( d3 j/ n
dnscmd ServerName /Statistics [Filter|/Clear]
* N4 V. d+ v; p+ `6 `/ R 参数:
) a+ ^6 T; z/ w: gServerName + j" {) j _5 j. y! W. }: e
服务器名称,含义同上。
8 s! ?+ N2 Y2 ?" b% ^1 ~可选参数介绍:
0 ?) Z6 J( S" {" q4 @共有两个参数,每次只能使用其中的一个。, i; z7 t7 o1 ]9 W7 c
1.过滤(Filter)) H. L7 H5 D6 J
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
! L' l- ~1 @( U c- U+ S可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
( N, J" U. e9 f0 ^! t1 l# [; I 00000001 -- Time0 f2 B$ ?0 ~* O; c
00000002 -- Query
# B/ Y3 w( M9 t' s. J+ Q 00000004 -- Query2
7 }2 O# s- [, n+ E- \4 o+ b 00000008 -- Recurse9 p# E' X( L2 m: O; o: t
00000010 -- Master* }4 r# n. F3 Z2 r8 b
00000020 -- Secondary- w4 V5 p/ a ~6 _0 O, T
00000040 -- Wins9 a: A+ z _7 @& y9 e7 N. o
00000100 -- Update @8 [# {+ C3 t8 ~$ v/ I$ ^
00000200 -- SkwanSec5 i4 r3 a- H) A9 Z& M
00000400 -- Ds! M! ?9 s: b: p
00010000 -- Memory$ ?) s" k) G* Q% \. T1 z. t
00100000 -- PacketMem
6 c0 I8 Y, v4 }$ Q; b 00040000 -- Dbase( m1 q7 v$ w5 P
00080000 -- Records4 ]7 J; F9 ~0 F' a, @6 H
00200000 -- NbstatMem
& t ^( f9 |7 C' F 2.清除 /Clear . w* q! Z/ A1 a! }9 Z8 {
这个参数用来清除统计信息。/ }' L4 K0 m2 y" {1 A+ {9 h7 |2 J/ _
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
9 u9 u* ?9 U9 S% h, m7 f
" i2 e: p5 o! C
, c9 V! V/ n& X$ |: |$ w1 A) e, X0 }9 _3 x
|