本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。" q: U3 C" W8 y z `! P
命令: /Info . O/ y2 ~: U8 J% i# Y
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。+ [0 a' }5 a& `( m
用法:: j' u0 e& l: w5 f2 o
dnscmd ServerName /Info [Property]
+ d* a" K+ Z8 p& u. k; M- }0 m 参数:+ @% e( E# x% _ J% @7 | v/ `
ServerName
. i- O. u2 [' W 服务器名称在上一篇中已经介绍过,此处省略。 , u( [" }( Z2 C, o4 V
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。! t& [4 _( t+ J! x9 h+ k/ S, f, z4 ?# v
下面是该命令使用的一个比较完整的例子:6 e/ o- g" }3 c; ]
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
( u& M2 k% q) d7 F8 n6 u# c$ b4 vdnscmd 172.16.12.1 /info 只使用命令而不使用参数; r, {5 S- i( ]
输出的信息:" B; z* X0 N8 d- f# a* k
DNS Server 172.16.12.1 Information:2 X( ~8 N1 f0 a( @3 f
C:\>dnscmd 172.16.12.1 /info& c# v8 o& ?! }7 `1 L( m5 N/ Q
Query result: 查询结果' Z7 s! c: r' L& Z O; C9 f9 {
Server info: 服务器信息
. b3 \. U) g! o: ^' [ ptr = 00074718 端口
! ~+ v4 i( M1 [6 |" ~$ Z- Y4 } server name = myserver.microsoft.com 服务器名称
6 e$ [4 N& S3 j/ l version = C2000005 版本/ G/ f6 Q r' I8 C( e* H" B
DS container = c DS“容器”. K- r* @+ i# t" D
Configuration: 配置信息 这些信息的含义请参考有关资料
" d) z4 G% v- g8 n/ F dwLogLevel = 00000000$ y$ f6 U/ @1 O* E) G* r; Z
dwDebugLevel = 00000000
* V7 Z$ A- J G3 \0 v7 x) b, ] dwRpcProtocol = FFFFFFFF
6 R5 m* ~7 r6 C6 _: k8 r dwNameCheckFlag = 000000025 L, h# e! [3 w! L
cAddressAnswerLimit = 0
/ W+ {' z {& ~% }! B2 t' ]3 l dwRecursionRetry = 3
5 t3 r+ x0 g6 `4 u dwRecursionTimeout = 15
/ \% L+ ?' H* L9 r- |" e dwDsPollingInterval = 300! ^7 X1 _1 u3 e
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料) u1 }% e7 D4 q- o2 e0 z$ s4 `
fBootMethod = 3 ( W- C7 M( g( d" u* y5 x
fAdminConfigured = 1 1 X1 F4 ]% d) b0 Z H
fAllowUpdate = 1 6 h: m' f" L& N# i& j
fDsAvailable = 1
~5 x% c' d' OfAutoReverseZones = 1 0 |9 E# e2 G# a. d
fAutoCacheUpdate = 0
$ F9 \/ e! s% T' Y# r$ H3 ZfSlave = 0 2 ], ^ [+ ]9 }* W5 b0 J% D3 T
fNoRecursion = 0
1 N A2 H! u$ G4 jfRoundRobin = 1 . G6 l: [! l) X) s
fLocalNetPriority = 1
" q! h: u+ h# _5 T! b' efStrictFileParsing = 0
|2 s5 @$ h# d3 ]+ ZfLooseWildcarding = 0 ! H. h& u, x* V Y5 w
fBindSecondaries = 1
/ t3 E+ E6 M; D2 A% Z1 _fWriteAuthorityNs = 0
% m5 \ ~- E* |. SAging Configuration: 5 g! s" g/ n+ Q. j8 v& {
ScavengingInterval = 0
0 ^4 ]" y+ s) b" B$ @, FDefaultAgingState = 0
. {9 J! y1 _5 ?9 [, T6 KDefaultRefreshInterval = 168 - q6 T" Y/ b7 k f
DefaultNoRefreshInterval = 168
# }' B6 {$ B5 D# {* D! O5 m1 | ServerAddresses:
- W/ v" `! t/ a K5 f. U o: V# Q Addr Count = 1
! j1 v- J5 U7 _) f: L Addr[0] => 172.16.12.1" y7 ^* t% L- p
ListenAddresses:
* V, H4 f: j, B NULL IP Array.5 \3 p3 Y0 F8 t- g& C; C
Forwarders:9 p1 r [$ s ^+ f
Addr Count = 1
2 }8 y- W. @( l: [9 c1 Y a Addr[0] => 172.16.4.3
+ p3 d! \$ b. M0 e forward timeout = 5
1 i. c+ d& s! |2 w( w0 O# a0 i slave = 0
) m0 b6 b! e( ~7 ~, ~Command completed successfully.命令顺利执行完毕 : V. m/ A2 D2 X2 I/ p
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 7 A" n5 i! \! _% X) O8 ?
命令:/Config
8 w+ h. F( R g4 j* l 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
' h9 `: M. p' Y& ^/ @# l- u4 _6 L7 [" l; g @0 ^
用法:& v) x/ U, b$ O+ o
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
: v9 Y6 R4 P! U8 y. z) | 参数0 R q: A; M6 W" j2 K4 [& h: E1 M( p( ^6 x
ServerName :服务器名称,意义同上 , z1 K3 M w8 x. _; I* `/ K
ZoneName:0 J: V4 r! f3 l/ m" G
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
' a: o. t2 e' p( D) N8 q) {1 {% b Property: - H0 N$ G) |/ {3 z# J
这个参数是属性。这里所说的属性有:1 p: o3 B5 `6 _) F! c
与服务器有关的属性:例如: r* P3 J& |4 m- r h1 ^% [7 o
/EnableRegistryBoot
; i5 ~9 K9 P3 G. X" H/RpcProtocol
2 f2 E2 s( v, p/LogLevel
/ @3 R5 H3 s8 ^% T5 m/EventlogLevel 等等 (限于篇幅未能全部列出). W1 L: t4 K4 ^+ P
与Zone 有关的属性,例如:
& B0 ^$ E7 R0 K D! A, a /SecureSecondaries' y, Q: N$ P0 Y7 W
/AllowUpdate
/ _8 Z! J6 C# Q* e3 { /Aging0 m1 ~6 L S t& z4 t
/RefreshInterval Value' D: {1 P6 F7 V6 P1 i9 z
/NoRefreshInterval Value
$ O1 Y7 S6 D4 { x. l 属性值:
" R5 d' a/ L. V3 y 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
, J, @# m- v! X% @ S& e& u从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。! }: r% a& x7 \5 h
命令: /Statistics6 T' d6 q7 O2 R+ e9 W' y9 o. v; [
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。+ k' p$ M6 _ ~- d4 q) X: _
用法:
) e! J# }( e! W# `# f; C dnscmd ServerName /Statistics [Filter|/Clear]5 j. z: A% ]0 J, f5 a! i- ]/ x% ?6 C# ]
参数:
6 H+ t% A( N# g eServerName - M& B1 l8 X4 z z3 U+ C. h
服务器名称,含义同上。+ r. k3 f, J( q& K2 i
可选参数介绍:- [( a8 V1 }) ~1 M( @; X9 a
共有两个参数,每次只能使用其中的一个。
" e. ]( e1 M& Q 1.过滤(Filter)3 `' N4 J n% o" W o
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。3 u+ w2 r, \1 c
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
2 a8 W" m* K8 c5 g& [( w) D 00000001 -- Time
; ]3 Q1 \. z1 q0 i& F" I! C 00000002 -- Query( D' O* G& z$ I
00000004 -- Query24 N1 L: y! x/ V7 s% Z
00000008 -- Recurse# n& S9 D) O W$ v
00000010 -- Master& L/ f, E7 \7 f
00000020 -- Secondary' c# G$ e8 C+ M8 c# u* |3 T
00000040 -- Wins
! [/ j9 [' B- ?# j" I- o' {! y5 z 00000100 -- Update
" h9 s# {2 P" T7 }7 g/ X0 p" E 00000200 -- SkwanSec
0 l. U" ^ M" V 00000400 -- Ds
4 m; B0 j$ E# `: ^* s7 N 00010000 -- Memory$ i. |! p* ]3 Z7 }6 y
00100000 -- PacketMem
( m2 @4 b2 D% X- R, Y 00040000 -- Dbase
% o7 S. u3 Y. z }6 @+ U 00080000 -- Records
1 |: S1 R' ^0 ~; H4 [ 00200000 -- NbstatMem
% s% P9 `# }: w N+ ~9 W* R+ ~ 2.清除 /Clear 6 H6 o" y# R( ^
这个参数用来清除统计信息。% O# Q+ h+ y: Y+ x- S/ k) V
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。7 O" b: d. f! {/ v+ _! c
3 i( h2 M0 M4 v, Q2 V
8 Y* y; }% Q N' S3 E; A. \) Y" Z# j- U
|