本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
0 D. O$ E. ]) S* p2 u0 ^$ A 命令: /Info - ~0 W" d6 U+ D7 I0 G5 Z
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
1 c1 F/ D4 m6 h* f# f' v+ @ 用法:
8 F# B, S0 e; h% O dnscmd ServerName /Info [Property]
0 Z2 b0 \3 E3 [ T 参数: E7 d# I ~' a* d5 s& n0 A
ServerName . v! W% B0 }; i. k2 q8 H
服务器名称在上一篇中已经介绍过,此处省略。 8 W6 j' D: E% a- I
[Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。
3 t: }# O0 a2 W 下面是该命令使用的一个比较完整的例子:
& b$ d$ q8 B7 o% t% T+ b 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:" Y8 P% E% @* o, _& m! H
dnscmd 172.16.12.1 /info 只使用命令而不使用参数
+ @- f# C- v: M: Z. L: i输出的信息:
3 L8 R$ C, |8 e7 p6 ~; f {" |5 uDNS Server 172.16.12.1 Information:
N, M: r* Q# x- [( Y2 y9 a) dC:\>dnscmd 172.16.12.1 /info& i" [4 U/ \; B6 i/ `# E
Query result: 查询结果3 E0 v7 m1 W7 D' C1 U
Server info: 服务器信息
# y7 f5 q3 g' r ptr = 00074718 端口/ ?7 D% W) m* l B0 p& a% |% I5 u
server name = myserver.microsoft.com 服务器名称: A. t' P% Q! N& T
version = C2000005 版本7 A" d: c. W. N3 R' C* G6 I* a4 T3 C
DS container = c DS“容器”
. P- |) _/ p# w5 m" o Configuration: 配置信息 这些信息的含义请参考有关资料# B& S" H0 W; s+ q! G3 N" ?, x
dwLogLevel = 00000000
1 @& a" C2 D8 _4 G$ o' Q1 l dwDebugLevel = 00000000
, T% j7 J& P- n$ a( |) S dwRpcProtocol = FFFFFFFF
" @1 t7 I3 j& \$ r& D) h& G: o dwNameCheckFlag = 000000026 T& z2 T5 S6 u0 E& q
cAddressAnswerLimit = 0
' Q7 Y5 m! f9 o! F dwRecursionRetry = 3" X7 @4 s" X/ p# U+ A1 {! O$ a5 J
dwRecursionTimeout = 15
; m" B( C; r4 K8 f# e I8 M dwDsPollingInterval = 3007 y) R9 H/ H- }, j2 n$ w* L; C9 D
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料3 S4 J' h9 E1 C. V8 o: {
fBootMethod = 3
1 R; X9 y, e# Q; c2 B# R' a3 G* SfAdminConfigured = 1 1 J5 j5 K2 q3 S+ ]8 M: ^, y2 {6 O9 {
fAllowUpdate = 1
9 B' D6 _: w# f" i+ f, d: S6 efDsAvailable = 1 2 t: E: w' B0 J: W) W4 b
fAutoReverseZones = 1
" G5 m/ D3 A8 Z% SfAutoCacheUpdate = 0 # g5 t6 D$ [( W1 S8 d) {8 {1 _' k
fSlave = 0
; h" E* {3 l- D- [0 a2 ^3 V( O' TfNoRecursion = 0 / ]( ~/ H+ s3 y7 u
fRoundRobin = 1
~% K/ |- c1 T& e% r2 YfLocalNetPriority = 1 ! p' m4 a8 S: D' t0 l5 u' ~" Y
fStrictFileParsing = 0
" d y6 {3 s" c! @' AfLooseWildcarding = 0
c4 H' E; X Y7 ]0 H5 k$ z5 ]fBindSecondaries = 1
$ e/ p6 Z! _# b! M! KfWriteAuthorityNs = 0 $ s U: a1 Y* {$ E
Aging Configuration:
% w x& A' D/ }% \ X# M3 f" y/ iScavengingInterval = 0 . p f* G7 s' T. O- J0 d+ F
DefaultAgingState = 0
% P Z4 y* V6 V' k* S5 R6 _DefaultRefreshInterval = 168
. _1 @ `( l! rDefaultNoRefreshInterval = 168
+ D; l) }2 w5 w S5 f ServerAddresses: 4 r k2 U6 B) k
Addr Count = 1
% b0 s' k: {, i/ i. I8 p Addr[0] => 172.16.12.1
4 T$ Q% P, }/ B* c( e ListenAddresses:
$ M p$ f, B( T0 Q8 a! d8 T$ F NULL IP Array.
3 ?6 o( h3 F; f9 l5 P) _% \ Forwarders:; o$ X7 _: i/ p
Addr Count = 1
: \8 s/ b, o$ E% v6 p3 x) J Addr[0] => 172.16.4.3, X* Y1 g9 N6 l6 g' h. G
forward timeout = 5
: I& D8 k( |* T8 b slave = 0
- Y8 L" J8 L3 g2 R0 V7 B; XCommand completed successfully.命令顺利执行完毕
4 B0 y }0 R* x. u3 b B' { 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
2 j9 q# j/ t7 d4 E; I" W5 l 命令:/Config0 V' z. u, v) s! L. f% H
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
; z# S0 B( h! c- u! v/ f% H, h9 M& ~! \7 g3 J. @! I- M
用法:/ R* V" s; S, {) p3 }* P
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value6 q* D5 Y9 U: u' r
参数5 n' {, T& H% q2 ]/ E$ | l/ y2 {! V, r
ServerName :服务器名称,意义同上
6 W) N4 z8 s( U( Z+ s- T ZoneName:" |; u q7 x! K2 O( i" B* M. y
这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。 ( |& N% [1 ^4 q$ L( C1 {3 X/ H! A
Property: & G W) H! S+ q
这个参数是属性。这里所说的属性有:
: L, X, C. r- v3 r: ^( r 与服务器有关的属性:例如:( o4 K/ J @/ [
/EnableRegistryBoot9 u. K7 \1 d7 ^8 V3 ^8 E" ]
/RpcProtocol
1 A1 R% q) D: V/ X9 S$ a8 P/LogLevel6 A3 B! c+ D/ K0 }6 |( E
/EventlogLevel 等等 (限于篇幅未能全部列出)$ Z5 M5 U* c# F
与Zone 有关的属性,例如:
9 I& z" o4 l! A4 | /SecureSecondaries
/ z$ \; \7 ^9 U; ?: p /AllowUpdate! o; [% r0 J: |; y7 U+ X6 G
/Aging
* t7 z Q: n- D1 H; o0 [ /RefreshInterval Value: v4 U% I4 J+ Z3 {
/NoRefreshInterval Value
. [5 Q3 ^9 {1 R' M: W- B5 D 属性值:
; H! |5 }- E, p 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。! k( j: }5 H' r. j/ u% U
从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。5 i" }! v" W1 t1 P2 K4 ]# W2 s0 w
命令: /Statistics. i" m* s- o, z
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。- a. p, Q$ K( q; Z+ S, q# }
用法:! B8 K% w1 a6 Q+ w. `% Y* L3 [$ W
dnscmd ServerName /Statistics [Filter|/Clear]: n$ V3 m6 S3 D: C
参数:' P* B* C* u4 T
ServerName " p. k( [' f8 G Q% B/ p6 }5 N
服务器名称,含义同上。0 |: D9 ~- G6 U' I4 Y0 p3 H: G
可选参数介绍:2 n, a! \4 U+ j7 s5 t8 |
共有两个参数,每次只能使用其中的一个。" P- G3 c1 w' l& s, e1 r G7 S
1.过滤(Filter)4 ~& d2 t# ?" S2 |8 l C: G0 P
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。# C" H3 z. s+ N- N q. M- p
可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
8 s2 i( D6 W) ]5 F! J 00000001 -- Time
( o- z* _1 Q; d! | 00000002 -- Query1 n v( X; {8 a7 m+ H d
00000004 -- Query2 s) G& I* e F1 r4 O7 r% d
00000008 -- Recurse+ C K$ |6 G+ Q8 S4 P* h- _! {
00000010 -- Master/ ~3 ?2 ~; T4 S. y% X6 a5 M
00000020 -- Secondary
7 f% N2 b6 s+ |, U 00000040 -- Wins
& g1 u( Y; V9 z. C: j 00000100 -- Update
, r: S; I# U% x& L$ ^" R! M 00000200 -- SkwanSec
5 x2 T/ W+ C* ]9 A, Z4 ~- | 00000400 -- Ds) a+ @' Q% W& q8 P: u$ k! m
00010000 -- Memory
! O; [9 G; R) t0 T 00100000 -- PacketMem0 I6 D; N4 S- ?( q3 }5 `% D" P9 z
00040000 -- Dbase
# {: B, z0 D3 b9 A. v O 00080000 -- Records
6 I3 O& M" T5 N! E, c4 B/ M 00200000 -- NbstatMem
8 ~: ^: B' D0 \ 2.清除 /Clear
7 v% p4 T2 c% L) p) m4 Z! d 这个参数用来清除统计信息。
+ j/ x& s/ x6 }' [: e# ^9 A 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
" x2 H9 }+ H. D( Z" p% P" `3 s! f5 {
' {: o" m( N1 l) j5 ? ! T: u% q. S9 a
4 W+ X% S1 g( Y! v2 j |