本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
; o4 L7 | @" [ 命令: /Info
u) U2 H3 X9 d( _% J9 W* \/ x8 z 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
2 q* ^# T" k4 z* b! i1 @2 Y 用法:
Y: j# Y/ g0 q* k+ J% d" E' }+ p dnscmd ServerName /Info [Property] ! W* S2 e5 a9 v+ M3 j1 i
参数:
. o9 {% h; t) U0 z% Y9 _7 n ServerName
# ^+ d! ~1 u+ S0 f+ \- U D' Y8 `( [ 服务器名称在上一篇中已经介绍过,此处省略。
# z. I5 Z' N# c% t" n V( ] [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。' f( f& K( ^8 _. ?
下面是该命令使用的一个比较完整的例子:1 H: W& G1 d2 Y, l* r% j
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:7 G! [2 \( @& N I7 o
dnscmd 172.16.12.1 /info 只使用命令而不使用参数) ^2 x5 g* L7 f. w6 P! j" m
输出的信息:
0 C" |4 O$ ]+ b# n4 {# MDNS Server 172.16.12.1 Information:
2 `% O- P n9 v. EC:\>dnscmd 172.16.12.1 /info6 z# R( e5 J9 J5 d/ g& ^" Y
Query result: 查询结果7 T( a$ M3 l1 X& w& O
Server info: 服务器信息& e3 R% i( o4 ~- ~' N8 k, G1 `1 h
ptr = 00074718 端口
7 ^$ x6 v2 l% O server name = myserver.microsoft.com 服务器名称2 m$ G+ A3 A+ p: R7 B* N6 ~
version = C2000005 版本- c$ f- b+ p9 |
DS container = c DS“容器”
/ C7 }. s- c, m* r% c# O( @' N/ F2 c Configuration: 配置信息 这些信息的含义请参考有关资料3 _/ o, u; i$ e) x! I
dwLogLevel = 00000000
6 O% D7 b" G# j$ M+ u+ { dwDebugLevel = 00000000
7 J0 r0 G6 i) Z dwRpcProtocol = FFFFFFFF
" I2 D0 T; f- Y2 ?' f0 {! Y dwNameCheckFlag = 00000002
& A" N: C3 _4 h- Y7 [4 t1 S# c cAddressAnswerLimit = 09 H9 a+ c9 \+ @0 ^3 D8 p
dwRecursionRetry = 3
7 Q1 H, n4 n0 G% u' ~! z$ ` dwRecursionTimeout = 15
+ b' P# l$ A* J; a2 r dwDsPollingInterval = 300
, @- s6 l! a3 _* ^- _1 h/ h Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
4 d9 s S% A8 e2 d* lfBootMethod = 3 : y+ a1 f C" o
fAdminConfigured = 1 ( i& {# N o+ \& j
fAllowUpdate = 1
s9 c8 h- M! g: J7 sfDsAvailable = 1
1 t# l# a; @8 n) \9 lfAutoReverseZones = 1
0 U* k! F B4 Y( hfAutoCacheUpdate = 0
% ?7 y5 @( }8 }fSlave = 0 + J7 o, W, J n8 O
fNoRecursion = 0
- H3 {2 ]7 l4 h/ YfRoundRobin = 1
7 D) p" D) U0 Q. K/ N D$ |fLocalNetPriority = 1 8 ]4 d: ]9 p5 x1 X
fStrictFileParsing = 0 : f# y$ Y' M, `
fLooseWildcarding = 0 $ O- ]9 W5 L' Q7 r5 k: H
fBindSecondaries = 1
9 t7 G" d* ^) c2 e# pfWriteAuthorityNs = 0
; j' x# {& v2 rAging Configuration:
E M) m$ Q1 ^- i5 SScavengingInterval = 0 3 P/ F+ V. E8 P5 w0 \7 e4 K% Y
DefaultAgingState = 0
; S# m {: ]0 T5 t7 [4 q' j9 aDefaultRefreshInterval = 168 6 g8 f& H+ j" W$ b* f
DefaultNoRefreshInterval = 168 & m B0 I# }$ k5 N- c5 @
ServerAddresses: / H' g2 [/ S; C5 x [8 `
Addr Count = 1; Z) U6 o3 Y; N
Addr[0] => 172.16.12.1. [/ \2 u# \) K7 _) J0 U* L* V
ListenAddresses:* }# V/ j @- d: G: c1 l& [( R
NULL IP Array.* Z% Y `/ D# h$ K4 H3 t# u$ g* M
Forwarders:
6 o3 X- ]0 y- g: d" L5 D/ A Addr Count = 1; S+ P2 H) R3 i+ D
Addr[0] => 172.16.4.3
4 s. C9 d" l7 R) ]( V d forward timeout = 5
+ s8 \: |: r9 M6 v1 j# a4 O slave = 0
& o9 i- k8 X8 z! a0 Q ?1 J! h" ~2 GCommand completed successfully.命令顺利执行完毕 $ K2 B" u4 Q: ]$ }. N0 C; ~
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 & W. c/ @8 s8 O9 `1 ~: U! X T" Q" M
命令:/Config" v" n/ z; Q# U! E* @$ _+ M9 L+ ~! ~
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
* K; \4 {% a7 c% ^3 |
& W4 p7 _3 @. U 用法:
1 r0 f; b: `) y dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
- K% m$ r, o0 c. n9 |- a 参数: p& i0 `4 ?; |
ServerName :服务器名称,意义同上
9 b6 ]0 a' a" N9 K7 H% Q: S; T ZoneName:) ]+ v: R! k7 u. W& I1 P% a4 A
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
1 y! [6 Z ]& ], _, D9 k5 P+ T Property: 9 x5 K/ C i' x2 K' R. ~& P
这个参数是属性。这里所说的属性有:1 K, C1 f) X6 ]6 |+ P
与服务器有关的属性:例如:
@( {# ~ O% l0 l; E/EnableRegistryBoot2 [ V* b$ k0 z8 ^2 s2 s; p
/RpcProtocol
8 t: e) o9 V5 U2 Y X/LogLevel0 `8 Q, G; P! V9 k; I& v) o
/EventlogLevel 等等 (限于篇幅未能全部列出)
& V. S) x) E3 ]& |7 s与Zone 有关的属性,例如:
- N; p* y( y6 C. @; H2 E7 M /SecureSecondaries, ^9 O& ^. z! C& r3 `0 A" W
/AllowUpdate
6 s$ y+ o& ~- K /Aging
5 |: Q+ t% t( v# e+ v /RefreshInterval Value
, I1 h0 H: N$ K# T7 g0 l /NoRefreshInterval Value
1 s( C) X4 u7 x& J _ 属性值:
% I& a# W2 [" i9 r7 l3 \9 |; o 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。+ h. }+ f: M8 w' U" C& {% Z( t" {5 Q. a
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。& c- v7 x6 d+ ?3 t$ w. w0 Q/ b
命令: /Statistics
2 L& k( ~' P+ S8 T9 y+ v- o Y 作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
& T" X8 b2 z2 `9 W' k 用法:6 v; d3 y- D- C0 V' }
dnscmd ServerName /Statistics [Filter|/Clear]( n; e9 G" X" \5 c u. b- p
参数:* O9 f2 [! c$ U6 M* e1 j
ServerName 6 C! u* d( c5 {/ e, e4 l" k! p5 i
服务器名称,含义同上。
' o! p0 |; W3 [7 l: k* T8 x( ?2 N可选参数介绍:
3 M4 z% ]* c7 y. ?5 Q% P; `共有两个参数,每次只能使用其中的一个。
, x3 U; ~% |! G: @1 ?) {9 W+ U 1.过滤(Filter)
1 F9 e3 z; G: C- u7 c 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
; N, J( p' R: I1 O可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: " ?; _" F: u- C$ Q1 U
00000001 -- Time* Z: Z3 U. d9 x4 F1 N2 ^
00000002 -- Query
) W2 R* \! R3 a$ o. m' r5 U2 G 00000004 -- Query2
2 w5 \# ]& ^# _& D0 s/ w) k 00000008 -- Recurse
3 ~0 L% X9 p" d4 p6 w! [2 C& { 00000010 -- Master
4 @+ \2 b. `4 K9 [' E' Q 00000020 -- Secondary; K2 \ b+ |/ o
00000040 -- Wins
% ~4 k% x G) d; | 00000100 -- Update
/ v( I& L. ?1 H) m- D 00000200 -- SkwanSec# @. `( q7 r6 K
00000400 -- Ds6 p. Q2 B' E4 E# s* k
00010000 -- Memory' K# |5 w4 A7 x: p; k
00100000 -- PacketMem
# j( }6 y! ?; U5 ~8 c 00040000 -- Dbase
! Y. }( q' \1 D V1 m) v/ l; F% C/ V 00080000 -- Records) E/ a) A; ?" _% z6 {
00200000 -- NbstatMem8 v5 G% i& ~ ?. Y1 _
2.清除 /Clear # h& N. X. b( S$ `- |) a5 o0 S
这个参数用来清除统计信息。
" ~4 K/ E7 I% [; g 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。1 j* w4 }( {6 i
! J0 L! q! r$ w; L& \
4 F( D/ p# f( ]- {+ B& D6 |% }, O5 g
|