本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
" P1 J; y. R' W" S. X 命令: /Info
- ~1 v' I3 r; X" N1 w K 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。$ C: z" O% @7 Z ?1 K) c. M
用法:
4 ]% I/ t x1 A8 q4 ?- [ dnscmd ServerName /Info [Property]
- Z+ I; Q4 T& B4 B 参数:
- V& ?, }0 E! S) @2 O( j. J8 B$ M ServerName
' [7 v3 j6 x9 F# P6 O9 i9 v U" r 服务器名称在上一篇中已经介绍过,此处省略。
/ y0 f0 a! P F0 f9 b O [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。0 x0 p6 a8 B. `) K1 D$ d x% c
下面是该命令使用的一个比较完整的例子:
0 w2 ?3 L* Y1 u) ] 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
7 p0 D2 U, Q% qdnscmd 172.16.12.1 /info 只使用命令而不使用参数
( \2 @& {; F& y H* ^: @输出的信息:: L9 ?% P* ~6 d: D
DNS Server 172.16.12.1 Information:
4 [9 X9 {, n; V4 d- a9 oC:\>dnscmd 172.16.12.1 /info8 a% y( c4 E* X& g0 z1 v
Query result: 查询结果1 f$ ^; Y6 w# D' \4 ]
Server info: 服务器信息4 Y' ?+ F1 n( B+ i* Z ~
ptr = 00074718 端口" x" G; _6 K, j7 K/ z1 N
server name = myserver.microsoft.com 服务器名称$ F8 n0 L0 Q; q8 G/ E
version = C2000005 版本. m( m: [( |3 m; n% s
DS container = c DS“容器”
) W8 v: N! i% H6 B Configuration: 配置信息 这些信息的含义请参考有关资料9 O u' _; Q+ K4 P% s Z% @) B
dwLogLevel = 00000000
* u: @/ j: F. r dwDebugLevel = 00000000 _0 ^6 y$ O* e2 T# t- J
dwRpcProtocol = FFFFFFFF
$ R2 D5 j( q O" \# U9 s dwNameCheckFlag = 00000002# C* e) {- l( K
cAddressAnswerLimit = 04 ~& ?" V- J& l
dwRecursionRetry = 3
* T( ]% r: B- g( {2 e8 b% ^ dwRecursionTimeout = 15" p Y; L) Z$ n0 U9 F
dwDsPollingInterval = 3007 ~/ `+ T/ m; l7 X# G
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
! L% A9 w/ h/ G5 j9 X, yfBootMethod = 3
" R/ t' o# n& ?6 AfAdminConfigured = 1 ' t! c& \7 k/ V, m
fAllowUpdate = 1
+ I( x4 x% m" ?# TfDsAvailable = 1 . e9 B) m5 z8 T! I( Y# g L
fAutoReverseZones = 1 " z6 b9 B$ j' ^- v' R& u
fAutoCacheUpdate = 0 % R, j# }* x; [. s7 f$ ~3 B7 ^
fSlave = 0
0 |6 C, x) }$ O! O2 ^5 w# |fNoRecursion = 0 # j5 W r! J$ @- ^9 v" ~
fRoundRobin = 1
+ n& l$ Z8 ?- f4 N. H# Y$ t% QfLocalNetPriority = 1
! |. `2 J& Z9 U2 u K# V; Q. |/ ]# QfStrictFileParsing = 0 6 m+ {5 [6 Y+ S; _9 G9 @4 c2 H0 a4 i
fLooseWildcarding = 0
+ z& }8 z) H" y ^# [) K' W& `5 NfBindSecondaries = 1 , ]: X' Y U1 a# ]7 h- `5 B3 }8 e. ^
fWriteAuthorityNs = 0
|" j6 e: j& P0 ~; Y; {- dAging Configuration:
1 A5 M3 ]8 b- X% jScavengingInterval = 0
4 I* z( s' \( sDefaultAgingState = 0
" ?( Y7 |% J3 h4 bDefaultRefreshInterval = 168
/ _; k6 {2 x( M: F* nDefaultNoRefreshInterval = 168 ! M, H1 b, E2 l; R; o
ServerAddresses: : p) Q& T6 L8 Q, h1 ?% L3 k8 V
Addr Count = 1% G" n- G2 U0 ^
Addr[0] => 172.16.12.1
" q3 c: F+ h, X5 }7 e2 I ListenAddresses:& @( d1 D2 y) C
NULL IP Array.
+ r! T7 i3 R6 c0 a& a0 E. Y% O1 }# D Forwarders:
3 d# X5 |7 p% ~' M; h Addr Count = 1+ y' M; G- _! h- \; O6 ~( U
Addr[0] => 172.16.4.3& o3 Z+ t. g8 P
forward timeout = 5) {% I/ N5 u, T6 Y* o$ ~! ?& d
slave = 05 r" D7 J! T% x" X- K- e/ }; i
Command completed successfully.命令顺利执行完毕 4 X2 n8 D4 z: K! Y; v" X
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
+ ?7 r2 k G6 K 命令:/Config
, \7 R- c& t: H: ^+ w; o* o 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
$ b: ~. l. U4 j
5 \1 H$ c: R5 T) G" F9 y$ P& Y 用法:
* p1 m9 e- }' A2 _1 ]$ Q6 m* F8 i dnscmd ServerName /Config [ZoneName |..AllZones] Property Value2 w; O _. u3 A; B( g; J
参数
% P7 ]5 p8 q$ R; G$ i$ F! Y1 | ServerName :服务器名称,意义同上
- U q. [$ h, C2 Q" E ZoneName:
. A0 m" `' R. N) D 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 & @0 U/ ?3 Z4 w* e8 c
Property: ' v0 q6 Z5 G: U) S
这个参数是属性。这里所说的属性有:
0 [8 S7 N! h6 F6 y6 J 与服务器有关的属性:例如:
2 |9 ~) A0 f$ n9 @6 Q3 E1 F+ O/EnableRegistryBoot. U; K' I. I7 h+ z+ t
/RpcProtocol' G4 S! g) t7 c. T g! V4 Y ^
/LogLevel
( P1 n% O- Y( E/ v- m& a/EventlogLevel 等等 (限于篇幅未能全部列出)3 L7 n" @ }/ H5 d* i, K
与Zone 有关的属性,例如:
0 `# b/ c- Q; Y, I) `7 F /SecureSecondaries9 R/ |$ w2 M1 p6 j6 ^
/AllowUpdate
- y5 g1 Y' R/ u) B6 z; F /Aging
6 C- v: a# y: N /RefreshInterval Value+ I& m. N6 U! c# z
/NoRefreshInterval Value
/ `7 C9 P( q! F% E3 ` S 属性值:3 _0 ^# J: r4 R+ K2 |- E
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
: C! ^% p6 q- e5 E: n8 }9 D从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
8 g9 j; z" N7 b, h' m' w5 F- i 命令: /Statistics$ ]/ w$ F; k+ c' h' [) _9 U$ e" B' o& c
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
r+ J! w$ |. h5 K 用法:
$ S% L2 S4 i8 {7 a) X dnscmd ServerName /Statistics [Filter|/Clear]
" P6 K+ w1 i- n8 O0 Y( u W 参数:# \, a& O+ \3 `& k, V# c* Q: ^1 p
ServerName 9 h" w9 N2 K5 K# @& V1 v, f
服务器名称,含义同上。6 m/ M7 |4 K% @) b9 r
可选参数介绍:# b$ v5 t& D( R' |) D" n: n; Y0 C
共有两个参数,每次只能使用其中的一个。
9 [+ o- |2 Q6 ` 1.过滤(Filter): d3 C6 j* a% l# m
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
0 \8 G( F7 O2 ?9 A$ |: c可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: & G5 K- s7 J6 s6 b$ i9 U
00000001 -- Time
E" K, D) ^$ u5 P, Y# n/ O( ~ 00000002 -- Query8 Z! ^) @) B5 M
00000004 -- Query2
. ^- H( H( t: U( [+ U4 v1 [/ z3 v 00000008 -- Recurse
q3 F1 A# E( @. N, e( `( c7 Z5 n 00000010 -- Master
0 z! B. I* r+ h5 u, |% ~ 00000020 -- Secondary
2 S- b+ |/ A/ T: J2 I# g3 z 00000040 -- Wins( X1 | \5 j. o% Y+ M
00000100 -- Update$ _" v- f$ J; e
00000200 -- SkwanSec4 Q1 g0 {. H7 s) ]* X1 d- R
00000400 -- Ds
1 S' _0 [% A% O, J 00010000 -- Memory- u" c; ^7 y- m* P$ B% q# V
00100000 -- PacketMem9 B' K, Q. A+ v, ]! f
00040000 -- Dbase
8 E/ F) [$ p; T9 S 00080000 -- Records9 ^, m, X6 ~6 _$ ~8 \! N0 @
00200000 -- NbstatMem
& n. O+ C+ D+ b% g 2.清除 /Clear 6 V! b1 U. |+ A5 |5 d
这个参数用来清除统计信息。7 \1 O* d7 X9 P" y/ _
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。% { c6 d9 I7 ?3 ?# b
# l. h2 A# S' X, A% s/ X; S, _! W0 I
# p7 S# ` b) Z8 x1 K7 C% q
) i+ l5 m0 n& v: ?( k( U
|