本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。* N6 J6 d" g( P( A3 l& i
命令: /Info
# c, }5 d) u5 t. x* L 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
g$ W: j7 F7 H0 m" c0 A* S 用法:! z- f7 p; C k
dnscmd ServerName /Info [Property] 4 Y6 P+ `0 Z0 Q" |% e
参数:9 I; E3 w" w" J2 y+ H
ServerName
6 t8 G. Q9 ?! P4 \. N6 f 服务器名称在上一篇中已经介绍过,此处省略。 - b3 O7 C& ^/ y$ N' L/ \& z
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
! L3 h7 ^5 d3 b! Z& E3 b6 x 下面是该命令使用的一个比较完整的例子:1 e: ^( R, p8 i$ Z5 y! @8 v. v6 O
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
5 V v0 c7 z; ^- qdnscmd 172.16.12.1 /info 只使用命令而不使用参数
5 P9 S( Z9 v; I; O; x& q输出的信息:
- A4 r2 T3 Z& g0 h7 zDNS Server 172.16.12.1 Information:
+ y# y8 V1 e9 B: tC:\>dnscmd 172.16.12.1 /info ~1 q+ y7 D( ]
Query result: 查询结果
! c& h* A& {# O% G& n* \9 N0 rServer info: 服务器信息! f* s; v0 T7 j1 H& G
ptr = 00074718 端口. q7 {% Y! V3 Z' P" w
server name = myserver.microsoft.com 服务器名称
. Y8 [8 p0 v9 _. R version = C2000005 版本2 l7 K/ {. X' o' y6 i. T+ a
DS container = c DS“容器”0 I3 g6 H0 [* D9 V
Configuration: 配置信息 这些信息的含义请参考有关资料. t" B; M7 O; F* ? o( O3 t/ v
dwLogLevel = 00000000
) x' K+ }6 K& @ dwDebugLevel = 00000000- O1 Q1 l3 f* J' |! H5 O, ^
dwRpcProtocol = FFFFFFFF6 r8 k) T; F( I; F# n0 V5 s
dwNameCheckFlag = 00000002
% E( u* s. a" g2 I cAddressAnswerLimit = 0* o5 h. U: y3 f$ l! _: L
dwRecursionRetry = 3
' ~9 R+ B2 a. q, ^ dwRecursionTimeout = 15
: m5 Q) [# N7 J. I$ Y dwDsPollingInterval = 300
/ F! C* a. `( v z Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
5 I1 H9 b! M6 B% x5 l, E: RfBootMethod = 3
- M9 f' _; x+ H q* T& `fAdminConfigured = 1
+ n( C0 F1 m$ nfAllowUpdate = 1 ) O: d, t# F* `: X, |) X( ~3 E( h& h
fDsAvailable = 1
5 U7 K1 c* S* F, NfAutoReverseZones = 1
; |8 {1 Q* {- p7 hfAutoCacheUpdate = 0
7 W) }& Q- X1 Z, W( ?; A1 C4 q/ l1 kfSlave = 0 / r# O; e5 Q3 G J8 e
fNoRecursion = 0 ( f& e: @6 S$ @+ R) T. [
fRoundRobin = 1 6 B# U0 @! n* N9 Y- G) ]- g4 ]
fLocalNetPriority = 1 5 s" H. ]1 O& M$ p$ d0 M; `/ H
fStrictFileParsing = 0
! K: h F& g% I& HfLooseWildcarding = 0
: B- z5 a L6 V! `$ a6 F! RfBindSecondaries = 1 * M9 \; Q7 S% }1 r8 {
fWriteAuthorityNs = 0
! f2 X( l7 ? k5 z- k' e* P; CAging Configuration:
5 B, t p {) Z; S v- F) EScavengingInterval = 0
" Z2 O2 t! `6 G+ D. j- T. s6 {DefaultAgingState = 0
m, l2 b2 W0 g1 |4 H7 D7 _DefaultRefreshInterval = 168 5 i- [8 P( j7 q
DefaultNoRefreshInterval = 168 $ D; F+ X5 U V, V0 K. q- @+ x
ServerAddresses: - a# M" G5 a) T0 X; t% U2 ?
Addr Count = 1 O6 \: J" e K
Addr[0] => 172.16.12.1
# W6 k- a" q( z' H2 D+ R ListenAddresses:+ T+ b4 W* r2 V) M3 L6 r
NULL IP Array.
- E- m# h% o3 f4 a* @( b Forwarders:
# t, q9 {# s* b Addr Count = 1
' O6 @% N) g) ^# L- q Addr[0] => 172.16.4.3* i0 i, `, ^' J1 a( E) p
forward timeout = 5# O" l5 C, g4 K/ \/ X
slave = 0
Q3 S: `$ P2 \( a. J; jCommand completed successfully.命令顺利执行完毕 5 o4 h) ^# i' ]; t7 v+ T
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ' ~# p% D+ Z9 w& F
命令:/Config
; X+ e7 w. X k L$ w; v$ b" M 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
( g% W. V8 V" c3 s" H7 p$ K* w) O$ G* Y. ^, H6 f$ Q
用法:3 P( P$ V2 r' n
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
4 g; c- D5 u- ?- }3 g 参数
7 B3 N2 G7 v# Q' A ServerName :服务器名称,意义同上 ; _& t' O" ^& q: h" @, ^
ZoneName:
+ K$ J) O' m$ p! I4 F4 w 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 , q/ b, Q+ S+ M
Property: 3 y9 l9 v: b1 C2 F8 a6 r W( w
这个参数是属性。这里所说的属性有:
& I4 I6 _4 _$ M7 `& ~% { w 与服务器有关的属性:例如:
2 S8 m2 {* r2 [) | X9 I; h$ Z/EnableRegistryBoot4 V Z" H& b Z) t
/RpcProtocol& v5 |& h* r9 u
/LogLevel
' e2 c* T+ G' w* k2 L) F, N# x, d/EventlogLevel 等等 (限于篇幅未能全部列出): E) {' V: ]/ G; ^$ i8 _
与Zone 有关的属性,例如:7 N2 o: }$ U( L: Q" R3 w |6 H; o* k
/SecureSecondaries- u7 g( m. D8 @8 r- W* v
/AllowUpdate b9 m/ G+ z) k1 Q+ }$ y8 |& x- q9 x
/Aging
* ?# g# S8 R/ e% g /RefreshInterval Value& D2 \4 @' E" E9 L( o
/NoRefreshInterval Value
5 l& T5 |+ x8 E2 q+ p) L 属性值:
& a7 \2 w x; h# A: n4 Q 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。4 r: v* s3 [4 p% O/ j* b* h; e
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。( x2 A% s& M( w, Q/ M
命令: /Statistics* Q8 M0 _' j1 r3 `* l2 k
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。3 Q$ k$ y4 Q/ s m* K
用法: ^. ^0 E$ J4 ?4 O- ]' K! j1 S5 o
dnscmd ServerName /Statistics [Filter|/Clear]2 z: B" |, S3 Z" Q
参数:9 `* E2 w# d8 \. z1 ?. n
ServerName 2 i) M( C$ G' {5 ]
服务器名称,含义同上。
* N/ G( D/ K' u& L3 N可选参数介绍:# ]( F$ I+ X' j3 W
共有两个参数,每次只能使用其中的一个。
7 ^/ h$ m5 I" {! Z& _$ D3 n O 1.过滤(Filter)7 r8 A- [( \5 q/ `6 {
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。: V9 S! k( h7 }0 N; F: R5 |
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
. O) H* ]1 W, z 00000001 -- Time
" u) n6 R7 R; K7 f, k 00000002 -- Query
5 f' |7 c1 _1 [% q 00000004 -- Query2; U9 O% N% M, M( J
00000008 -- Recurse, k6 P# \* v1 ~' @3 T
00000010 -- Master7 ^1 J" q! e7 C' Y
00000020 -- Secondary
+ p: t7 u1 u8 } 00000040 -- Wins
( ?5 I) ?( |# ]) J. N8 H0 @ 00000100 -- Update
/ z9 i4 }9 \1 e0 X3 i$ ] 00000200 -- SkwanSec
7 Z, t/ Z! s4 | 00000400 -- Ds9 F+ o5 P/ w# D% {8 ^: W
00010000 -- Memory. q" _: H7 s. y& t# E* O
00100000 -- PacketMem& d W7 i( t# l, O
00040000 -- Dbase( \" U) x9 |2 o% `
00080000 -- Records
2 C$ T1 N. K- x 00200000 -- NbstatMem! d' H" r! Q4 f( a, e( [0 o( T
2.清除 /Clear
/ `) B' n, ^3 e0 C, I* Y, r 这个参数用来清除统计信息。# Q+ n3 Z: Y5 e! {7 U# F! R4 \7 x- ]
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
3 Z/ P/ g' P5 b; j) v' n' P
^6 I5 m2 u. G' z! m; y" Q 6 p' R3 M. W4 a( B% I! n0 z8 J4 b1 ]$ `
5 E h L7 ?( e# x9 b |