本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。1 f) x D9 N$ G5 ~# Q1 Y3 R
命令: /Info 8 v% Q( O# ~- A5 v1 \
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。6 Z" S! s' w2 R% h0 X
用法:
2 Q: o! n. l/ i0 b) \; d' B* Z dnscmd ServerName /Info [Property] ; b6 I* Q4 D$ S) U3 U F6 V
参数:4 T/ I5 K' h) d) }2 Z
ServerName
9 W- Q' D* H* k& @( W8 _ 服务器名称在上一篇中已经介绍过,此处省略。 C3 B6 e4 j$ X5 |; C
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
& R5 E: m% c: h7 c 下面是该命令使用的一个比较完整的例子:( n* Z; t: b! U8 \+ `/ e
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
% K7 M3 o( E! l6 k' S& I1 B" r/ Cdnscmd 172.16.12.1 /info 只使用命令而不使用参数* E, C" p' h) Z. |+ B& ^6 A; Z
输出的信息:
" O+ n; C1 u% E2 t7 G6 Z4 G$ Y1 aDNS Server 172.16.12.1 Information:* }# u/ d( K- ?' ]( o
C:\>dnscmd 172.16.12.1 /info
: v9 X# G) d) n) y5 l8 K" g1 MQuery result: 查询结果
# C8 J- u' u* aServer info: 服务器信息+ A9 {) L( J- Q# o& Q
ptr = 00074718 端口7 @" i5 W0 z# F+ I
server name = myserver.microsoft.com 服务器名称
7 b! o$ q; Y3 j version = C2000005 版本
8 V+ P2 e6 c& h- ] DS container = c DS“容器”! l7 z; W, q! |" L t/ v/ M
Configuration: 配置信息 这些信息的含义请参考有关资料
+ L( r+ E3 \ [9 k# _. J% e1 F2 E7 ? dwLogLevel = 000000001 \5 q5 x4 A; c, ~! X/ T! z: ~
dwDebugLevel = 00000000
( g% x% B8 K, P, o' \! h dwRpcProtocol = FFFFFFFF
- C8 C2 z' c C, W6 R dwNameCheckFlag = 000000028 [7 K% k4 i# ~+ Z5 e) s
cAddressAnswerLimit = 0
. U6 ^& A6 _/ W- m3 E dwRecursionRetry = 3
+ R9 Y, [# f4 e$ m+ F dwRecursionTimeout = 153 N) l. |/ J) X9 G
dwDsPollingInterval = 300+ `3 F9 b: \* q
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料1 n/ g9 s, u/ ]% w
fBootMethod = 3 $ e+ k$ L' j4 s$ [( ?: k$ f
fAdminConfigured = 1 3 ~* ~7 T7 Y! P* @. R7 y
fAllowUpdate = 1
$ K8 l9 t3 y |2 z0 J3 a6 u! [fDsAvailable = 1 . t' Y! s6 D4 ~7 @5 h& ~
fAutoReverseZones = 1 , N: U( {* l8 Y% K
fAutoCacheUpdate = 0 6 ]% l/ |" O$ X
fSlave = 0 7 b: y5 e' R" S9 |( _* I( o
fNoRecursion = 0
3 ?6 z4 ]. q& P0 I0 Q9 a9 u' u6 v1 OfRoundRobin = 1
7 f, B, O* H; c$ xfLocalNetPriority = 1
0 R9 g. d* S, C. Z" y- _# |; p) ?fStrictFileParsing = 0
& z% N W F+ p; q# dfLooseWildcarding = 0 2 v( a6 C/ v. m* t% o/ ~
fBindSecondaries = 1
# n6 g/ x+ E+ s* g( T$ efWriteAuthorityNs = 0
& p5 p; v1 v) O6 L: [; cAging Configuration: ( b7 ]% R* M3 f+ u2 V+ i" ]6 M
ScavengingInterval = 0 ) m0 L5 |; O; O5 r: |8 v+ j6 j
DefaultAgingState = 0 : Y" C" w8 H0 X# d. _; p2 K! [1 C
DefaultRefreshInterval = 168 8 ]& v) ]! c% V3 q3 q. [, v- C
DefaultNoRefreshInterval = 168 . {: R/ V h1 {+ s. O
ServerAddresses: ( c/ T5 h, {( ~4 L; ]+ R
Addr Count = 1
2 g/ p: n! A* S5 G Addr[0] => 172.16.12.1# [) {3 ~: J# q* _
ListenAddresses:* Y. v# x# ?$ C/ @+ r
NULL IP Array.
) ~) k6 Y, W* X5 F% }3 M Forwarders:
- K9 a5 l6 |, c. o! I8 X$ \% p Addr Count = 1) L/ T# |: Q3 z- {
Addr[0] => 172.16.4.3
( J }9 M4 l- z+ v$ s4 {0 ] forward timeout = 5
$ s0 A2 G% q: `1 S5 X8 q4 h, Z/ k slave = 00 Y; ?8 X+ u* K
Command completed successfully.命令顺利执行完毕
3 O3 P7 Y2 M5 B2 D- {7 L 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
- @# {) c `4 j, f# `# F7 A p 命令:/Config$ e& \2 G7 @- T) k I7 x d
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。7 _5 O2 K5 n. G9 K
! H! Z' f0 H1 N+ l1 e% M i
用法:# _% h: F1 }7 l; |6 u& O
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value3 ]) Y) r0 E1 n) z" O* {
参数
2 A) w4 R3 b6 j8 T ServerName :服务器名称,意义同上
2 d) b7 U8 k% i8 S& R% z ZoneName:
8 m# R* Y, ~) L. z: ]4 W 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ' p, U9 ]3 s( p
Property: $ V3 {" S* [! k' D8 K C( J
这个参数是属性。这里所说的属性有:% z& E T6 s8 j0 Y9 G/ Z
与服务器有关的属性:例如:
; S9 O+ X3 O+ `/EnableRegistryBoot
" o' C' v* F* q4 h1 H6 F( z& f* T/RpcProtocol; f& _3 h+ _- @1 g" U
/LogLevel
+ X& b* k% C8 @% @7 Z# z2 d; @/EventlogLevel 等等 (限于篇幅未能全部列出)5 h. A; R: o" m% }# e! w
与Zone 有关的属性,例如:
$ g( X1 f" ~7 ]9 k /SecureSecondaries
6 H1 r% t: D- t9 W# j' z /AllowUpdate
* r$ y* C) ]& ] /Aging% j) i: I' x# @8 n2 [3 V3 p
/RefreshInterval Value
5 Y1 E0 r, q5 d7 a. x /NoRefreshInterval Value
. O) Y' Z; L/ ?; [0 m* d) J 属性值:* q, T4 k# ?" D1 F( G: B+ [& N
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
/ e. q/ \2 ^( o3 P% m从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
) c( q3 ~8 b, | 命令: /Statistics
" j2 K3 D6 l+ c6 N 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。; l+ l4 C7 I( d2 V
用法:( t7 f. I0 D6 y8 m% Q
dnscmd ServerName /Statistics [Filter|/Clear]
, N7 j1 v8 I9 [' S) V3 P. L 参数:
4 L5 V+ B9 }5 q1 {ServerName
d8 q5 I1 p' |! R服务器名称,含义同上。, R0 K% l0 r% c
可选参数介绍:
2 l! n2 F6 |/ T8 Z# h% Q* b共有两个参数,每次只能使用其中的一个。8 X$ t( n9 p; z9 x
1.过滤(Filter)7 y7 A' g( Y& S0 |+ e( h
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。, B( U( |. p1 B+ r+ `
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 2 ~( m7 V8 ~$ Z" F- r1 K
00000001 -- Time: v! `# {8 S. \& j# R1 I% M
00000002 -- Query
8 o" r0 I9 o9 F. ] 00000004 -- Query2; m. Q$ D$ ]! y2 @
00000008 -- Recurse
) s+ |6 p, Q" o. f 00000010 -- Master' h8 {' l& f$ ^- Z: |
00000020 -- Secondary
0 U) }+ _- h4 Q; U) W& e 00000040 -- Wins
/ [) N. v3 v& J9 j 00000100 -- Update! l) Q) H6 u% F: Z
00000200 -- SkwanSec. p# V" D; j/ l9 r7 u
00000400 -- Ds
' A0 X- D! q% N 00010000 -- Memory, ]- O- K" Q7 r1 @6 m7 J3 g
00100000 -- PacketMem% `6 Q4 `, `7 T- I0 |/ D
00040000 -- Dbase" x) z2 |. F* y- j- D" t
00080000 -- Records# ^- g6 x4 d5 p! Q+ X
00200000 -- NbstatMem
; |7 S! W$ }7 j8 A" N; Q 2.清除 /Clear ; i$ g0 F) j+ d
这个参数用来清除统计信息。! R* v# A: R# m6 [5 N
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。2 U" \& r: B# t8 O+ T
9 O4 K0 s; w+ q6 P0 m
3 ~2 ~5 c% u3 ` p- V% z7 k2 L8 q8 f! j, T. T* U4 [, o% a
|