本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
6 W- R7 @3 o0 K% G! X( g" Y 命令: /Info % n5 M2 V$ T+ ]
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。
3 q# c/ r4 U6 ~( E4 @ 用法:
/ l: A* o$ M: C% @ dnscmd ServerName /Info [Property]
3 S9 o0 v( P& H) o) [4 n. G' y9 p0 K 参数:7 y2 \. n2 M; U% L. ^5 A
ServerName ( r+ u* _( |6 Z$ B+ N3 e
服务器名称在上一篇中已经介绍过,此处省略。
9 [& Q8 |' x2 d [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。7 r: y% Y/ b0 f8 n2 Z: O
下面是该命令使用的一个比较完整的例子:
- p! ~0 N. d2 i- e 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:
% d2 l. p* |9 x9 ~, M1 _dnscmd 172.16.12.1 /info 只使用命令而不使用参数
- \, N1 b6 \4 D0 p0 B5 E输出的信息:, X' Q2 C* h6 @' a6 V& v. t, C
DNS Server 172.16.12.1 Information:
2 I6 `7 P6 ]* y, A9 v% w/ Z9 nC:\>dnscmd 172.16.12.1 /info
! a/ _6 ]$ t, `% B+ OQuery result: 查询结果* Q$ n( L$ L+ {$ O' k) X# |
Server info: 服务器信息* y" b' R; o6 e; x4 M
ptr = 00074718 端口# O! G6 R& M7 }. a, ~% U9 q
server name = myserver.microsoft.com 服务器名称
/ n/ j; W' n4 b) l1 h version = C2000005 版本
8 M9 b }/ M Z DS container = c DS“容器”+ k& s; u1 o$ V
Configuration: 配置信息 这些信息的含义请参考有关资料
( H: O! W( q& a( k# j4 q dwLogLevel = 00000000- S6 |5 r0 D) @+ a1 B4 r9 ?
dwDebugLevel = 00000000# c+ p: T \! X1 k
dwRpcProtocol = FFFFFFFF
5 s c4 a, C% z7 i% E' h. G dwNameCheckFlag = 00000002
- ^2 V3 r' V: i* W1 j cAddressAnswerLimit = 08 e" X) r+ ?1 R6 ]5 z% g
dwRecursionRetry = 3
) p: w& @+ L% v; c7 v dwRecursionTimeout = 15
& |# N/ P+ Y- n9 O* l; I2 m dwDsPollingInterval = 300
8 ~! b- N& H' g9 n6 J3 a/ I" \ Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料1 l! L1 q- z$ K, r
fBootMethod = 3
" T8 {! Q" {# w$ O( lfAdminConfigured = 1
- z: z. r3 X" N3 ?' ?7 ]fAllowUpdate = 1
+ l8 A& W2 w! W/ a! KfDsAvailable = 1 8 t. L0 p3 i" s$ t% C1 p" b2 _
fAutoReverseZones = 1 6 {! m( g$ T/ f' a
fAutoCacheUpdate = 0 1 I- Q8 k `' Y
fSlave = 0
7 i6 B3 v0 E: E Z% NfNoRecursion = 0
0 |) Q: m5 X- w$ S- q* S8 s' T' vfRoundRobin = 1
/ J! B: E/ v# m& a7 |* I zfLocalNetPriority = 1 $ b+ @. j3 f* V" L$ O& o4 _
fStrictFileParsing = 0
, ~$ F2 o# ]: G- P& ZfLooseWildcarding = 0 * {, T( ^9 i+ D' u5 v
fBindSecondaries = 1
9 M! ]7 C/ ~7 F* A* xfWriteAuthorityNs = 0
% A8 `, d5 w0 q# S$ U, MAging Configuration:
/ Q7 j( K( u7 ~4 j3 p* PScavengingInterval = 0
F/ L* C9 g9 c) S$ a' |DefaultAgingState = 0 0 i9 }, h9 o, B. H. H" M7 a
DefaultRefreshInterval = 168 0 t" S" d/ X8 c; I: C
DefaultNoRefreshInterval = 168 3 ` a; |3 n! U, F
ServerAddresses:
+ K- ]/ [" J* e9 t( D( Z w! ]0 s Addr Count = 1" K. O/ s! v2 p @' E' q8 T
Addr[0] => 172.16.12.1) K4 ]+ z. F' f) K9 }+ d1 v5 G+ P; S
ListenAddresses:
( o! `; A6 q$ Y7 J NULL IP Array.
% g" j# I/ B& l/ W' G- N6 y Forwarders:
. l4 I+ a q- M# R" n' _" b1 f Addr Count = 18 }2 `! |* ?5 Z7 m
Addr[0] => 172.16.4.3
; U2 G' ]+ ^ w: { forward timeout = 5
7 a% @( }# @( O slave = 04 q5 L$ B$ U! M/ ]) }. m% e
Command completed successfully.命令顺利执行完毕
4 D3 N: X, w$ g9 O 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。 / }! {) r) Z c m9 j& N, ~! D
命令:/Config
0 m( L" r: x3 H0 Q! G 如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。% k- H- X& H+ Z
# G/ v2 O" @) c; c 用法:
6 `, T" _& h# y# Q5 u9 r dnscmd ServerName /Config [ZoneName |..AllZones] Property Value" \+ y1 j; x2 l. p( |
参数# X( n. y; ^4 ]1 \" r
ServerName :服务器名称,意义同上
8 _& K) _$ g& Z4 u, U ZoneName:
" V4 A/ ]! I7 D3 F W9 F& w% q8 y3 \/ z 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
- c' M; c! f4 M2 l! l, u Property:
6 V' j* O+ z4 n3 f& x9 f/ H' m 这个参数是属性。这里所说的属性有: j- h3 T* d1 Y" V9 p
与服务器有关的属性:例如:" c6 a' |* C+ C
/EnableRegistryBoot: z0 g5 }/ r% S2 R \
/RpcProtocol
0 E; Y; p4 O5 {/LogLevel
, k) ?+ i$ _$ o1 h+ l3 a/EventlogLevel 等等 (限于篇幅未能全部列出), z+ u5 u! A" o% Q0 ~1 d
与Zone 有关的属性,例如: G$ e, e' g; Z2 j9 P; g- s5 B+ J
/SecureSecondaries
0 V( }6 F8 q9 K# x* O1 ` T& e8 i5 Y- a /AllowUpdate% s. M3 ~0 k" \9 q' m7 I1 g
/Aging
5 u: x) H$ {3 F, F) M* \" v8 x# { /RefreshInterval Value0 n+ k& r2 f; w+ \
/NoRefreshInterval Value
3 Z" R% d0 l2 b z) O; B' h 属性值:
/ S; O- P+ N1 P* A 属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
1 ~+ o! R, z* K从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。
! J3 X8 M3 M# s) z 命令: /Statistics' i/ A1 Q' w) k$ v2 m
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。: j) Y7 Q5 o" @% C0 |% D" O8 [
用法:
5 O) I+ W7 i+ E6 H/ H4 S' o dnscmd ServerName /Statistics [Filter|/Clear], \0 J x6 s, C8 v* Z6 L
参数:
+ o' w, w: w* _ServerName
6 T8 L% c1 N, n% g8 |$ H2 }; b服务器名称,含义同上。
5 M$ T$ w- \; k# l0 l% z: E可选参数介绍:
7 ?; Q& u( [/ E7 s共有两个参数,每次只能使用其中的一个。
+ W1 D' w$ z+ o 1.过滤(Filter)5 d3 M4 O% N# t1 |) L2 e
使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
; L) h1 i+ K& A5 l& n4 m' f& H9 Q6 r可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 7 O- ?) ] w! ~# |! Z
00000001 -- Time) N( t( N, H; B) Q- H! ?5 X4 R, k
00000002 -- Query
# _3 n' k1 }0 f$ E2 V 00000004 -- Query2
* P3 K- E: Q( y! \: e3 Z# z 00000008 -- Recurse
3 F6 f/ n! ?4 Z. @$ i 00000010 -- Master, C. u5 O, w; @# a$ l
00000020 -- Secondary
8 C6 q- b& p) {6 T' t. X 00000040 -- Wins
2 {* H( L6 }* |- e$ G2 H 00000100 -- Update
) r5 p# {! U7 `4 X2 E 00000200 -- SkwanSec
8 X' m4 }* c. P: y/ ? [ 00000400 -- Ds
! o5 g" P/ A4 t6 Z h+ n 00010000 -- Memory& W0 t6 j: X8 R& @
00100000 -- PacketMem& ?9 x. h8 k& m4 [# m
00040000 -- Dbase9 V& b2 A8 s$ \3 j- ~! Y; G% s
00080000 -- Records
" ?$ C3 W1 E v 00200000 -- NbstatMem
) V' F6 v' g0 b* u3 k# u 2.清除 /Clear
3 r# |% y! n+ _, {% x 这个参数用来清除统计信息。
p" W1 t4 `2 e# E 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。7 g7 _9 ^9 Z; ?2 U& E
# r) H1 `# K# T
/ Y" v$ X* B$ x: j( t- w
& x; D# l3 R0 A( q1 S6 { |