本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。' p7 Q: F; ]& L( n' o! N
命令: /Info 5 e) D4 A$ R/ k) j
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。 }7 g) Z. ~7 t6 B8 V
用法:
6 C5 j$ M/ l: v4 L, S% r1 S dnscmd ServerName /Info [Property]
' l8 ^. ]/ p2 V) x1 [7 M 参数:0 K3 v$ x2 N* x6 d* g) ?6 G
ServerName
6 k2 e7 M; N) F5 L" i/ g6 \+ A; [ 服务器名称在上一篇中已经介绍过,此处省略。 . k B ^8 X. Q+ o! L" a
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
* t3 j; a2 B& x0 v2 N$ ?4 o0 N K ~ 下面是该命令使用的一个比较完整的例子:
q8 S8 K! j3 s! K 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:0 Z9 p9 C" J2 M. o; R& ?7 |
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
8 w1 D$ G1 m5 K* G: e$ \输出的信息:+ x+ L4 q1 F6 K$ l9 S
DNS Server 172.16.12.1 Information:
" P5 n4 f3 t" aC:\>dnscmd 172.16.12.1 /info" [8 D0 J- ~# g3 ~, |
Query result: 查询结果
) g7 {$ D, x ]. qServer info: 服务器信息
6 j; d) H( {. `+ t5 f, b1 n. U ptr = 00074718 端口
! X H' N0 N- K+ o server name = myserver.microsoft.com 服务器名称9 U- D- w' s( n6 b# O' Z
version = C2000005 版本0 j/ Z8 o6 D8 j- r
DS container = c DS“容器”
6 ~: t5 Z& t( T6 q& i3 { Configuration: 配置信息 这些信息的含义请参考有关资料
( F9 ^0 s* O1 X5 F) K- D Q dwLogLevel = 00000000
$ c( c& z* a+ k2 G3 y dwDebugLevel = 000000008 Q2 b% h1 |0 v! B
dwRpcProtocol = FFFFFFFF
& F. }. I7 t+ |- O* A dwNameCheckFlag = 00000002
7 {$ T, V% d, B2 r4 |6 v cAddressAnswerLimit = 00 H; a9 C( B2 [
dwRecursionRetry = 3
1 g4 |, ~ v6 ?3 t( D/ l dwRecursionTimeout = 157 D* }9 t1 w- h0 V$ B
dwDsPollingInterval = 300
k% {- L5 \ W* K Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
; P# j4 u) j1 E* X1 L9 tfBootMethod = 3 / O: F F0 J2 u- u6 ?
fAdminConfigured = 1
9 O |. b: ^, ]) R) OfAllowUpdate = 1
" |. r; x3 r% p0 l2 g" b7 {0 tfDsAvailable = 1
# m3 w) _" S6 [7 }( ffAutoReverseZones = 1 # C8 h- v& ~- K* N6 K
fAutoCacheUpdate = 0 & n( _; H. [9 p5 R$ \ E5 C" `
fSlave = 0 & j' e* ?& |4 `7 Y9 ~! a* c. g. s. D7 u
fNoRecursion = 0 ; u; I6 B) l/ \3 b! X, x- U
fRoundRobin = 1 & P# e4 v: e4 A/ l
fLocalNetPriority = 1
2 B+ ^+ R. ?2 r: ZfStrictFileParsing = 0 + y/ b8 f5 T% v4 E+ w
fLooseWildcarding = 0 ! R$ @' }6 q. `9 T' Y, r# U
fBindSecondaries = 1
- q5 y3 n( [: ifWriteAuthorityNs = 0
, B; H: `# G8 v7 PAging Configuration: 7 s/ ?, K6 K; |6 o0 x# D: [
ScavengingInterval = 0 , K4 l% S8 t) S2 ~
DefaultAgingState = 0
: |* x2 ^9 x* k$ P8 CDefaultRefreshInterval = 168 # ^2 b4 V, h+ o( P. s, M
DefaultNoRefreshInterval = 168 : F Y8 j" K ~. f$ ^0 U3 r
ServerAddresses:
% A, ^! C: J6 v- p$ @" E$ g7 J1 G) h Addr Count = 1; e! s3 o! U' O1 p1 L8 y
Addr[0] => 172.16.12.1
# l8 e: V4 W! m; d( G7 [ ListenAddresses:
+ {; A6 S( `7 D$ { NULL IP Array.
7 X7 t5 S, v* j" {) o. f4 I Forwarders:
2 {- ?, f* h9 q: Q* P Addr Count = 1& t ^2 z2 q5 \+ j8 _, Z
Addr[0] => 172.16.4.3) L# A0 i# i0 {, s; E( D9 }. U
forward timeout = 5
, e( a' b4 R: e9 x slave = 0& C) a9 o( p5 a* o
Command completed successfully.命令顺利执行完毕
! D& }: Y) m' J9 e+ k& _ 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ; R) k' V0 v- g& n4 b* z
命令:/Config1 B& U2 y- c! ]) z1 q4 d0 Z- W0 M6 d, `
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
/ |5 W" ^( O, g; S- @# Y; m9 R# M- y
4 i' J" n+ q4 d8 @1 t 用法:
* k$ X6 w* i9 Z dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
a- y- \, f4 {( Y 参数2 p( s" f+ e: w4 z& H- }- l- F& W
ServerName :服务器名称,意义同上
; v+ U! V- J4 b$ m# j! s ZoneName: ?1 F3 p( X/ P3 O; }' K
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
2 p, y# D$ Z# g Property: / e% v7 Z! s1 C5 L- O5 y
这个参数是属性。这里所说的属性有:0 \7 ~6 k* u7 r9 t& a
与服务器有关的属性:例如:' S# j0 ^% C8 A6 W
/EnableRegistryBoot; g$ M2 B/ W* C& W8 s
/RpcProtocol [- \8 ?5 R% Q9 M% P
/LogLevel
: G/ u2 r: _( Y1 d; p: W/ e7 D" C L/EventlogLevel 等等 (限于篇幅未能全部列出)' T, {$ c9 A, c: j( h0 A! W) b, D
与Zone 有关的属性,例如:
! r6 z3 n( E$ e$ L /SecureSecondaries
8 L2 |/ b7 B& f /AllowUpdate6 [+ X7 e3 t% t' C
/Aging! L+ ^/ X1 t& {# U2 K2 ]; X( V
/RefreshInterval Value
& W" y3 m! J9 E4 n! p/ l8 M /NoRefreshInterval Value
! S% N& f$ T) y 属性值:
8 T' w" U" X$ c 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
% l; K6 J1 m8 E! r0 w9 Z6 I从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。1 I2 f3 K$ N$ v! |- O
命令: /Statistics
% d/ N1 q q) A& y f: [) ~ 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
6 }' @( j# Q! E. z0 g# ? 用法:
- |; R: f2 D7 e dnscmd ServerName /Statistics [Filter|/Clear]
" N/ u. D9 E; i6 A7 R3 H: k 参数:
5 Q" b1 Q) D' S" oServerName
% K4 o1 J& y: |5 B服务器名称,含义同上。3 m( @6 D1 Z& c/ n
可选参数介绍:
! n$ t9 K2 M+ g3 c- S- }共有两个参数,每次只能使用其中的一个。) }" g- w M/ i$ U( A7 [& M
1.过滤(Filter)+ t6 f2 V: L) v$ e- g1 \* v& m
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
# Q5 ]1 t. S2 T) E! C可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
5 a* w0 O( o9 p) r1 n" x+ |' _ 00000001 -- Time/ i* p- t+ j4 {. e1 [0 f' N
00000002 -- Query
) w: Y( ?& [8 i. K4 z 00000004 -- Query2# X2 Y. l P! {( G* t: |
00000008 -- Recurse* I3 {+ ?. ]+ i; f
00000010 -- Master
* {6 B( }: N0 _- Z7 V 00000020 -- Secondary
1 ?1 l! m! e- a+ M% {( j 00000040 -- Wins' d/ A7 S8 Y) y# ~
00000100 -- Update+ ^9 ~9 Z# `' ]' ?6 U4 Y3 R
00000200 -- SkwanSec; a [& [2 W' x4 z9 |
00000400 -- Ds
# L) x3 n- U# [# C- ~$ Q 00010000 -- Memory1 P" z/ @4 I: `4 W
00100000 -- PacketMem
8 Z2 l, [/ q8 N 00040000 -- Dbase
( c9 B- R- n1 i" j# L) d 00080000 -- Records
* ~: {6 x- @5 v3 `* x 00200000 -- NbstatMem
$ R; ?$ j# |/ _ 2.清除 /Clear
: ?5 P3 ~. B8 | 这个参数用来清除统计信息。
: t9 m8 j" l5 k7 G. d( A8 |- I 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。$ j1 b: g# O$ g$ p( E! l' v
6 _% H9 y. T0 {3 S: D
6 I. \; N4 Q& ]. E8 g8 _. i9 R+ u! C+ C4 M3 j% e8 A" i) X
|