本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。$ I: T* j S% S, l' [2 W& [6 `
命令: /Info
( h( [: q6 ?& A) w; D- H# M. {2 f 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。7 y% x# a: P$ H5 a3 R+ o! d% q
用法:
7 D# g* r! o1 r/ q) L$ x dnscmd ServerName /Info [Property]
! ?6 e$ U$ A E+ N$ L8 M 参数:
$ S! C! h7 M% \ T, C0 D, F) R ServerName
% _7 s9 Q) L( l( w' A 服务器名称在上一篇中已经介绍过,此处省略。
/ c/ {. U1 `8 D, M$ I [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
+ V# i% b. g! U/ X' m6 V9 C1 ` 下面是该命令使用的一个比较完整的例子:& U+ _6 O: ?+ f) ]" v1 s
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:$ ~+ p M' W$ [! D
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
3 ] e7 V1 m/ e: {+ y7 b% S输出的信息:
: `1 \$ w6 l# j" d$ bDNS Server 172.16.12.1 Information:
9 J$ N) p p9 Y3 H% R; Q t& CC:\>dnscmd 172.16.12.1 /info7 O8 v, W" S% p, z; i# Q4 y
Query result: 查询结果5 W, P* D7 K- [, \0 P [
Server info: 服务器信息, N" m. s# q7 }% K
ptr = 00074718 端口
" }$ ?1 }$ m0 L3 I7 S3 y# d4 G0 T server name = myserver.microsoft.com 服务器名称
1 t6 P5 ~8 Y, d% u* [ version = C2000005 版本
% q) X7 X: H% a8 X/ R9 k DS container = c DS“容器”
+ `2 V6 m J" k/ O4 Q1 `( T# I! E Configuration: 配置信息 这些信息的含义请参考有关资料
/ s4 G/ @( Z; P5 ]5 S9 D dwLogLevel = 00000000; F4 O7 ]5 e1 [( ]
dwDebugLevel = 00000000
4 k4 d `- X# s' A* x1 p dwRpcProtocol = FFFFFFFF
* F. f6 F+ r/ T9 c# M6 n u dwNameCheckFlag = 00000002
( r# T: K+ ?& x# v- g! D4 ~) R2 ^* y cAddressAnswerLimit = 0" P# G1 _& Q! }- T" J& _
dwRecursionRetry = 3, d1 F: g3 b( {* o; l& C1 [3 i6 h" a
dwRecursionTimeout = 159 u9 ~9 L; E, Y( m8 N9 j+ |
dwDsPollingInterval = 300
1 w( X, a$ J1 f' b+ ~, H9 Z: m Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料6 S+ f4 K5 n+ V6 }2 y# a& W9 b& X9 X
fBootMethod = 3 8 `; a$ v6 ]+ c0 ~" O( q
fAdminConfigured = 1
6 [- l6 Q* z( l CfAllowUpdate = 1
" Y& @2 ]: h6 \fDsAvailable = 1 $ k7 ]3 ^5 F+ E! w& a
fAutoReverseZones = 1
* V$ b, S6 r; k2 N4 F" ?fAutoCacheUpdate = 0
3 p' A1 z8 D3 _- w8 {fSlave = 0 ! o y. H0 m4 L0 u% G9 k3 G
fNoRecursion = 0
0 n% K- Z' j9 I9 r& AfRoundRobin = 1 # ~1 [6 A4 k8 O; N
fLocalNetPriority = 1
- E% B: C; @/ H9 Y0 {& l9 M$ wfStrictFileParsing = 0 ) H. ]/ l8 Z( F9 b2 F4 j( I7 X2 q4 M
fLooseWildcarding = 0
: g4 R2 o; }( K: \; J5 Q) B" YfBindSecondaries = 1 * n3 ^1 g( a E
fWriteAuthorityNs = 0
, ^. q1 | m) ?2 ~9 A/ @3 gAging Configuration:
8 d# k: \6 N4 d$ h" iScavengingInterval = 0 * p# S; y; U1 Y/ S4 u0 Y
DefaultAgingState = 0
+ T( x* |9 C8 R* yDefaultRefreshInterval = 168 ! }% ?+ E+ i i0 |% m5 ^; S
DefaultNoRefreshInterval = 168 ' z, X9 s1 D( M- m* d0 ]
ServerAddresses:
% _' W2 ?) b3 q7 [" a Addr Count = 1
0 l: w \! y5 L# h Addr[0] => 172.16.12.1
( j. j9 \& X& p9 G ListenAddresses:7 v+ P. }0 g# g* R" g
NULL IP Array.9 K" z& P$ x8 ^8 `- q
Forwarders:4 n4 e. S& p7 q9 H6 V8 l! Y
Addr Count = 1
7 {+ g2 ~1 v9 r) n2 A2 S Addr[0] => 172.16.4.3
7 ^" [ a4 s4 d" }, W# J& [ forward timeout = 56 x6 r& Y: h4 k0 C1 D% t
slave = 08 o2 V- f; ~: _+ s2 a3 [
Command completed successfully.命令顺利执行完毕
" t1 j- P4 C( W$ y7 q8 ^0 s$ e 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
3 x1 U% F5 U: I& [6 d7 Q# ~ 命令:/Config
- h$ b8 K, y; M& j 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。- ]1 K5 }+ b' S' S$ t. C
# y. p: b- Z) Z, n8 b
用法:
$ i% @# L% Q& t0 x dnscmd ServerName /Config [ZoneName |..AllZones] Property Value+ p' K& r H! \9 W
参数
" _4 ^$ L1 \4 w5 a6 o ServerName :服务器名称,意义同上
3 E. c8 M' l9 ~/ h ZoneName:! {( W, l8 j, O' @4 M c) i
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 " e) v4 v& k2 b, G% Y- F/ ]: X
Property:
) l+ Q% I' l/ N+ `0 d 这个参数是属性。这里所说的属性有:
8 I B/ A6 r% \5 v9 C- ?# s% b: L! c 与服务器有关的属性:例如:: e# U" U. v' w3 z- a
/EnableRegistryBoot
' P7 l$ m# Q$ t/RpcProtocol
: V4 i7 b/ O Z! s/LogLevel1 q1 y% j3 f# E) Y% v7 O
/EventlogLevel 等等 (限于篇幅未能全部列出)
2 g0 O) U0 v5 Z4 @与Zone 有关的属性,例如:
6 D5 A( }1 S- @: x7 r6 w3 a4 x /SecureSecondaries
% E. Z- f1 c! j4 a3 ~ /AllowUpdate
8 Y; h, Z( Y; W /Aging& b1 M2 n/ @8 U/ I2 W
/RefreshInterval Value
! r& P. `9 x4 L- t3 l /NoRefreshInterval Value. K! ]. p; Z% G7 M9 Y9 ?
属性值:" q' G. z7 r3 Q# x
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
' [; r; e$ t; O/ I& p从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
+ W7 ?& I5 X0 ]* n5 F 命令: /Statistics
5 ^4 [/ p. v/ a; W" n) j1 n# C 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。: R; O$ g, a! j! i
用法:
6 n' Y, T4 Y/ k dnscmd ServerName /Statistics [Filter|/Clear]
& K- }/ d4 ~ I0 `$ m' l 参数:
( V# l+ Y5 I4 r- y+ N6 I% a! Z* g- ^ServerName ; q6 e. ]8 d, s* z" X2 ~
服务器名称,含义同上。
( [5 P- e) i/ w0 O% }% w可选参数介绍:6 i4 u3 r' J7 S" U* @, ]* x K
共有两个参数,每次只能使用其中的一个。
0 a7 D7 X% |3 {" n+ L' { 1.过滤(Filter)
4 p9 w, f5 |+ z% r7 G5 k 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。9 [1 X# z6 ?6 B; V/ _( K/ u7 u
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
8 |4 c2 D0 w H% @, D 00000001 -- Time
" n3 X% Q$ ^7 c O2 b 00000002 -- Query7 o0 E; I; w$ B& R1 Q
00000004 -- Query2
4 _; G) u J$ }0 J- o7 E 00000008 -- Recurse
, f8 Z2 e. v0 |0 F, B+ j% U 00000010 -- Master) v- S/ z1 e# {# }
00000020 -- Secondary# n% i* ^# D$ G; B
00000040 -- Wins$ w) `0 @* b4 }9 u" q
00000100 -- Update
" }7 g. h( v G/ n a; h% D 00000200 -- SkwanSec' @: {* o5 b0 Y3 E2 L2 v( E- L
00000400 -- Ds
/ O- e! |* Z8 U/ T4 P3 ] 00010000 -- Memory- l0 }1 ~6 P1 ^
00100000 -- PacketMem
2 ?" G& j6 D U7 B 00040000 -- Dbase
' c& L q& m; u 00080000 -- Records8 ]- w& y/ m+ _# \
00200000 -- NbstatMem9 e9 U% V% g" V
2.清除 /Clear
3 @/ p9 A2 {& j6 i 这个参数用来清除统计信息。* z) ]7 E8 ?/ d
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。; F' A6 S2 T% {8 k$ P. E
$ j; l( {/ z) X [) F5 ?$ S + Y/ W; ~0 n% W1 g* r) r
4 k5 p- F0 d1 F* H6 c4 M
|