本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。! q7 ~" Z$ W. _+ l1 }
命令: /Info $ W, B" A0 D5 q1 o; Y
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。8 T8 v: K0 R& Y u: O- W8 n
用法:
1 H' U! X! o( A) P dnscmd ServerName /Info [Property] % ^7 v" l& g; b' ~
参数:
* ~) U3 M& b7 Q ServerName
# v# d& l( U C! g4 l/ T 服务器名称在上一篇中已经介绍过,此处省略。 & {* w0 D7 w9 ~# o
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。# J9 |, T* n9 }) R
下面是该命令使用的一个比较完整的例子:8 w% B8 g& p6 u$ e! Q. G/ j! Y
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:4 n- N- o+ M b5 _+ o
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
. d6 @! }* w) b& V9 j$ q C1 P) d输出的信息:
: ]1 d& @) l% ~DNS Server 172.16.12.1 Information:
+ z0 y$ o4 E% L* m( yC:\>dnscmd 172.16.12.1 /info: O$ l( u# g9 r. h
Query result: 查询结果 D: x8 c0 D- J% {0 q
Server info: 服务器信息
Y3 I3 X1 o& o1 [ ptr = 00074718 端口1 y9 ^ @5 T6 U7 L- H. K$ q
server name = myserver.microsoft.com 服务器名称% h# e( |! q+ S: m6 k3 H+ ] f
version = C2000005 版本) ~5 Y* y9 A! P4 b% Q! G
DS container = c DS“容器”
; M7 B, [+ _9 u" b. d' J9 {$ D5 U Configuration: 配置信息 这些信息的含义请参考有关资料
5 i, V. E1 a% M7 w6 }0 Y' x dwLogLevel = 00000000+ |, E: }5 X9 ]* D: R- d' G) F* {
dwDebugLevel = 00000000% w* m& X7 x' h$ K! l, Z/ z9 r
dwRpcProtocol = FFFFFFFF
+ s m: V( J: H dwNameCheckFlag = 00000002( Z. [4 {. g5 x5 t6 O0 A& c4 C+ i* i
cAddressAnswerLimit = 0
* a6 M y, y. x- b1 s dwRecursionRetry = 3
7 ~- |4 P8 {2 O4 h. g dwRecursionTimeout = 15
1 ^' c m9 S: e2 @+ m" ~ dwDsPollingInterval = 300
4 ]8 j. ^2 q$ g9 E" |! _0 X8 f Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
1 e$ p$ \" Z) ], ^fBootMethod = 3 : J( I9 Q6 m( }$ b& n/ {
fAdminConfigured = 1
; T, `1 L- q& e0 M* X: t# {7 K1 VfAllowUpdate = 1
. @: d6 Z0 |4 s( b. d. DfDsAvailable = 1 / Q- M' ]5 c" Q
fAutoReverseZones = 1 5 }, G3 n# F5 q4 p4 b
fAutoCacheUpdate = 0 & q5 K- A3 }4 x' b; e) M3 d# k
fSlave = 0
' w' ~6 Y# ^3 ]4 _# p f7 w( [fNoRecursion = 0
: A' m6 k8 A$ B' N5 B1 F, i wfRoundRobin = 1 ! A+ b9 c4 |( O! b$ S. M2 |
fLocalNetPriority = 1 ( J2 ^& E" a+ Z
fStrictFileParsing = 0 ! ]* F+ B+ C. B
fLooseWildcarding = 0
( w1 @! m+ C u3 MfBindSecondaries = 1
. [3 t4 p7 `4 BfWriteAuthorityNs = 0 2 i) L$ X4 y& T4 D1 i
Aging Configuration: z* g# I% Z* u5 i# E7 y
ScavengingInterval = 0
+ a. v2 Q" @6 W. Q# BDefaultAgingState = 0 + }1 I G o* }( u+ D% p! T7 j
DefaultRefreshInterval = 168
) }) U* j- I9 b$ D+ x% H+ e& w) EDefaultNoRefreshInterval = 168 - S# h9 C- `0 `% Z+ S, j+ \
ServerAddresses: 6 `. A, b3 I m0 y3 G+ V
Addr Count = 17 l1 H/ f' g& v. L# | H
Addr[0] => 172.16.12.1
7 m7 ~7 V1 r! C# Q ListenAddresses:
7 ]5 V' h: x: y; m; N2 f" y NULL IP Array.$ E9 |- B3 M' N! k- K
Forwarders:' w& o6 n1 ]3 f) {/ J- a1 X( J
Addr Count = 1. t5 S+ H& {3 f* M- \7 q' V
Addr[0] => 172.16.4.3- F% o! f L% E8 X) {( Y) X
forward timeout = 56 r0 t t4 R5 P& ~
slave = 09 M5 v1 K; W; c* v4 Z- \
Command completed successfully.命令顺利执行完毕 - u% |0 n! o# [! w3 T! m
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
; B( ^% g; P3 |* N$ y. K7 q 命令:/Config
- v7 F. d! g4 i( K; h/ {$ L 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
M+ e" s# W3 q; w' ?4 U: w: {% G8 j
用法:/ L- a9 S* L9 ^4 Y4 B
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
: c! k1 T) w& H" V 参数
5 j. E5 G5 e* f, `( e/ G# \ ServerName :服务器名称,意义同上
& t6 ]) a5 [0 t9 U ZoneName:
, {: k {8 }- g9 d; @, J/ n 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
" V! c4 |. ?8 [. K( M Property: 8 g2 t# @, u1 N. p0 e' k' \6 V$ R; i
这个参数是属性。这里所说的属性有:) m2 D( l* l2 ]/ y; ~& B
与服务器有关的属性:例如:
# F/ A( n5 d" O0 {* K/ `; O" F/EnableRegistryBoot
" h; u }; v" Y3 z) R* S" o$ d/RpcProtocol; L% m" k/ F) P. T$ j
/LogLevel
( g/ g5 p4 o. O/ A8 a% V# @! ~" C/EventlogLevel 等等 (限于篇幅未能全部列出)# [1 M5 S0 e. J5 m7 }# m
与Zone 有关的属性,例如: ]& g7 L( x3 Z! n" I/ M+ z9 {
/SecureSecondaries8 ^! C( _2 v/ Q$ E
/AllowUpdate: P# a3 c; W8 L
/Aging
8 n- C; S8 M: D& }& ~3 V; n /RefreshInterval Value
& }# b: y8 A8 L$ H) u1 Q /NoRefreshInterval Value2 l |3 X& k3 c. o3 z
属性值:, V l8 [4 H! z
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
2 S* G" m9 _4 Y/ n; u. S2 q5 V; k从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。9 h3 P% x6 D7 p- S: y7 i
命令: /Statistics
1 c$ i, S5 T1 I) E 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。7 E* \' x( ?& W) M5 w3 d
用法:% d+ o+ `/ Y0 X
dnscmd ServerName /Statistics [Filter|/Clear]/ t: u' c5 p+ I6 k g
参数:5 _) m/ J. b6 A5 H" M, w) F
ServerName 1 G r! m9 y/ \$ Z! Q W
服务器名称,含义同上。
' f7 ~. Y) s2 \* P+ `& W可选参数介绍:7 x/ x% m% N) C
共有两个参数,每次只能使用其中的一个。
4 C) `1 R! b- o/ |! e6 S 1.过滤(Filter)
$ V# h7 w7 y4 W$ O( }5 Z t: g 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
! o3 o& W6 u3 J4 e可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: / A3 w, b2 a! J" M e! I2 X, v
00000001 -- Time1 b5 F: K) {) |1 x
00000002 -- Query0 d6 A: [9 ]4 Z0 i8 t2 ^7 ^
00000004 -- Query22 U9 u9 W2 k* P) V3 J
00000008 -- Recurse
" N% @+ I# X; ~' H: t) `3 R) R 00000010 -- Master2 h3 m3 i2 n% Q7 `
00000020 -- Secondary
% _' }% F' ~4 @ t7 Y 00000040 -- Wins
+ ]' R" Z7 t F( o, t# S/ V 00000100 -- Update
# B$ J: t V+ |/ I6 c) |; l 00000200 -- SkwanSec* w8 M. k5 |4 U8 B3 z
00000400 -- Ds) Y8 r* W/ K: v# u4 I
00010000 -- Memory
' S3 k! P0 U4 C. j. y1 j 00100000 -- PacketMem# Q+ V9 G; E' e; h$ X
00040000 -- Dbase
* O- R2 b- z/ u3 L. D, N 00080000 -- Records- l. [' a& [5 L2 U
00200000 -- NbstatMem8 }$ c) ?; f @$ c
2.清除 /Clear . O* ~; i/ Z6 n! l
这个参数用来清除统计信息。
3 _% t" I3 `& d3 e# a8 H4 Y% m1 b8 e 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
; ~; R' B F! d. [* l8 K0 B; Q7 u3 @$ l; X5 q
; ^# ~+ O1 l/ [
7 f/ {6 o" E0 n; E. R. r1 i7 H8 M |