本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
7 N6 U, d# y8 R6 e" V3 r% c 命令: /Info , H9 H4 |% G5 z
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
) ]& g; X. v! c6 L2 Y 用法:
( d" O2 z8 A0 B I+ d dnscmd ServerName /Info [Property] 2 @% Q) ^7 F1 u; ]# s$ ~
参数:
1 ~: Z& o7 t0 `7 C9 r5 r! [1 i# S ServerName / {. y! Q% a4 _+ J, |% r$ @) Z
服务器名称在上一篇中已经介绍过,此处省略。
# h! \( M% \$ y. e, W1 z8 W' W [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。8 g3 Q9 u; ?0 P! y" ]' P) t& m' n
下面是该命令使用的一个比较完整的例子:8 J" i8 L& {( p2 E7 Q; o0 f7 n
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:3 B2 `% q; e5 f- L
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
) X2 b6 m- o! i* \输出的信息:
6 J* X. p9 x) K: O3 l8 B$ ^6 kDNS Server 172.16.12.1 Information:. {( i b+ b6 O5 i3 H
C:\>dnscmd 172.16.12.1 /info
; }: R( p7 z% {. o UQuery result: 查询结果1 N3 G \& u9 r8 m
Server info: 服务器信息) j' C( `$ X+ E5 j f' b- F5 x
ptr = 00074718 端口. q; U3 ?2 u0 u$ X7 H) e" r4 w8 }3 ?
server name = myserver.microsoft.com 服务器名称
( h9 C( Q. a) r4 @+ ~2 u version = C2000005 版本9 h o# G$ @5 K% V" n5 C
DS container = c DS“容器”0 n% J1 o' |1 u) W6 _" g3 U1 T7 d
Configuration: 配置信息 这些信息的含义请参考有关资料
8 g: V# y! \9 {* E$ k4 N dwLogLevel = 00000000
( v" j/ T+ j3 `7 [7 V dwDebugLevel = 000000003 q J7 [! T. O: P9 L
dwRpcProtocol = FFFFFFFF! o0 g7 Y: i8 ?$ W( F' C
dwNameCheckFlag = 00000002
( g" H" z/ y3 Z) K) e+ q+ V cAddressAnswerLimit = 0
3 I3 k2 ]! s8 n1 g+ n: y" q1 ~ dwRecursionRetry = 3
k* O. [8 U& P, h3 { dwRecursionTimeout = 15
6 c8 l/ \4 v+ n' E# ?9 E$ q dwDsPollingInterval = 300
/ y+ e: Y# Z+ |0 @ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
+ I U$ O8 X; o. K3 OfBootMethod = 3 - i3 p5 A0 Q* }3 d" @: Q4 I9 F6 r
fAdminConfigured = 1
" O5 S6 m9 B& E# N; G: _fAllowUpdate = 1 $ v6 P7 b @2 Y" o2 W
fDsAvailable = 1
( _/ P$ J2 w. t7 d s M5 efAutoReverseZones = 1 . `/ F6 Y3 e6 ^- }% T! p
fAutoCacheUpdate = 0
% J* z2 R8 c/ P) Z. J: _fSlave = 0 . ?& f7 | |2 Q& V) { O
fNoRecursion = 0
! g1 Y& \8 w6 M7 KfRoundRobin = 1 2 E# d! f1 l, q+ v. x
fLocalNetPriority = 1 8 A5 |& D! d1 f
fStrictFileParsing = 0
( O& h% ?! x9 p, hfLooseWildcarding = 0
4 f) u3 y8 L, q4 e7 c1 vfBindSecondaries = 1
C5 A4 I1 r' d- i! D8 f* F2 `; IfWriteAuthorityNs = 0
) [7 i/ j7 o5 b& y4 N3 n& e& t( LAging Configuration: 0 ~' m7 }( g7 g& ]
ScavengingInterval = 0
* T8 i+ u" n, F' d# j* {& yDefaultAgingState = 0
. U: D* c5 W1 Z2 _( E2 d8 M, rDefaultRefreshInterval = 168 ; D6 ^% r* F- E5 n" B4 R1 y
DefaultNoRefreshInterval = 168
6 L6 O! c. v5 y S* T w$ n m ServerAddresses:
}- G: |/ N |% d$ O Addr Count = 12 S4 M$ l8 I P. A0 k
Addr[0] => 172.16.12.1/ c+ r, @) w. {+ o f$ ]& M# y; |
ListenAddresses:. ?: J+ @. t5 V* m0 r/ y2 C
NULL IP Array.
; ~ s; B1 X( S( u# h3 M' w Forwarders:
: w, F9 d& Y. {. i' T( h; D2 s# k' } Addr Count = 15 \8 V! x! m* B7 h. r
Addr[0] => 172.16.4.3
1 t' `# G5 }3 t! f9 R$ i forward timeout = 5
% ]6 G0 _% O' v slave = 0- ~3 J3 q3 ^4 w. x
Command completed successfully.命令顺利执行完毕
7 @; f2 x0 n+ I% O% Y# D 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
* ^2 |5 u1 `5 t8 j. ] 命令:/Config) u4 u% R+ y1 j4 y5 t. e' e
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。9 ~8 o( o) t! B
8 F0 d( I+ E% i+ l# } g2 l 用法:- E; G I3 o8 ~2 x; M& x
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value5 ]1 p; g6 ?+ g, D
参数
% j7 H- O: \/ } ServerName :服务器名称,意义同上 & m* y" S0 i4 x- a
ZoneName:
% s# q3 o$ d3 g 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
* B/ E8 k% P% _5 I- v+ x Property:
6 |0 P2 X* `/ N8 r7 M& f 这个参数是属性。这里所说的属性有:7 n9 N7 s( P7 `# |
与服务器有关的属性:例如:% ]" N4 K' S# Y! z( X' E! @ o0 @
/EnableRegistryBoot& }3 N$ m9 A" F% v/ L* L
/RpcProtocol
8 }' U) {5 y- M/LogLevel
' G( |" F/ O* @8 d6 W( _" F1 Z/EventlogLevel 等等 (限于篇幅未能全部列出)
& p) [2 E2 O" ] ]与Zone 有关的属性,例如:& l4 h" h/ L. h" i1 f! N
/SecureSecondaries, F6 S0 K/ Z+ g( q3 N4 _1 [* n- G
/AllowUpdate
9 ?4 F% [! y2 R5 S: Z /Aging
0 Z. V" r, n% J$ G /RefreshInterval Value
* c7 W# R: q$ i$ L* X: @' R) h /NoRefreshInterval Value
# e/ r9 [ U* T- C2 u1 V 属性值:
/ y1 B, w: ]# p4 w; e% v4 y# f1 ^/ _' v 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。$ n; q5 u- l( S0 }
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
# u- l0 |! z7 b. H( S 命令: /Statistics$ `/ E- @8 @' x0 z* ^ l1 ]
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。% N$ P3 k1 `; I+ g) h; {: r! h
用法:3 Z' d$ e/ l$ Q
dnscmd ServerName /Statistics [Filter|/Clear]
+ Z. w o7 r Z! m* S/ g+ M. l/ j 参数:; N ]; M" Y! C
ServerName
: s9 H. L4 q& Z+ A2 a) K服务器名称,含义同上。0 W! D; f1 C( M! z
可选参数介绍:
) o7 c& ^2 T- r3 Y6 T共有两个参数,每次只能使用其中的一个。
/ W7 \: E8 S9 o, C' }, p& B+ L 1.过滤(Filter)6 W8 b: l$ P/ a: T. g# ?
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
( }0 u% L+ c6 x* `' W) D3 g$ Y可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
% I `; M; W% F% {% T4 m 00000001 -- Time5 q E& S: E5 }' [! f8 q8 u1 Q& q
00000002 -- Query
, {5 E- Q6 K& Z0 T+ g7 ?! p 00000004 -- Query29 p7 g ~7 w3 p: y( h
00000008 -- Recurse
2 m- B* V5 |/ C) v/ T9 n 00000010 -- Master
$ ^6 F$ b+ T& y2 | 00000020 -- Secondary; g* x1 Y6 Y4 ?" M( }, }0 v
00000040 -- Wins
7 d) o. H2 V9 |- U. W( ~$ p4 {6 { 00000100 -- Update
4 \) I( K5 B5 z 00000200 -- SkwanSec3 X% r4 J3 @; F( z$ K- d3 q
00000400 -- Ds
' T& Z v: _' C2 d 00010000 -- Memory& x* m$ {1 f R6 s1 Z
00100000 -- PacketMem8 m1 V- [8 Z- [
00040000 -- Dbase4 m4 Z& j1 T! N* |* j, x |
00080000 -- Records
/ B+ N6 U% S4 C% Y) n 00200000 -- NbstatMem5 F8 A- i" G% E! |- A+ l9 y) g. x
2.清除 /Clear
7 |) N4 i T& T0 C y 这个参数用来清除统计信息。; P* e7 Y. \6 r) j# t3 v1 |
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。 K! q. i- F- |5 _5 A' ^( Y
$ W3 d. H" f( w F8 D
3 V+ K) d( K# W& f
# B! A& p- m" W; t# l& U# _. _ |