本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
, A5 r, {& E7 B7 I: q; ` 命令: /Info 2 I7 u. F( s- Z: x
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
( h5 V; r$ Y- E6 j" d! D 用法:5 A! F0 x4 ^: C2 T! p2 V+ k
dnscmd ServerName /Info [Property] ! j6 q1 w { G1 i4 f
参数:2 ~0 e) K& L1 M. S
ServerName / {9 q, W% a6 U/ `$ }
服务器名称在上一篇中已经介绍过,此处省略。 * r& @' ]$ [9 d, W2 t9 z
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
3 i) n/ {. B# G% D. S% V 下面是该命令使用的一个比较完整的例子:: K6 s D4 L/ C! N
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:0 F) e/ m# ~6 l) ~2 f, K2 p6 D
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
# d% M( F4 ]0 }0 d0 c5 @, u( G) V输出的信息:
$ n9 x w& T% ]DNS Server 172.16.12.1 Information:
2 w, ?% t$ G. i9 Y S5 Q) d5 c* IC:\>dnscmd 172.16.12.1 /info
5 Q* K( p, w- y" o2 `' mQuery result: 查询结果
; V, ]# e0 f+ U9 t# xServer info: 服务器信息 B! h3 H6 g. d0 [9 S t A
ptr = 00074718 端口! r- f( z2 @9 a- k% O/ H3 r
server name = myserver.microsoft.com 服务器名称) m: P0 f) G e X) H3 @+ |
version = C2000005 版本# M+ r5 [$ H" X/ x
DS container = c DS“容器”0 _8 `/ m3 v' u8 F W O% X
Configuration: 配置信息 这些信息的含义请参考有关资料/ o$ j. W; l' a. }$ {: j
dwLogLevel = 00000000
1 k& R' _9 N* c2 D" n; \: K dwDebugLevel = 00000000
6 L$ |! O, q5 a- A7 | dwRpcProtocol = FFFFFFFF8 A6 Y2 y6 i. R0 a# G8 T& ]8 q
dwNameCheckFlag = 000000022 ]* X7 x: Z P: a: t
cAddressAnswerLimit = 0
" A# h7 m* I9 _! L4 e* T' d dwRecursionRetry = 3
7 T# @4 K& ?# I dwRecursionTimeout = 15
+ j6 U$ j E9 H; A9 T a dwDsPollingInterval = 300- r; q# x; b2 j# l
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料
5 |" v" q" d/ i/ L9 l8 T( mfBootMethod = 3
( F: o, [/ u* k& a) j7 d+ tfAdminConfigured = 1 1 Z o( f5 ]6 s' N
fAllowUpdate = 1
0 p6 g/ y: V9 O' y! ] f/ [- gfDsAvailable = 1
+ [7 I7 ?3 K S% SfAutoReverseZones = 1
1 ^0 ]3 B0 P& D+ b2 qfAutoCacheUpdate = 0
; \) `2 }% L! l* U; nfSlave = 0 $ p# A& a6 q0 ~7 X; X
fNoRecursion = 0
; m' N5 v) t [+ _# YfRoundRobin = 1 * S) |9 F% I+ z3 n$ a
fLocalNetPriority = 1 ( u g2 h: v6 K% S/ [1 L
fStrictFileParsing = 0
, m( ?( Y! Q0 a% L* S2 E v- m9 I- J; xfLooseWildcarding = 0
% e* ? V/ z: T( k+ `4 k- F# WfBindSecondaries = 1 & l0 S- S2 \4 ~' n* o
fWriteAuthorityNs = 0
0 @" H% u& W( ]7 O/ l4 gAging Configuration:
# B+ `. n' b( }( R8 m7 c9 U9 bScavengingInterval = 0 + \7 E, \7 A! u
DefaultAgingState = 0 . I x% I9 m1 g9 N2 Z' Q X
DefaultRefreshInterval = 168
2 [ w% F5 T$ ]DefaultNoRefreshInterval = 168 3 w6 i2 `3 m% G4 N+ e/ K
ServerAddresses:
, q! z8 M) X/ V# V0 @ Addr Count = 1
+ a5 i& E a5 n5 U' j Addr[0] => 172.16.12.11 W) v6 B S! \& O
ListenAddresses:
6 j6 X0 ~0 s! R3 \, N" }+ R: t+ D& Z NULL IP Array.& O1 f: ^9 t* V* N N
Forwarders:
5 l) s2 Z( C/ V5 n- F0 u Addr Count = 1
/ q0 i" p* E3 G4 `% o Addr[0] => 172.16.4.3
* u6 R: J" L- ]) K+ s forward timeout = 5
& L% q6 _/ r# P. i+ v" E" r slave = 0$ a; r. W0 o* E+ J/ A) I$ t
Command completed successfully.命令顺利执行完毕
" @7 i0 L3 U! S7 X1 R3 Q2 ] 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
0 Y8 v5 b* A3 ?% E 命令:/Config
+ z, N) u! W2 P# n& L4 o 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。; s! _6 G, O# h# h
0 Y3 P6 ]7 F4 ~5 K- _/ k5 b. u2 H 用法:) L$ c1 Y/ S8 K
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value+ n! ]# D& B, M4 n7 m6 F- k4 V
参数
5 M O) ]8 }( F; ~ W* B, g ServerName :服务器名称,意义同上 2 A6 s- C( w: e7 |7 ^2 R
ZoneName:
# ?& \) O4 U9 i! u* E 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
5 B j% n1 K: R) r$ y) ]4 z$ y Property: 4 a* A0 B4 e2 i+ ]7 J7 }1 |& t
这个参数是属性。这里所说的属性有:: a% L5 M( f% m8 ]* t$ P
与服务器有关的属性:例如:* c& o" ]8 o7 J& Z. U* o
/EnableRegistryBoot& v6 l1 H9 z9 c. j* S6 W% Z! B! C
/RpcProtocol
, D* ?; l. `# q* e$ Q2 ^/LogLevel! M$ J, U6 p( S1 E' Z7 q
/EventlogLevel 等等 (限于篇幅未能全部列出)5 V6 ?8 ?6 N6 R& Q F7 x" l
与Zone 有关的属性,例如:
4 s( |! @# R, _4 L /SecureSecondaries0 f9 ]9 h/ H& b d: T" N4 J: `/ X
/AllowUpdate( V* z8 ]% I; y0 z
/Aging0 P* O$ V3 G; F0 k8 }
/RefreshInterval Value
. Y S7 d7 u M; Q! A, [ /NoRefreshInterval Value
" ]- o( v$ b! L" O5 l( d9 H! Q; d 属性值:
0 {0 G. z) K! l 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。4 _9 Y* }: l/ w
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。2 U. B a$ _! S0 }% h5 e
命令: /Statistics. A* A2 f9 `5 V0 t! R
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。8 x: p3 i4 E( Y
用法:
7 [; r4 W& b) z6 J* t8 Z$ S: C# } dnscmd ServerName /Statistics [Filter|/Clear], S8 U3 `6 U) y' f, V
参数:
0 _9 E; l' g4 n" ]" i8 t, M0 ?. IServerName 4 |0 I, a* h- t2 B$ I
服务器名称,含义同上。8 C( I: U/ x3 `4 D% ~
可选参数介绍:3 o% y B' k* E2 n1 ]! U' @
共有两个参数,每次只能使用其中的一个。$ ~& Y( s5 { J8 Z
1.过滤(Filter)" ^( \- K6 N" p; R5 {9 |# @
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。5 E6 e( T" e: n& [9 q
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: ( M/ w; |( I, Q, ~7 z0 L2 P
00000001 -- Time
" {2 a4 _# S5 x5 y1 p 00000002 -- Query8 C- I# @4 ~! L! Y( I
00000004 -- Query2
) Y' P( B, _' Z: Q+ x4 q. S: } 00000008 -- Recurse
& ]8 }& \/ |" D/ q9 z0 h* a7 L 00000010 -- Master
, l. W6 g7 U+ n2 Y& I. F" B 00000020 -- Secondary
+ H o% k! a; q! x 00000040 -- Wins/ F1 E7 S8 I/ I y
00000100 -- Update+ A- O' T- _4 P( }9 J
00000200 -- SkwanSec5 w' z4 Z( o) d+ Z& z$ i/ S
00000400 -- Ds
' C" K* C1 I5 x# B T. Y 00010000 -- Memory, a1 m5 W# W1 f E+ K( c
00100000 -- PacketMem5 a2 T; t- K) e% H
00040000 -- Dbase1 Z5 N, K- O& x% c4 J1 e/ v3 }
00080000 -- Records3 ?& ^& ~+ ?# E6 }. N( Z$ G3 t. W
00200000 -- NbstatMem: {9 j6 k" I6 o' o+ ^9 E
2.清除 /Clear
8 l: r9 l1 U4 ]2 b- d: ?! v; i& _ 这个参数用来清除统计信息。
* |, a" S, m1 i9 V 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
1 O: l$ a$ {1 m# s4 Q% Z0 _* u. L |; ~/ Y/ q
( g7 Z# k, t! a, y; M& v9 b
- n6 A: S8 g, e5 p0 y |