本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
& L) k3 E( g6 v2 @2 Z* e( G 命令: /Info
/ G$ A, T% ? {, t8 \: d- _7 A 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。0 r* p; P* K, a) y8 G0 x
用法:
5 N7 z; W1 @/ S; y. M! w dnscmd ServerName /Info [Property]
, C4 E b5 l, G$ }4 A 参数:9 S% G2 H* p" ^
ServerName ; C+ D6 R( u( u6 P0 j
服务器名称在上一篇中已经介绍过,此处省略。 - y. |, \. T! q i$ R7 w; U6 b( y
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。2 a' M# e6 V: N; k1 |
下面是该命令使用的一个比较完整的例子:
7 |4 Y: B: d p9 M6 v0 n S B 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
2 z1 d) C5 H, C: v# pdnscmd 172.16.12.1 /info 只使用命令而不使用参数
' C# x, ^- e. V4 T" w$ W输出的信息:. b6 W# S) t, Q+ f' f3 f9 R
DNS Server 172.16.12.1 Information:5 Y1 h; h! _& z( f2 @3 G8 b) k
C:\>dnscmd 172.16.12.1 /info
" ]2 \3 P! {& Z) i9 F" j3 n* E# b- zQuery result: 查询结果
6 W& l; H5 t; [% PServer info: 服务器信息
* J% L: m, V9 i1 \6 a. s ptr = 00074718 端口* I# V) e- }: T7 e+ V3 }
server name = myserver.microsoft.com 服务器名称
5 W( X4 e/ m# A: M( D version = C2000005 版本
- U8 c3 Q9 x8 c DS container = c DS“容器”9 F! y9 N% m1 H# V
Configuration: 配置信息 这些信息的含义请参考有关资料
. r# z8 C5 y/ w/ X C) \+ J dwLogLevel = 00000000
6 A% @1 b( t" U6 w dwDebugLevel = 00000000* d2 z( f2 G3 G
dwRpcProtocol = FFFFFFFF
5 L6 g9 } | [! ^, ?+ G; J) e dwNameCheckFlag = 00000002+ n4 E: W$ T2 G
cAddressAnswerLimit = 0* ^3 {* z2 j' @ {4 s
dwRecursionRetry = 3
/ B. j9 d8 I9 v4 Q" p! w dwRecursionTimeout = 158 u0 b: C" L1 K3 Z/ u3 T+ p# e
dwDsPollingInterval = 300
. A1 G% b9 Z! R: J7 \5 C8 x2 U Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
. a' r& E, J0 g+ D' E; \fBootMethod = 3 9 ^" `/ ~6 Q3 ] ^
fAdminConfigured = 1
I" h) h" y a+ PfAllowUpdate = 1
" ?+ L& |. l2 `4 t/ ~, DfDsAvailable = 1 5 ~& o% a' c$ Q( S5 G6 b4 m
fAutoReverseZones = 1 # O: k, w1 u' t) g. P' L7 ^
fAutoCacheUpdate = 0
7 p: p4 y: t% SfSlave = 0
( _6 y( ]' m+ x1 |5 AfNoRecursion = 0
6 A. z3 `0 Q& ?; f1 ufRoundRobin = 1 2 l5 k! X1 \% p$ n( Y
fLocalNetPriority = 1
% U( i; X: r0 P0 w& l. E7 U+ G ]fStrictFileParsing = 0
$ n9 h. @% K; b8 ZfLooseWildcarding = 0 ' X$ d1 E4 _( N3 z" N2 s& k
fBindSecondaries = 1 1 ^ s; o, g! p5 L
fWriteAuthorityNs = 0 / j% ^; c$ S. U# y& f6 d' w& `1 s
Aging Configuration:
0 S; I. K) P1 q/ vScavengingInterval = 0 + H$ C Q) I! X- S5 i, X
DefaultAgingState = 0 9 F1 ?+ `/ @, P4 r+ e" |+ w
DefaultRefreshInterval = 168
: g. P: `3 z6 |" g7 Z: d( Z! LDefaultNoRefreshInterval = 168
b" p J* q" J3 ^$ |7 `8 l ServerAddresses: ! a/ b* d0 t, F
Addr Count = 1
" ~6 @( |, S4 @! B Addr[0] => 172.16.12.13 z9 c: r# g. R# A5 d: q
ListenAddresses:# B# U" m) t9 d6 I4 w: s
NULL IP Array.
7 C4 H2 B/ s% I# N7 V Forwarders:
* @$ }+ ]+ ?2 Y! v& x Addr Count = 1
$ C/ R R6 }: y% p' x) M: [. I Addr[0] => 172.16.4.3
- w) e: Y* t5 G- e1 u' { forward timeout = 5: ^6 Q* P! V/ a O$ ?
slave = 05 R% ~3 \- E9 n+ y
Command completed successfully.命令顺利执行完毕 & ?) o5 v( Q R( V/ J5 d( G5 k {
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 [" V) j4 ^& m8 V, Q& f) m0 V
命令:/Config# L+ n# l7 S- f2 g# A
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
& w1 S9 i# h( q+ M7 z( j/ o* Z: g6 q9 g2 ?2 w, L) `# Q$ m8 y1 x
用法:3 D0 q5 ~" H6 Z5 s
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value* k" a6 Z# f v/ f9 @9 Q5 H( w
参数
- h. M6 W. I, ~4 s4 B* q6 T- b# g3 k ServerName :服务器名称,意义同上 * v6 [0 ^/ O" \$ L0 W, n
ZoneName:
2 \# j* M) F! y8 S; Y 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 + K3 S) N4 U6 o+ j7 p/ v
Property: # J7 g3 }! b: q0 B1 P* b6 e
这个参数是属性。这里所说的属性有:
6 m3 v" e6 S' v& V) O! n 与服务器有关的属性:例如:0 X9 z. X: F" X; ]0 Y9 ~* E8 u
/EnableRegistryBoot- F9 O: V; ~" o* V7 o) \6 L
/RpcProtocol
; G" Y+ J6 }2 [9 r/LogLevel
' S* ~7 r, K3 }, o/EventlogLevel 等等 (限于篇幅未能全部列出)# J; ~5 F! z8 y
与Zone 有关的属性,例如:
) N1 R2 _% R a; k9 j( c/ j( M# t* W, N /SecureSecondaries
( \8 I2 k+ h5 N2 a7 B! } /AllowUpdate
g/ ]7 l' N) D2 G, a: L* p /Aging- U& d& ]0 F7 z- B& x
/RefreshInterval Value) j m' M4 L; V& R) @
/NoRefreshInterval Value
/ O2 R d# U- Z; }; |" }% k 属性值:7 `% E( P1 y6 }& `/ E: M3 B
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。9 t( |/ |/ X2 K" J; E
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
/ F: K& Y; q Q {* A# z 命令: /Statistics
6 M8 b; s5 x, X% o4 b 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
% B; c) f3 K( g1 `0 c, y( G 用法:# E+ t/ W4 ]4 f" o/ @
dnscmd ServerName /Statistics [Filter|/Clear]
+ i: ^! Y; U9 Q# R) I* j 参数:
- |: N) j0 r4 A2 e2 ?ServerName " i7 \8 T0 o! b1 i7 @
服务器名称,含义同上。
) ~0 k7 S; p4 c可选参数介绍:- ~$ Z5 J2 R# W$ s! C; A. f9 a
共有两个参数,每次只能使用其中的一个。
1 {: h6 T6 t3 G) p$ x& Q 1.过滤(Filter): G' W, H' i0 M) o+ Q- d# W5 ?; F
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
& F( z9 _6 j, B- U, u可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
$ `+ z4 }% s8 T8 b7 r 00000001 -- Time
- Z* |5 `3 R6 R9 f8 ] 00000002 -- Query' {4 o I3 O, z0 ~2 Y) J
00000004 -- Query2* I- L2 t. y3 H+ X! v8 m
00000008 -- Recurse
: J0 s& ?" h; ?9 K; c 00000010 -- Master+ f8 _" j8 K4 J6 H
00000020 -- Secondary9 ~1 T* F. `; f+ X2 [, Y: x. f
00000040 -- Wins
( J( K$ Y% Z0 G# `7 Z# P, E4 I& S 00000100 -- Update
. D& `# W0 t& ] T ?4 y 00000200 -- SkwanSec
+ Q, z: T: P% K$ f( j) M 00000400 -- Ds
5 U3 g; T; }4 p/ y. ?2 e+ R 00010000 -- Memory% R# l2 X1 k" a" r `' J4 f
00100000 -- PacketMem
6 i- c3 E" D; ?7 Q 00040000 -- Dbase' T4 u+ Z$ l3 |" {7 I) N( H7 {
00080000 -- Records
# F: Q9 Z* s- {; s7 p, s 00200000 -- NbstatMem
% _2 m# e) F4 o4 D( r1 G$ L 2.清除 /Clear
( o8 l( G/ k1 n/ H4 _8 m# ` 这个参数用来清除统计信息。, l8 _! e0 _% g: ^, p, \* k( h
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。! B2 u; V9 K2 n/ _( }8 r6 q4 g6 a, o
4 F: U, e: D- [( y9 @- y
: U% X" j' V9 P7 j2 g3 S4 ]$ n& r1 p* Z4 c- p4 L' i; g& w
|