本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。% H9 N0 g( H8 r6 v/ z4 m/ z1 {
命令: /Info 1 Z% m* G* o: }6 P. }
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
' u& n% ^3 I' [* t 用法:% e( x. L. d& @* j, t) u9 t
dnscmd ServerName /Info [Property]
8 Y3 y$ w5 g/ k U" D 参数:
. ~5 Y, S d6 _0 N! P1 W ServerName # e3 d' P: b! N7 D) y ? I" Z
服务器名称在上一篇中已经介绍过,此处省略。
4 ~9 i. e* O- r6 p% u2 V [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
1 r" g2 L% {3 b f2 u+ a 下面是该命令使用的一个比较完整的例子:& r1 k9 p& d- S+ l2 U2 ?# A( @, r/ n4 A
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:0 P7 X5 g! [3 g
dnscmd 172.16.12.1 /info 只使用命令而不使用参数( r9 J- C) g1 X( N6 P: d
输出的信息:
% X3 b/ b. c3 p5 L# ]DNS Server 172.16.12.1 Information:
) ?+ m" C: O' }/ W* Y+ C/ B, i1 kC:\>dnscmd 172.16.12.1 /info- u9 G. u$ x( {3 |4 q% O/ ~
Query result: 查询结果
( a7 h! X; C1 \ RServer info: 服务器信息+ N4 q& c* ^- E& q% U
ptr = 00074718 端口: _+ r, O) h) r( |+ ?
server name = myserver.microsoft.com 服务器名称" r! }/ u8 [: X$ N2 v( c5 C
version = C2000005 版本
2 u8 _$ m# F4 M DS container = c DS“容器”8 N) W0 m& j8 T0 D4 K! n0 ^
Configuration: 配置信息 这些信息的含义请参考有关资料
. _, e$ h4 C9 W. [: l dwLogLevel = 00000000
* K3 {9 `9 I/ m2 ~$ j, Q8 _. h dwDebugLevel = 00000000) H0 _5 B: y' a9 H
dwRpcProtocol = FFFFFFFF
, O' K- u* y' J dwNameCheckFlag = 00000002) D' D( X0 j ^& |
cAddressAnswerLimit = 0& m0 {( o# P& G6 G4 z
dwRecursionRetry = 3
3 l4 O3 K& T/ I# l/ w1 @ dwRecursionTimeout = 15
3 Q f- M+ J; z/ p5 u% c dwDsPollingInterval = 300 p1 B& ^0 S, P- j7 }( p
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料9 ~& n4 u! c# o" b
fBootMethod = 3 ) b) N* a: f# z r; ?8 E
fAdminConfigured = 1 ' e6 L: j( h, r) c/ E
fAllowUpdate = 1 " `" h8 b. K2 X- E1 J# y
fDsAvailable = 1 + x/ _( W+ r, V& o) t- b3 g7 X
fAutoReverseZones = 1 . H, u2 `; t) f' H0 S Z
fAutoCacheUpdate = 0
+ l9 ?, e, U7 dfSlave = 0
6 \' E# d- e3 d: MfNoRecursion = 0 8 f/ y7 @. I( c' d
fRoundRobin = 1 ' X4 F& U+ y* ?
fLocalNetPriority = 1 8 m( D* q* g' e, e
fStrictFileParsing = 0 # n' Z F; A6 J4 |
fLooseWildcarding = 0
) b; z. L5 ]+ A! O* ~6 O/ n! MfBindSecondaries = 1
6 ]5 t% @& j% i" ~ k9 T2 ZfWriteAuthorityNs = 0 " T. r4 N# o( o3 K
Aging Configuration:
( d$ c6 u/ N i$ }: OScavengingInterval = 0 6 o% S+ k2 ]" Z+ B+ t* O
DefaultAgingState = 0
4 {2 ?3 @* |" r" i, BDefaultRefreshInterval = 168 ! g; I/ _( |( s4 G# ?
DefaultNoRefreshInterval = 168 , f5 Q/ Q8 ?$ s' w
ServerAddresses:
& A; [. I. x" h" Y5 Q Addr Count = 1) L. ]) d. S- C4 H- O1 m+ y% W3 [: a1 |
Addr[0] => 172.16.12.10 l" h, }. X5 a8 f7 H' }, @- ? V
ListenAddresses:/ J# n( S6 u& _$ ?! z. ]
NULL IP Array.4 p( ]9 O" [. N4 A! |
Forwarders:+ w2 A0 i: ^, h' V/ l* a: G: m2 ?
Addr Count = 1
$ }+ a0 _, @; m, T2 p; E" k5 D S Addr[0] => 172.16.4.35 e# V: F& g7 \5 t1 s. U
forward timeout = 5
/ n6 S- V, x' r1 Q( \. |4 A) z( J slave = 0
Q7 u9 i O1 h1 q- qCommand completed successfully.命令顺利执行完毕
0 Q5 e: ~: @2 C$ E, m 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
8 |( ?( w- H& H4 J5 N 命令:/Config2 q0 u# ?, m! x' M
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。) I! N& z: N8 _: w8 I
' }5 \3 j0 F) Y+ d q 用法:
4 t3 E: Z' s6 o2 m- P# q$ G3 \ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value) u7 W3 e; f% b5 }
参数6 z" X: A" Y# ?2 Y
ServerName :服务器名称,意义同上
2 c4 R8 L7 F/ { ZoneName:
- c, O! f9 h" X& [8 X1 T' e9 X 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 , P0 p) D' u" j3 L- t. F# o
Property:
1 m: T% ?5 e9 L9 R" @% D2 v1 ~7 K 这个参数是属性。这里所说的属性有:- u; _# j; ^# ^" F, z
与服务器有关的属性:例如:1 ]! z7 l( l4 m/ G5 n) ]8 i' {
/EnableRegistryBoot! P3 B6 |. ~5 y& v
/RpcProtocol
4 u! G* A$ M9 Q7 g" L; p/LogLevel- ?# u. K: D( t& I8 h
/EventlogLevel 等等 (限于篇幅未能全部列出)
; ?8 P/ d% U; N5 f与Zone 有关的属性,例如:
+ e( x+ {: m6 S, I0 M /SecureSecondaries; g/ l% p4 D" o+ Y! x
/AllowUpdate2 a8 _' h0 r1 z4 {, m6 M! O
/Aging$ i" l/ _3 f8 ^8 c* H& M& ~+ S
/RefreshInterval Value ~! R! Z5 c D0 ~
/NoRefreshInterval Value. d& I$ D: L: G" F& V0 j
属性值:* I1 E% c- J; M( X
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
4 w' }2 [; Q5 X* y2 x从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
) Q- X, v1 t6 A9 v 命令: /Statistics
' Q7 _! A2 d7 ? 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
8 C" j2 d3 d0 l2 ? 用法:" s, I8 @4 c7 e# \
dnscmd ServerName /Statistics [Filter|/Clear]. R; o" H# y. u
参数:
& t9 W2 A6 l# f7 v4 f2 PServerName
0 r( L _! j% c4 G- I0 L服务器名称,含义同上。3 ^4 U6 v& s0 H/ `1 z9 R6 M
可选参数介绍:0 S, n% m- z% E W
共有两个参数,每次只能使用其中的一个。
6 A! d4 _# @! _) y! t! b [9 n8 w 1.过滤(Filter)
' L4 V& l& @0 M' G# ^ 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
% A+ t% }% d. {可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 0 z$ Y5 x% b* z4 D2 z1 y
00000001 -- Time
3 U; Y% k6 l6 h8 S+ I3 t6 D1 T 00000002 -- Query
: c* V' K2 ]$ c' @ 00000004 -- Query2
6 Y, t o$ N& g5 J* A4 @" ~. F 00000008 -- Recurse' ~/ P' x2 j2 t- s
00000010 -- Master7 G& _7 g% u4 J7 M# X
00000020 -- Secondary
6 T) ]0 k( B5 c! A: L 00000040 -- Wins' ~2 p4 S# Q3 D& V6 g/ O( m
00000100 -- Update
; n% ^: b* ^8 N0 D. D7 Y4 A 00000200 -- SkwanSec
' k% o/ h6 Z3 p: h) J 00000400 -- Ds
0 n) \" G- f8 c 00010000 -- Memory
1 Y' g' j0 j9 A0 s* h 00100000 -- PacketMem
* r5 P- G: B) x+ ^/ w( @$ R 00040000 -- Dbase1 y4 m! P* q9 Q+ n& p6 U. X( V
00080000 -- Records
( N5 Z" V) t4 f7 | 00200000 -- NbstatMem
* d4 v5 [) r, i5 K* M5 G# y 2.清除 /Clear
/ ?- `/ F7 e4 @4 r7 L 这个参数用来清除统计信息。
( r: {& @. j7 q" M: C: @' d 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
' \* l1 N- f: Z/ D6 X
0 @' g! _* \+ L4 T8 u
- r; [+ L5 m. W5 G/ ^
" c, \+ M5 X! `4 W! q1 m: t+ u% d: ^ |