本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。/ D) g/ H9 h1 I- {% V3 p
命令: /Info . J R# G6 o; H6 @& }
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。2 V7 W" r, {* N/ v% r5 ?" m
用法:6 p4 ?9 x4 c2 X
dnscmd ServerName /Info [Property]
}6 j" ]& @ e( h1 J 参数:0 J S) d! } m6 o/ f
ServerName % M5 Y N0 V# ?0 v
服务器名称在上一篇中已经介绍过,此处省略。
4 S# P% N$ @8 j; ]0 u4 b" D [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。. h6 N4 L7 j% i$ Y5 Y
下面是该命令使用的一个比较完整的例子:
- D6 u! o5 Z, h* N* q 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:" V" v5 M. O$ j' t
dnscmd 172.16.12.1 /info 只使用命令而不使用参数- W, @" q1 |, t; }, ?9 q
输出的信息:
! ~4 h' Z. i4 dDNS Server 172.16.12.1 Information:2 u2 L. @, f5 R% V! q
C:\>dnscmd 172.16.12.1 /info/ b$ g$ l( P; I3 j6 q0 U7 M9 ^
Query result: 查询结果7 ]/ s) t9 r8 V/ _5 a
Server info: 服务器信息" t, H `7 G2 _& f" S! A2 q
ptr = 00074718 端口
2 }1 N$ u! {3 N* Y: R/ w/ v server name = myserver.microsoft.com 服务器名称
% ]0 q. B- d( s' O v1 {0 L version = C2000005 版本
/ \3 V0 Y1 o' v# o: g" o9 e DS container = c DS“容器”
4 I9 r7 H" h0 r Configuration: 配置信息 这些信息的含义请参考有关资料
1 v5 t) u9 q, R* d& E" p dwLogLevel = 000000004 _. T0 F/ j7 D& e$ n0 H) g
dwDebugLevel = 00000000
3 [7 j; ~, V0 b6 G dwRpcProtocol = FFFFFFFF0 `) g1 f, H, Q) q
dwNameCheckFlag = 00000002
+ `) X" u/ W- r2 V7 g8 ` cAddressAnswerLimit = 0
. F! Y( |5 L. P2 D3 S! M( F dwRecursionRetry = 3 ~4 y, Q8 p2 _1 p0 s
dwRecursionTimeout = 15
% z! X! U" N% G! ~% k dwDsPollingInterval = 3000 j0 ~* e+ ~$ w% u3 m1 B6 m
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
9 u" v" L9 y# kfBootMethod = 3 ; W5 M( }6 c( i& r- a
fAdminConfigured = 1 - A; f+ j4 D! @0 F; }) q( L: @- B
fAllowUpdate = 1 ( [/ O6 W/ W) }# J( i9 @4 s
fDsAvailable = 1 : h+ ]; m# r1 y" y
fAutoReverseZones = 1 4 ~- _5 x' K8 S! T
fAutoCacheUpdate = 0 5 t/ _ A e; a# i8 d! v
fSlave = 0 " n* E' o* y/ ?; q; k
fNoRecursion = 0
: n {/ u& Y' f1 M( m4 D/ w' WfRoundRobin = 1
P/ i: I& U2 UfLocalNetPriority = 1
5 }; \5 ?# D& M. mfStrictFileParsing = 0 6 ^! I+ L. c; z
fLooseWildcarding = 0 2 l- \$ R2 ]3 ~- f
fBindSecondaries = 1
$ [- x7 w9 k( S+ N. O2 lfWriteAuthorityNs = 0 $ [9 C' m. `$ G( N: W
Aging Configuration: + c" G; |8 [7 y9 {. o) B7 M
ScavengingInterval = 0
5 `3 Q% L/ d! X- f; J- jDefaultAgingState = 0 6 y; Z& C" i8 Q
DefaultRefreshInterval = 168 ( P+ e2 f( a$ `$ b+ k3 }0 \
DefaultNoRefreshInterval = 168
+ q8 e; t9 Z' K2 u6 n ServerAddresses: , i# m# @4 Y1 H7 k
Addr Count = 1. S* s* ^' M7 G- A
Addr[0] => 172.16.12.17 v4 | u3 v7 V1 T3 A) t
ListenAddresses:
/ x: `' L$ X' `, Q( y) o NULL IP Array.9 F1 P A4 A' A5 O' }
Forwarders:$ _5 r. M' U6 J" m
Addr Count = 1% O4 ]2 ~1 `- V
Addr[0] => 172.16.4.3+ s3 r" X# `$ `+ i: Z) X' J: w
forward timeout = 5, q! A+ V! n! k* f! K
slave = 0
, m4 {9 }7 [3 CCommand completed successfully.命令顺利执行完毕
: W- b( B% k Z. ] 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 ! }9 r& a- l0 h: Z9 r
命令:/Config
1 G$ v* w6 o W7 o4 f 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
. Q3 F% Y0 \: H% L# \2 J; S1 F
0 ]; b' I T* a& j 用法:
) ^, k" X( H4 O) m0 \ dnscmd ServerName /Config [ZoneName |..AllZones] Property Value$ ~* g5 K' i2 [2 ?" h) \2 z) O
参数
# q6 |, b/ T- {; ~ ServerName :服务器名称,意义同上 . C* V' ?. o4 V
ZoneName:0 z7 f$ k$ U" f! _
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
; F1 K; h2 ?0 W3 w% B( n( d Property: , |# y7 [4 j) B: O9 d) t
这个参数是属性。这里所说的属性有:
' c9 I# N- w) Z 与服务器有关的属性:例如:
3 F# e* r5 G4 X/EnableRegistryBoot8 p: u" r. Q( k* d& i* R
/RpcProtocol
5 S- p, ]% Q9 r8 N# E) {. Y/LogLevel, x! c5 W9 d7 V. ?6 x0 X, z
/EventlogLevel 等等 (限于篇幅未能全部列出)
" d u+ S& ?" Y4 x# Z与Zone 有关的属性,例如:
4 K. a/ i) C3 U/ `7 V /SecureSecondaries1 {6 K3 @ D0 d2 e1 g% _9 g9 ~
/AllowUpdate- ?0 e. \" P4 b" M9 O1 B1 C w7 Q, q
/Aging
# I$ [5 c2 D8 `$ ~# m" v7 s# l. W /RefreshInterval Value& g$ g" E6 |* N7 ]: Y3 H
/NoRefreshInterval Value
6 W! @: ]- F: {9 E 属性值:
# }6 m1 c- W/ i( p$ Y 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。5 V& V$ q3 j" A4 G0 Q
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
6 F. B6 C4 X( X 命令: /Statistics( h2 ?7 O5 z- s8 U
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
8 O/ ]2 C7 G7 ]6 h g2 h' e 用法:0 ]4 e N5 e8 h- n! Q+ f
dnscmd ServerName /Statistics [Filter|/Clear]
8 X0 x; }1 K- J- N1 h% f( t7 \ 参数:
1 B- Z+ n3 A0 KServerName
1 s. R* \, K# K9 q' X ?& w服务器名称,含义同上。
5 I4 ^ B; N# l% `6 E! ^" N, q' s可选参数介绍:% W) N. ]# `* T& ^+ ]( X' y3 e
共有两个参数,每次只能使用其中的一个。
+ O$ Z8 O$ ~ Q; |: \0 a 1.过滤(Filter)
5 V( s& g! Y6 H+ Y$ B' ? 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
; G% v0 _/ ^' J9 `可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
7 l. m n1 i H( c 00000001 -- Time* j B# T2 x; n6 [
00000002 -- Query
% a6 a; y7 J5 c {# D( T 00000004 -- Query29 u" ?" d$ y( ?) h2 a# O
00000008 -- Recurse" S7 P7 x7 B2 f' a. T, q9 f
00000010 -- Master
2 U8 [9 O. {1 U9 o/ r' Q8 W$ @ 00000020 -- Secondary
% N9 e0 u) c4 m3 G$ ?# E9 Q( w 00000040 -- Wins
& H' w7 t) w! f: _* i" y; i( k 00000100 -- Update) y+ N) o8 K6 i0 b! h
00000200 -- SkwanSec
8 i" c' g" n# [1 b% W8 o, t 00000400 -- Ds
$ s: J7 t; i8 Y6 \$ S 00010000 -- Memory
/ v0 w, _; K/ C' T 00100000 -- PacketMem
9 t; b! e2 f Z0 C1 s 00040000 -- Dbase
& A* s4 g1 L- h/ p$ [) n9 O 00080000 -- Records7 X/ d$ R& ^1 s" Q4 q5 _2 y y
00200000 -- NbstatMem, M3 z4 e# W! F8 M. o. A
2.清除 /Clear / ]5 S' S4 n+ z5 b1 t
这个参数用来清除统计信息。5 f0 }9 [5 i t
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。7 U# m3 I9 t% l
b h. l7 K) T/ I, z / U5 j2 Y1 C) C r
4 s) p! }9 A7 a% k+ p& c- S5 [8 X
|