本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。. `6 T* x6 ^( U6 g7 M5 U
命令: /Info
: m9 l8 |2 F3 [3 O( g) S+ y% {: [ 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。0 s Q9 v, d2 n2 i/ {1 H
用法:
5 u8 i( Q* D' X R8 h dnscmd ServerName /Info [Property] 6 x7 o0 P X: F& T% Q; T
参数:" u" c: K# P3 s5 C' X
ServerName / F$ b" e* e2 L2 d- I6 a
服务器名称在上一篇中已经介绍过,此处省略。
! s6 D/ w6 }2 H1 s1 `. n [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
/ f9 c& |, B, y0 ]/ s 下面是该命令使用的一个比较完整的例子:
5 ^0 l1 j- }, W9 s- H 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:+ {! A1 Z" a/ ^+ s
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
- w% m$ f3 T v9 t! q输出的信息:
/ z2 Q$ q# x& e7 cDNS Server 172.16.12.1 Information:0 i+ M. H4 o$ j; m# E+ `
C:\>dnscmd 172.16.12.1 /info
8 I; L; ] ^7 }Query result: 查询结果
+ O# u8 a* F" c+ S- QServer info: 服务器信息
2 t. u- C8 W% q8 Q4 E7 l# g ptr = 00074718 端口9 C) ?1 g8 }/ q. L
server name = myserver.microsoft.com 服务器名称9 V# r. @- K3 v. d* [; m
version = C2000005 版本
9 A4 l. _$ x+ s9 r7 j" E5 H$ I DS container = c DS“容器”( _) T/ T: \) T
Configuration: 配置信息 这些信息的含义请参考有关资料& W. C) i; f7 g& J t4 b% o4 [5 ~
dwLogLevel = 000000004 X8 K0 R. s9 f7 g8 e3 c$ Y
dwDebugLevel = 00000000# R8 U( D; C6 q, g/ F- ?. D
dwRpcProtocol = FFFFFFFF, A5 W" p) L+ I$ A) @3 h
dwNameCheckFlag = 00000002
! z6 v: p7 h8 y cAddressAnswerLimit = 0
3 z# Z! q: i2 O dwRecursionRetry = 33 ~1 B0 H+ i0 u3 n+ D
dwRecursionTimeout = 15" d# Q- ?) |' N$ w; e
dwDsPollingInterval = 300/ b) `6 M& v6 F+ [( \4 n
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
) ~2 i; c* W" ^& a8 YfBootMethod = 3 0 b5 p) u: h/ |* ]4 b1 P" K
fAdminConfigured = 1
4 s' x' Y, D$ P( I7 rfAllowUpdate = 1 & \) h. U/ I( y1 F
fDsAvailable = 1 3 B( l; J, o: J1 ]: k: p
fAutoReverseZones = 1
- l, E* t& g% v( y6 c( hfAutoCacheUpdate = 0 ; O& ]7 l c W, [& @3 l
fSlave = 0
, H* z) Z; r8 k1 m ~# lfNoRecursion = 0 ( e2 Q, h v3 e
fRoundRobin = 1
, `7 n- I" f) A4 ]" T4 EfLocalNetPriority = 1
5 u& `' |& j3 u7 W% |fStrictFileParsing = 0 $ S# V4 K& d7 K
fLooseWildcarding = 0
% h- e2 B& o/ Q: H6 dfBindSecondaries = 1 , A0 K) }: q( _4 N0 w+ c
fWriteAuthorityNs = 0 ( F& A# Y! q6 U6 m9 K6 G
Aging Configuration: ' y5 R; J9 p: s* {
ScavengingInterval = 0 % {& M# F' W S* N) S2 q' F
DefaultAgingState = 0
9 t% P0 x8 y) J3 I: SDefaultRefreshInterval = 168
& ]4 }$ k2 R. t/ H8 A8 FDefaultNoRefreshInterval = 168 & }: S: W+ g! C: Q. F
ServerAddresses: 3 }2 r" ~+ ^( H2 e
Addr Count = 1 R8 p7 P( p+ ^* F3 H% @6 D
Addr[0] => 172.16.12.1
% p3 s: s8 R" b: \ ListenAddresses:
+ _4 @3 ~* s7 W3 O a2 x# R NULL IP Array.
8 V) P0 L' f6 |/ ~: k, z% r4 B Forwarders:
# C9 I) |' I# | R Addr Count = 1
& G" W. U. S, u2 f$ |: y- P" @ Addr[0] => 172.16.4.3
* t" p, J" J* a# c' v: a8 b, @ forward timeout = 5" x) ~% o/ ?- n6 }1 Z4 M& h# `4 w
slave = 0
* f8 ^8 v F5 gCommand completed successfully.命令顺利执行完毕
! ~% z; L# _2 t6 R& x9 n 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
3 X3 p: P1 N$ h2 B9 k7 V2 E 命令:/Config- W* I+ r" q" m# z! U8 D' ?
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。, O2 C) ]9 j1 `
/ b, c* S6 F- J: z: L! P
用法:
, k) J: N4 A; Z dnscmd ServerName /Config [ZoneName |..AllZones] Property Value( o A5 m% z8 ?+ H
参数, N/ ^. o" Z' O+ n( _! F1 K' ]- Z
ServerName :服务器名称,意义同上 7 T: q/ R5 g: b1 d
ZoneName:
* U- R9 K7 t3 k) [+ X! I9 T 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
3 u2 ~' g U) e) t3 X+ j9 s+ \ Property:
w* I$ V+ r6 W Y2 d 这个参数是属性。这里所说的属性有:6 O: o- M8 P& S# P" k7 x- Q
与服务器有关的属性:例如:
$ k2 O2 O; m- Q" X5 S1 @/ \/EnableRegistryBoot8 T1 L0 i2 l( E3 A
/RpcProtocol1 c1 s: |) y9 x9 { F5 d' y
/LogLevel( I T# ]$ x7 k' Q
/EventlogLevel 等等 (限于篇幅未能全部列出)
- J: E7 v$ f0 l, i8 M与Zone 有关的属性,例如:
: Q1 ?" B: s: g /SecureSecondaries
3 n {/ T4 e e /AllowUpdate
( K; a. [" e9 t /Aging
, h# K* A0 }( J c$ A. V0 ~ /RefreshInterval Value2 K3 D/ \& m @9 t1 g
/NoRefreshInterval Value' ?5 ]& ^- [7 K
属性值:
, {+ x8 ~$ d+ u- T 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
2 K: B0 y+ }: f i/ l* Q; B从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
; M, |' t( o g( e 命令: /Statistics
8 U8 }6 d( f" s3 T; K6 x 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
! h: H) h6 e R6 b5 s 用法:
0 ^) B. G5 l. L4 p3 H dnscmd ServerName /Statistics [Filter|/Clear]
% X3 {; |0 D6 \! U" D* \ 参数:. c2 W8 D- G6 U. A4 ^/ h1 U3 K
ServerName
* a/ X; l( x4 K& P服务器名称,含义同上。
+ f/ ], d' I7 Z: `可选参数介绍:* O. N9 U( D/ E& y: g
共有两个参数,每次只能使用其中的一个。
, K3 `% p& l. m8 N 1.过滤(Filter)
' F$ i' V0 I6 b7 B- J0 H 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。! w3 E/ u# a8 K* `( X
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: / {$ d6 z, t; B. h8 [' Y% ]
00000001 -- Time8 g0 T' [6 q( E5 @
00000002 -- Query
! J0 L( {9 b3 {+ C6 V, s 00000004 -- Query21 V/ b: @) W; x# w% `8 m. l9 Z7 M
00000008 -- Recurse
# Q% i+ M; z& l7 R$ ? 00000010 -- Master
2 v& N u2 ]8 f7 w5 \: D 00000020 -- Secondary4 o( w: S$ U: B8 w4 {" u- X
00000040 -- Wins
: _6 t9 Z* P. L" k8 A/ g3 _( D 00000100 -- Update( T1 s. U- H2 O6 g. o H
00000200 -- SkwanSec
1 k4 Q5 O4 y1 ~0 x( [% w9 T0 n 00000400 -- Ds
7 _- y- S" J( D# U2 u0 G6 ` 00010000 -- Memory
+ m% S9 h; K6 a; { 00100000 -- PacketMem
. p" l2 b: F! H8 n 00040000 -- Dbase) C" ^6 S4 [( v6 X; c2 z( R0 i
00080000 -- Records
) k9 y+ p ^4 f+ \5 y6 B% \ 00200000 -- NbstatMem d! G& y! x& T/ L$ s8 y
2.清除 /Clear
' a, o; z( M% q 这个参数用来清除统计信息。$ {$ @( e! y* R/ Z$ j4 x# {( ?
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。2 x" v1 R; J9 K9 |" v, V
) @/ D, ~! I7 U, z3 R% l
* C# F+ c9 f! Z5 u- w& L8 h7 J. z6 N3 ?7 v6 Z. k
|