本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
( {# ?- n) o0 z9 p. y3 R 命令: /Info
, f* m l! y' P8 ]- E( ^ 用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。 T; u; H+ h6 m8 t" P) K& W g
用法:- |$ c; P) O2 a' s' Y7 K6 x9 t
dnscmd ServerName /Info [Property]
8 E: W) ^. q( n, U$ @" Z+ Z 参数:8 S5 B" j/ {4 p" z+ D: b8 T
ServerName : J) r% X; y; x8 Y
服务器名称在上一篇中已经介绍过,此处省略。
+ X: W# s. d3 J5 ^ [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。$ Z9 Z" q9 v @& F% j1 y' a
下面是该命令使用的一个比较完整的例子:& k, x; R# _6 E( ?3 x2 i( D6 o! v. c$ u
在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
0 Y! s# j2 H0 S1 \3 q5 Q7 t; \4 f6 Bdnscmd 172.16.12.1 /info 只使用命令而不使用参数6 ] P; p* f2 L* T+ j8 {4 v
输出的信息:
* [/ g9 k, V8 M! F; {- EDNS Server 172.16.12.1 Information:
8 @3 V% M$ Z* d7 I mC:\>dnscmd 172.16.12.1 /info
9 L1 }5 d6 V; a$ y' [Query result: 查询结果$ g' N6 U) t( V3 P& Y
Server info: 服务器信息
y( y/ B/ P! B0 ~7 w ptr = 00074718 端口
4 ^; u; b( a# c. C* I3 Y server name = myserver.microsoft.com 服务器名称9 g! T1 F' W" X! J& W1 ^& T
version = C2000005 版本) W$ e d6 Y8 M- p) x
DS container = c DS“容器”3 l$ A) F/ `( e
Configuration: 配置信息 这些信息的含义请参考有关资料
+ d( ^* ?; ]( _& A7 ?$ o) j dwLogLevel = 00000000
- I/ x$ [+ v9 v& r# P dwDebugLevel = 00000000
$ o+ N5 M) O9 s _6 [ dwRpcProtocol = FFFFFFFF
6 v+ k# A% A; [5 v; n6 B2 e9 _4 O& | dwNameCheckFlag = 00000002
( W$ h0 Q% t" J) y) {5 z& n$ q) h _6 n cAddressAnswerLimit = 0
/ Q/ B/ f; y- R: e dwRecursionRetry = 3+ \; W0 [- m8 p2 F) N4 E
dwRecursionTimeout = 15
! }( N, A# f. D dwDsPollingInterval = 3006 ^$ Q3 F/ T+ C" S
Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料6 n/ e: W8 y. U7 l* M4 _/ u( g
fBootMethod = 3 # p7 X$ d2 U3 V) q9 K* {# b
fAdminConfigured = 1
( R' {5 A6 ?' F, G+ LfAllowUpdate = 1 8 K T8 g$ v3 R4 G
fDsAvailable = 1 * T9 z4 ]# w4 R: z3 {+ n5 u
fAutoReverseZones = 1 % s5 ^6 N) n; j" n) j6 |9 E
fAutoCacheUpdate = 0 9 X1 \2 u1 M% U; n: Z
fSlave = 0
) h) J4 f& N9 Z- bfNoRecursion = 0 - O( @$ W3 C. t
fRoundRobin = 1
! p3 h% u6 x2 f7 \; R' ofLocalNetPriority = 1
: @$ z: y- f8 x) \8 k. CfStrictFileParsing = 0
. f) Q/ Q, ~) l" YfLooseWildcarding = 0 4 O' `; p$ x1 r i7 X* t" s* N
fBindSecondaries = 1 0 ]+ L. d3 ^9 A1 |# a9 x9 i6 ^
fWriteAuthorityNs = 0 0 Z t7 G/ F4 ~" U! N- T
Aging Configuration:
8 q9 Y% ]7 q" t i2 I; w( nScavengingInterval = 0 , K5 {# X* m C& @
DefaultAgingState = 0 ; I2 [+ \' p( |7 U0 Q( f( q- s% F
DefaultRefreshInterval = 168
& Q5 ~" T9 a# {7 o1 t2 o7 NDefaultNoRefreshInterval = 168
/ d& u, q: {' z' t% c b ServerAddresses:
% k+ C8 O' P) i" S! F( _+ e Addr Count = 1* d( n0 C/ T# X; d `
Addr[0] => 172.16.12.16 R/ r' [0 ^) u2 y) E1 W
ListenAddresses:
* G5 E1 [' v8 Q NULL IP Array.6 }2 ^; }) v/ l. Y1 I) j/ k4 F
Forwarders:8 S' a4 v+ U, S( c8 y
Addr Count = 1
y% z# w7 O! d9 m$ [4 a Addr[0] => 172.16.4.3
6 f& A; Q r, B; A. s forward timeout = 5
) q+ p1 A( F) u/ f6 H slave = 0
' @& D# r# X- a9 q# F: zCommand completed successfully.命令顺利执行完毕 : Z( |' ]& Z$ {( O
笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
6 I# H+ G/ n. X' m9 F' g* ^. i 命令:/Config% k; k2 h L4 l6 P. D
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。' g; {# N+ |8 D1 T
% O0 q8 O# ?% W- O* N* q1 e1 q8 O 用法:) U& i5 a2 z' x1 y& U
dnscmd ServerName /Config [ZoneName |..AllZones] Property Value
/ P' f$ X& W# { 参数
+ a H# o% _; h8 N ServerName :服务器名称,意义同上
2 _& I9 F0 E5 H$ Z# ? ZoneName:
9 a( |7 ^0 N: l: U T. t, B 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
" @9 e9 z& K0 v4 ]7 q$ o Property:
1 a4 s6 f I6 E9 H6 j) z, A 这个参数是属性。这里所说的属性有:8 U; M! ?, b9 `$ M
与服务器有关的属性:例如:
% ?- {( h" D) U @6 F6 K `. W/EnableRegistryBoot, `' I+ E# _! O, _5 a
/RpcProtocol+ Q9 o, ?) I& c5 g9 P9 k. h) g m6 D7 X
/LogLevel
+ p2 k- u7 C& _* y! g" H: j/EventlogLevel 等等 (限于篇幅未能全部列出)) `5 T5 U, [6 l' o3 ?) {4 R
与Zone 有关的属性,例如:
5 q. t7 {' Q+ H3 k /SecureSecondaries0 H+ T$ c0 t# r7 k+ F
/AllowUpdate
) _9 ~' \, U$ T# B3 t! { /Aging
6 n( @% k. n; c w /RefreshInterval Value" B3 z ~% E3 s$ {6 o. E% ?
/NoRefreshInterval Value% R, N$ z/ V& I/ ]. e
属性值:" q% f; y+ s. n/ q, ~
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
" z. |! j6 i6 {3 u& D- ~- I }从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。; ?9 y# @$ h( o2 k" f
命令: /Statistics9 S4 f& f( i" }6 R
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
! T) O! _* \/ h$ @% T1 I 用法: x* z* d% Q, Z& U$ c2 v7 w
dnscmd ServerName /Statistics [Filter|/Clear]
3 N% R; t; W4 A! h 参数:
& f4 C: n$ l+ r: ^9 J2 xServerName & T- w" t7 l% A! ~$ D& K! K
服务器名称,含义同上。
" \# M- G3 T2 z( o' } n可选参数介绍:- @9 F( w1 [( Y4 K }7 B V3 A
共有两个参数,每次只能使用其中的一个。
7 x+ C$ V; w3 B5 N' v* T5 X$ v 1.过滤(Filter)* w6 Q, n) v% u- G s$ W
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
$ }! Y* _& o1 m1 g9 s9 D可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰:
1 L2 ^$ J3 X0 T* |9 ` o 00000001 -- Time8 @& g& x7 d5 N. W4 Q$ }& m
00000002 -- Query
/ W, P |; k+ l- I 00000004 -- Query2( n4 O, O4 @" _, `1 F+ G
00000008 -- Recurse
+ O9 I7 v' j5 ^9 p( V 00000010 -- Master% I' N* m# D# c" k: L: ~
00000020 -- Secondary
$ M7 d' P+ s: [. d" t# y 00000040 -- Wins
" H. e, m% \8 o8 y/ E- F2 @3 e 00000100 -- Update, G. e9 s& d8 s1 l4 o' I
00000200 -- SkwanSec0 R% O/ H( s; D c/ |/ k+ t; z
00000400 -- Ds9 ?) G6 X7 n2 e& O' C, r% c
00010000 -- Memory" O' U/ ^9 R, ` t J0 G" h
00100000 -- PacketMem9 l5 B, a$ w6 L
00040000 -- Dbase
0 \, b s- ^- t, T! ]9 Q% I. a4 D 00080000 -- Records
( E+ Y! G% G8 x$ p4 ]- Z ^3 E* b" S 00200000 -- NbstatMem
- C5 m% C* i+ s: \, b 2.清除 /Clear 3 u J$ v3 k) c1 M3 j" L
这个参数用来清除统计信息。' r) k5 ]% k* c8 E* Z
本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。
. m# `- A2 E! ]$ i7 ~. X- @7 P0 o) [/ B6 k3 X
( e" \9 P6 k3 H
+ d# E) K" P- K: u |