本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。2 h2 K4 s4 k3 ^7 Y: k$ x2 G! v
命令: /Info
# V+ n' @- @4 g, n: O$ `3 W& m 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
/ T" @6 T8 h" C 用法:: I; v6 ^& i7 m7 z! l
dnscmd ServerName /Info [Property] 6 P8 |) ?8 s$ W
参数:
6 k- D! r2 O" A ServerName 6 ?/ L( ~' o0 y% t* A
服务器名称在上一篇中已经介绍过,此处省略。
" y0 b! }& b+ E2 W3 E- Y% X+ I& k [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。/ o' O9 X' f3 o; T% ?
下面是该命令使用的一个比较完整的例子:0 d2 L1 M# \; H2 j/ @% o% w
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:0 J2 s* j F v! c
dnscmd 172.16.12.1 /info 只使用命令而不使用参数9 l* {5 ^0 e7 s/ j+ c5 t
输出的信息:
9 h4 q; q1 }- o3 _DNS Server 172.16.12.1 Information:$ b# I) ^' z* h8 Q
C:\>dnscmd 172.16.12.1 /info
& B" w* D0 y$ P* {7 bQuery result: 查询结果/ h0 G( S' s% a8 A$ E# d( F
Server info: 服务器信息- N9 `+ ^; ]/ k" \, ~+ ]
ptr = 00074718 端口
2 D8 b) {5 f- z+ c8 H6 t( y server name = myserver.microsoft.com 服务器名称
6 v% A: v t5 f: p7 r0 m version = C2000005 版本
. w& U# k$ `8 |% h9 z2 F( ] DS container = c DS“容器”% Y9 d( c7 W( d8 g
Configuration: 配置信息 这些信息的含义请参考有关资料
' ^5 F# j- m& B& W dwLogLevel = 00000000
9 } D& P( H* i! N3 U" n1 i dwDebugLevel = 00000000
1 h( M: Q% e5 u& [. F' a0 L dwRpcProtocol = FFFFFFFF3 B# ~ t$ Y9 a, i
dwNameCheckFlag = 00000002
6 |+ M7 J3 q1 l0 z' k cAddressAnswerLimit = 0$ z- }% Y- A: g, k* D6 l# @: E- E
dwRecursionRetry = 3
! b8 g+ C9 u/ Q; m1 w: p dwRecursionTimeout = 15
$ u% V) }0 s& z$ f3 s; k) F dwDsPollingInterval = 300- _0 i4 L6 G, l1 U/ M1 J; e
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
4 ]# q# e- v& h# k2 GfBootMethod = 3
, K* g8 @5 n2 H+ H; c( YfAdminConfigured = 1 {% t5 h9 A( y) D
fAllowUpdate = 1 7 E" F W' @4 M% E
fDsAvailable = 1 + d8 X8 J6 T( }( |, r
fAutoReverseZones = 1 6 I+ s8 Z. I; u; l# O# v" G- Q
fAutoCacheUpdate = 0 ( H1 V8 I1 [& F' N+ i
fSlave = 0 " @9 `$ p3 x- g$ @' a8 G: @) j( e& k
fNoRecursion = 0 w0 |2 \, G/ N. a) j7 M% n
fRoundRobin = 1 3 G/ a9 C+ Q1 A
fLocalNetPriority = 1 % {. r) |( k& @! W2 H$ i
fStrictFileParsing = 0
b7 ?2 J3 T: p& h5 m, xfLooseWildcarding = 0 4 e4 {; M' K1 `5 n4 ?. T. k
fBindSecondaries = 1 - p+ O A% M0 C0 f
fWriteAuthorityNs = 0 ; _: v9 h8 Q2 a' _2 T
Aging Configuration:
- e, d& i# }: i- PScavengingInterval = 0 8 b" M) O3 Y/ R4 O) A- D- K
DefaultAgingState = 0
( s v a! b/ v0 v: i1 Z- N: m2 ?DefaultRefreshInterval = 168 , J& ^- Q5 M: {& b1 K( i8 | O
DefaultNoRefreshInterval = 168
) L" k. d ]8 Q/ Y+ ?9 k; v1 V! g/ y ServerAddresses:
/ D# P) |6 p& ?5 a8 U Addr Count = 1' X$ A# T9 u+ W0 W
Addr[0] => 172.16.12.1
, x" I7 S$ ]5 X- u2 ` ListenAddresses:
" f) {: v! p1 Q NULL IP Array.
7 Q. J; ^: W1 ?9 {# {7 } Forwarders:5 K( _& N/ r9 m- d- S" ~
Addr Count = 1
" B# M+ s0 \! F Addr[0] => 172.16.4.3( @* c- q f8 X+ i% g8 T% l3 V- c
forward timeout = 5
% f% X3 z, a9 _% | slave = 0& ~/ {9 c) A0 \
Command completed successfully.命令顺利执行完毕
9 x3 g& o; N* i6 i 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 + p0 D& j0 E$ q" P8 z( z' ]3 U" ~
命令:/Config
& ?, m( X* d# r 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
3 v2 N" j5 {3 p2 ]8 G9 v8 d, t# i- u" P2 Q' P
用法:
# N/ R& u0 c" Z* \# v, l: \4 O, \ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value: V9 [3 I/ R) f, S& F! B
参数+ N8 N- K- U9 m3 ]
ServerName :服务器名称,意义同上
% Z Z# M, w" R ZoneName:8 k. t4 ~ T r" h6 Z
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ! P! T* e/ y4 |5 V; q6 B1 m/ h
Property: s/ U5 {/ v" W6 e' o5 p
这个参数是属性。这里所说的属性有:
: Y* w6 E* L- V" a9 h2 Q; w- A7 y: C 与服务器有关的属性:例如:
& @: O' l+ T1 x/EnableRegistryBoot' ^. K' R4 ]; I n1 Y
/RpcProtocol
. f! F8 s1 ?, O8 f8 k6 m( i/LogLevel
# S% z z% }/ A$ K% a/EventlogLevel 等等 (限于篇幅未能全部列出)
! r {9 {( Y5 o与Zone 有关的属性,例如:
0 ]0 H% Y6 k% a /SecureSecondaries
/ _' E L" b1 D /AllowUpdate
6 P. H; x, K ^0 Y; n6 v' I7 H1 ] /Aging
8 b$ q& ~5 ^) n1 r( d4 } /RefreshInterval Value
4 j. Y7 ?, t8 r /NoRefreshInterval Value
, F& ]4 g7 I5 v4 w& d$ z 属性值:1 L: j3 z7 U9 \, ?9 q
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
- [" ^+ {( f- c( i从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。- ?4 T% A2 q3 i
命令: /Statistics U& t9 R; i$ U4 q `
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
% R8 S( Z/ [$ c; [ 用法:8 v: c2 e4 E' R2 g
dnscmd ServerName /Statistics [Filter|/Clear]
) M; V* d( i+ v& E' A6 b9 v, q0 y1 q: ]4 U 参数:& P5 a2 D' ]6 W9 |' t
ServerName
# P1 g# |* S7 M5 B/ ]0 B服务器名称,含义同上。
5 A8 |4 F. I! p2 t5 ?$ y) Z% G& E4 ?可选参数介绍:" I0 B& E- q! B0 e
共有两个参数,每次只能使用其中的一个。
3 I7 Q4 Z; ~6 g2 K0 V" ? 1.过滤(Filter)7 B0 W8 `8 G/ w, n
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
3 B/ ^5 B z% H可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
) v4 A% _) |# A5 H4 _# t! q 00000001 -- Time- U) q6 `9 b5 @: A3 ^1 O Q
00000002 -- Query
9 q+ h; D9 c* Y0 } 00000004 -- Query2
5 q5 ?* ~! {5 r9 b/ G* k5 j 00000008 -- Recurse
7 T5 N2 n7 i! j2 P3 |& ] 00000010 -- Master) @" j7 M5 M- {3 d' \+ ^# \
00000020 -- Secondary
( e& k0 |0 b) L8 g8 r% W$ w1 E5 R 00000040 -- Wins, ~9 ^/ \* D1 _. x9 u6 K
00000100 -- Update
# g8 N+ C* \/ Y K( K 00000200 -- SkwanSec) j! \0 e9 ~# N2 U* S2 P
00000400 -- Ds
# B; ~8 z( s& T k8 A! l5 r 00010000 -- Memory: B! a) k# u0 X5 f: R6 `7 B4 B
00100000 -- PacketMem$ l k1 F# e, a. T6 z p
00040000 -- Dbase
8 @4 }, ]2 l! F" ^2 {1 c 00080000 -- Records' r1 G) ]- t' ]1 \
00200000 -- NbstatMem# N( Q- `# G. l- y
2.清除 /Clear
$ ?! k$ ]- W; J* B1 g 这个参数用来清除统计信息。9 ]" o+ \4 K& p& U1 q& N$ M
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
. s" M$ _2 t' f* W0 A# F6 q) H0 s2 b5 ]! V7 b' j* `% a. F; c1 M( r
# i D v; I: m# i* J& H& t1 }3 y" M% \9 f
|