本文开始介绍命令的使用方法: 前面在介绍命令格式的时候,已经指出:完整的命令格式是:先是Dnscmd,随后是服务器名称变量,然后才是命令和参数。这里为了节省篇幅,直接从命令开始分析。
; ~& A' i5 @. R" `2 j# P( d! R 命令: /Info # P* S2 c! T% u# l
用途:利用/Info 命令,可以列出指定的DNS服务器的指定属性。显然,这需要在命令参数中指定要显示的属性。如果不指定属性,执行这一命令后列出的将是所有的属性。5 P$ C# h+ a0 c8 s' i+ n8 ~, X
用法:! t% p: n1 d* i" S$ o
dnscmd ServerName /Info [Property]
, w& x3 B$ P, z( G$ h. S* K 参数:
+ I/ s* k) a& U0 x9 C8 q' [ ServerName
1 }0 w; Q! l- h. y. |$ ? 服务器名称在上一篇中已经介绍过,此处省略。
7 l) m( V/ G K0 Q: Y& F' a/ Y [Property] 方括号中参数是可选的,这里是指定的、需要显示的属性。如果不指定属性,则命令执行之后将显示全部属性。9 a; v# ^3 X* H, [
下面是该命令使用的一个比较完整的例子:
2 Q. y! S! N4 i' _5 x0 Z+ E9 d 在执行相应的命令后,系统会输出英文的显示信息。在下面输出的文本中的中文是由本人加入的解释,并不是原输出所带。DNS服务器的IP地址假设为172.16.12.1:) K% B) W; ~) F6 z2 n, j
dnscmd 172.16.12.1 /info 只使用命令而不使用参数* _3 K0 G' M! \4 a) T3 g1 n
输出的信息:
6 U$ f' x- i; _% @DNS Server 172.16.12.1 Information:3 @2 ]' \ V/ R$ K
C:\>dnscmd 172.16.12.1 /info# G& s& Q* i9 v+ H" o: X2 K# F; ]
Query result: 查询结果/ u4 T& }0 |9 N8 v& B; N: Q; O$ W
Server info: 服务器信息
9 `- Y: y9 }' o: F0 M5 w8 C& ? ptr = 00074718 端口
* Z+ v, e" t8 \( R+ Z: C% Y server name = myserver.microsoft.com 服务器名称) x; ^ H! R% e0 B1 y
version = C2000005 版本5 L: b! J' A: S$ c# s$ M" U3 s
DS container = c DS“容器”
% U/ ^4 s6 g( u( Z Configuration: 配置信息 这些信息的含义请参考有关资料) {. k9 S" `% G1 L
dwLogLevel = 00000000
) R# [8 q! P3 f, z dwDebugLevel = 00000000
* ~$ R0 a( n' F. ~: Q3 a dwRpcProtocol = FFFFFFFF! s& v/ A( V& T1 H
dwNameCheckFlag = 00000002
1 d" a8 [9 o4 f- _9 u. L& c& D cAddressAnswerLimit = 0
' d8 s$ L: D' i8 X' W dwRecursionRetry = 3
* o, q* X6 p8 t) e4 q$ g) c dwRecursionTimeout = 15& b- g6 f0 [5 x2 W, g7 Z
dwDsPollingInterval = 300
, n( x1 A# l7 R2 e4 B Configuration Flags: 配置标志 这些标志值就是目前该标志所处的状态。其含义请参考有关资料2 p7 {( Q! v$ `$ {) r- p
fBootMethod = 3
3 l: N c% X2 f7 ?5 WfAdminConfigured = 1
4 j) Z7 h& A1 F1 C) vfAllowUpdate = 1 & u, f" T* ?9 V O& s( d2 ^
fDsAvailable = 1 Q q2 E( Y, M( W# V
fAutoReverseZones = 1 6 @. ~& S! O# v _7 s
fAutoCacheUpdate = 0
2 T' Z/ _2 f+ H0 \* b2 cfSlave = 0 7 o8 f4 B5 A/ B1 i& I7 G2 t" V f
fNoRecursion = 0
/ y: F% _4 x1 f& P' }fRoundRobin = 1 3 ^/ K$ D) w6 _) e2 X8 E: {
fLocalNetPriority = 1
7 }$ g& j" N: vfStrictFileParsing = 0
]2 e- G4 T9 J( D0 J1 jfLooseWildcarding = 0 @2 G: W' U- R# Q; P9 M5 N* u. p
fBindSecondaries = 1 % M4 }6 E, i [
fWriteAuthorityNs = 0
7 K7 O; ~9 b3 y# Q2 v4 I KAging Configuration:
1 O x/ p4 \" M" wScavengingInterval = 0
; I% a$ |; a4 U0 VDefaultAgingState = 0 % n* |0 }0 _. E: ^" w
DefaultRefreshInterval = 168
' G: I t/ R5 m9 R |$ q/ c6 SDefaultNoRefreshInterval = 168
7 U: ]5 F r$ S: X) |7 { z7 T ServerAddresses:
9 I: U- w. s( M* x! Z# c% L% u1 w Addr Count = 18 k$ _+ \0 y& Y$ L, p
Addr[0] => 172.16.12.1
# z4 y7 ~/ `/ X3 l4 ~4 I ListenAddresses:
4 g4 j1 C9 [. h9 D; B NULL IP Array.& C9 H* u4 o* _% I5 M. H6 l6 z1 H
Forwarders:! Q h( h- T4 N r# L0 ^
Addr Count = 1( P! e1 ^3 V0 W" X8 B
Addr[0] => 172.16.4.34 }2 j3 }+ n, {2 ?: } S
forward timeout = 5$ V' _ y0 E" |( _1 d
slave = 0
9 \7 t3 L; r- ?8 HCommand completed successfully.命令顺利执行完毕
9 A3 e q. y# y4 U 笔者所以将此例子完整地放置在本文中,并不为完整地解释每条输出信息的含义,而是为朋友们提供一个观察该命令输出的范本,借以获得感性认识。若你已经对上述例子有了印象,待到自己执行这个命令获得输出信息之后,肯定有“这个我曾经见过”的感觉。因为,在排除故障的过程中,哪怕仅有间接的经验,也比完全陌生强很多。
' S- @+ f( F: u, {; @, \ 命令:/Config1 l$ W1 f2 a7 w- c1 i
如果服务器的zone没有指定,使用命令 /Config 可以重置DNS服务器的属性。如果已经指定了zone的名称,则该命令只重置zone的属性。zone的含义是区域或范围的意思。
* E! b4 e! k0 f0 \* d/ B0 v
% E0 e" K5 m$ @5 H+ O1 f 用法:
! y+ b9 }* [7 x' }! i. Q dnscmd ServerName /Config [ZoneName |..AllZones] Property Value4 _, a9 H* r% [6 u
参数
' J/ l$ h" N/ A9 G ServerName :服务器名称,意义同上 # a5 j# a3 e% k: }' X0 O3 p2 E9 S0 o
ZoneName:
& b' u/ u1 [1 Q, L. e 这个参数指定所配置的区域zone的名字,如果使用..AllZones ,则重置所有zone的属性。如果不指定zone名字,只能重置服务器属性。
0 x Z" y; Z/ X' V. c" k Property:
( a0 W" C. K- M2 o2 D( A 这个参数是属性。这里所说的属性有:
# M' w' z) v9 p5 v8 Z 与服务器有关的属性:例如:. A% I! O3 ?( T F1 `* V- W, O }" W
/EnableRegistryBoot
/ u# D4 T% e1 S ^2 K J/RpcProtocol* j! c7 v" b1 r: w
/LogLevel
% `1 ?& J8 K& X" I/EventlogLevel 等等 (限于篇幅未能全部列出)' P: {1 u8 g1 z4 t) v- u
与Zone 有关的属性,例如:) H; f( z* M3 Z8 r7 _5 N9 y
/SecureSecondaries
W& b0 d" Q' q% \. l( ^3 }! ~ /AllowUpdate5 d# v; Q9 s1 z3 Y# E" ^+ N, {/ F6 T
/Aging
. e% P( p& X. Q- n /RefreshInterval Value* Q& m/ Q6 b2 ~# A
/NoRefreshInterval Value' S6 ^7 p, B) S6 A8 n+ l0 o# `
属性值:9 |! _2 O r* B. H- b2 q( ?6 {3 }
属性值都是一个双字长的值,即类型为 DWORD ;以0x 打头的十六进制形式 。
8 p9 n8 U5 u9 m! }" V* b3 N从命令的参数结构来看,这个命令的用途是重置、实际上也可以理解为修改服务器的zone,因为命令语句的最后可以指定要重置的属性值。指定的值不同,重置的结果也就不同。; S! W1 l' w1 `: ], [& w+ Z, E( A
命令: /Statistics& D5 i7 ], Q. V1 M- A' E0 z
作用:利用这个命令可以显示或删除服务器的统计数据或信息。在命令的可选择项目中,有两个每次仅能采用其一的参数,或显示或删除由你自己确定。
: B* j5 j' x: e) K0 { 用法:
( N% s+ ]; i& f- }4 L7 G dnscmd ServerName /Statistics [Filter|/Clear]( s& J9 y0 X9 R: ^% f7 K
参数:
& {) K0 k+ V& Y; J, EServerName 0 r5 I9 ^, W+ w- ]7 I
服务器名称,含义同上。
; y# c* t7 i( }1 X可选参数介绍:
. i: [) f3 W: n5 E6 u0 F共有两个参数,每次只能使用其中的一个。8 u1 i) A( V3 g2 \" J6 f& f, t
1.过滤(Filter)
I- Q% ~2 {3 J8 N2 e- { 使用该参数,可关联或过滤渴望得到的统计信息,如果不使用果料指定,则默认显示所有的统计信息。
- a, _: F5 L, A- e& `可以使用以下的数据来指定过滤的信息,由于大部分的含义都比较容易懂,故此处不再加中文注释。不过应当注意:指定的过滤参数只能是下列之一,不可自己杜撰: 2 G5 M! A( _% U) E
00000001 -- Time( [* t0 s( p* F7 f
00000002 -- Query) t% r5 O! h) H( y6 e
00000004 -- Query2
8 r/ ^% @6 U$ f' v, o4 Z: p 00000008 -- Recurse
1 ~2 }4 D) Q% v' Y7 o# V. o' d! x5 { 00000010 -- Master
, x7 \) Z o$ \- F! s 00000020 -- Secondary' N% p& y* ]$ u, K* J
00000040 -- Wins
6 S1 ]1 Q9 A7 g# c 00000100 -- Update8 l4 N" y, Q; n. }' }$ O3 {
00000200 -- SkwanSec
6 O) U2 }! L `$ U" h7 d 00000400 -- Ds2 Q8 u1 {* z2 n0 u, {
00010000 -- Memory# O" p; {8 G5 ?& Q1 h
00100000 -- PacketMem5 G2 R# X' k v/ G' `4 t: a
00040000 -- Dbase* b8 \( P! O i5 @
00080000 -- Records! t& b1 P+ `" A, l
00200000 -- NbstatMem7 t/ { Q, G5 y
2.清除 /Clear
; C: a$ C3 v! ~$ [ 这个参数用来清除统计信息。
1 f6 t7 V2 L4 w; S0 u 本来,这个命令有一个非常详细的例子,其间有各种统计信息的显示情况和格式。由于篇幅太大,无法附加在本文中。如果你有兴趣研究,请参看支持工具的帮助文档(不是windows2000的帮助文档)。3 y% ?3 t% w. c: a8 O9 m
/ l0 H& G6 Q0 g! ]* p
; C% j2 |3 X0 h; T3 H6 e- c
* @9 L4 y3 n/ T7 ]1 {
|