Dnscmd
用於管理 DNS 伺服器的命令列介面。 此公用程式在指令碼批次檔中很有用,可協助將例行的 DNS 管理工作自動化,或在您的網路上執行新 DNS 伺服器的簡單自動安裝及設定。
語法
dnscmd <servername> <command> [<command parameters>]
參數
參數 | 描述 |
---|---|
<servername> |
遠端或本機 DNS 伺服器的 IP 位址或主機名稱。 |
dnscmd /ageallrecords 命令
在 DNS 伺服器的指定區域或節點上,設定資源記錄中時間戳記的目前時間。
語法
dnscmd [<servername>] /ageallrecords <zonename>[<nodename>] | [/tree]|[/f]
參數
參數 | 描述 |
---|---|
<servername> |
指定系統管理員計畫管理的 DNS 伺服器,以 IP 位址、完整網域名稱 (FQDN) 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定區域的 FQDN。 |
<nodename> |
使用以下內容,指定區域中的特定節點或樹狀子目錄:
|
/tree | 指定所有子節點也都會收到時間戳記。 |
/f | 執行命令而不要求確認。 |
備註
ageallrecords 命令是為了在目前版本的 DNS 與舊版 DNS 之間回溯相容性 (不支援過時和清除)。 它會為沒有時間戳記的資源記錄加入含有目前時間的時間戳記,並在具有時間戳記的資源記錄上設定目前時間。
除非記錄有時間戳記,否則不會發生記錄清除。 名稱伺服器 (NS) 資源記錄、啟動授權 (SOA) 資源記錄和 Windows 網際網路名稱服務 (WINS) 資源記錄不會包含在清除程序中,而且即使 ageallrecords 命令執行時,也不會加上時間戳記。
除非為 DNS 伺服器和區域啟用清除,否則此命令會失效。 如需如何啟用區域清除的詳細資訊,請參閱本文章
dnscmd /config
命令語法中的 aging 參數。在 DNS 資源記錄中新增時間戳,使它們與在 Windows Server 以外的作業系統中執行的 DNS 伺服器不相容。 使用 ageallrecords 命令新增的時間戳記無法反轉。
如果未指定任何選擇性參數,則命令會傳回指定節點的所有資源記錄。 如果至少為其中一個選擇性參數指定值,則 dnscmd 只會列舉與選擇性參數中指定的一個或多個值相對應之資源記錄。
範例
dnscmd /clearcache 命令
清除指定 DNS 伺服器中資源記錄的 DNS 快取記憶體。
語法
dnscmd [<servername>] /clearcache
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
範例
dnscmd dnssvr1.contoso.com /clearcache
dnscmd /config 命令
變更 DNS 伺服器和個別區域的登錄值。 此命令也會修改指定伺服器的組態。 接受伺服器層級和區域層級設定。
警告
除非沒有其他替代方案,否則請勿直接編輯登錄。 登錄編輯程式會略過標準防護措施,允許可能會降低效能、損害系統的設定,甚至要求您重新安裝 Windows。 您可以使用控制台或 Microsoft Management Console (mmc) 中的程式,安全地改變大部分的登錄設定。 如果必須直接編輯登錄,請先備份。 如需詳細資訊,請參閱登錄編輯程式說明。
伺服器層級語法
dnscmd [<servername>] /config <parameter>
參數
注意
本文包含「從屬」一詞的參考,Microsoft 已不再使用該字詞。 從軟體中移除該字詞時,我們也會將其從本文中移除。
參數 | 描述 |
---|---|
<servername> |
指定預計要管理的 DNS 伺服器,以本機電腦語法、IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<parameter> |
指定設定,並指定值 (選擇性)。 參數值會使用此語法:parameter [value]。 |
/addressanswerlimit[0|5-28] |
指定 DNS 伺服器可以傳送以回應查詢的主機記錄上限。 值可以是零 (0),也可以介於 5 到 28 筆記錄的範圍內。 預設值為零 (0)。 |
/bindsecondaries[0|1] |
變更區域傳輸的格式,使其可以達到最大壓縮和效率。 接受以下值:
|
/bootmethod[0|1|2|3] |
決定 DNS 伺服器取得其組態資訊的來源。 接受以下值:
|
/defaultagingstate[0|1] |
判斷是否在新建立的區域上預設啟用 DNS 清除功能。 接受以下值:
|
/defaultnorefreshinterval[0x1-0xFFFFFFFF|0xA8] |
設定動態更新記錄不會接受重新整理的時間段。 伺服器上的區域會自動繼承此值。 若要變更預設值,請輸入 0x1-0xFFFFFFFF 範圍內的值。 來自伺服器的預設值為 0xA8。 |
/defaultrefreshinterval [0x1-0xFFFFFFFF|0xA8] |
設定允許動態更新 DNS 記錄的時間段。 伺服器上的區域會自動繼承此值。 若要變更預設值,請輸入 0x1-0xFFFFFFFF 範圍內的值。 來自伺服器的預設值為 0xA8。 |
/disableautoreversezones [0|1] |
啟用或停用自動建立反向對應區域。 反向對應區域提供網際網路通訊協定 (IP) 位址到 DNS 網域名稱的解析。 接受以下值:
|
/disablensrecordsautocreation [0|1] |
指定 DNS 伺服器是否會自動為其裝載的區域建立名稱伺服器 (NS) 資源記錄。 接受以下值:
|
/dspollinginterval <seconds> |
指定 DNS 伺服器輪詢 AD DS 以取得 AD 整合式區域變更的頻率 (以秒為單位)。 最小接受值為 30 秒。 如果在此參數之後未指定值,則預設值會設定為 0xB4 (3 分鐘或 180 秒)。 |
/dstombstoneinterval <seconds> |
在 AD DS 中保留已刪除記錄的時間 (以秒為單位)。 該值應限制在 0x3F480 (3 天或 259,200 秒) 到 0x49D400 (8 週或 4,147,200 秒) 這個範圍內。 如果沒有為目錄服務物件的 tombstoneLifetime 屬性指定值,則預設值應為 0x127500 (14 天或 1,209,600 秒)。 |
/ednscachetimeout [3600-15724800] |
指定快取擴充 DNS (EDNS) 資訊的秒數。 最小值是 3600,而最大值是 15,724,800。 預設值為 604,800 秒 (一週)。 |
/enableednsprobes [0|1] |
啟用或停用伺服器來探查其他伺服器,以判斷它們是否支援 EDNS。 接受以下值:
|
/enablednssec [0|1] |
啟用或停用 DNS 安全性延伸模組 (DNSSEC) 的支援。 接受以下值:
|
/enableglobalnamessupport [0|1] |
啟用或停用對 GlobalNames 區域的支援。 GlobalNames 區域支援跨樹系解析單一標籤 DNS 名稱。 接受以下值:
|
/enableglobalqueryblocklist [0|1] |
啟用或停用對全域查詢封鎖清單的支援,以封鎖清單中名稱的名稱解析。 DNS 伺服器服務首次啟動時,預設建立並啟用全域查詢封鎖清單。 若要檢視目前的全域查詢封鎖清單,請使用 dnscmd /info /globalqueryblocklist 命令。 接受以下值:
|
/eventloglevel [0|1|2|4] |
判斷哪些事件會記錄在事件檢視器的 DNS 伺服器記錄檔中。 接受以下值:
|
/forwarddelegations [0|1] |
決定 DNS 伺服器如何處理委派子區域的查詢。 這些查詢可以傳送至查詢中所參考的子區域,也可以傳送到為 DNS 伺服器命名的轉寄站清單。 只有在啟用轉送時,才會使用設定中的項目。 接受以下值:
|
/forwardingtimeout [<seconds>] |
判斷 DNS 伺服器在嘗試另一個轉寄站之前等待轉寄站回應的秒數 (0x1-0xFFFFFFFF)。 預設值為 0x5,即 5 秒。 |
/globalneamesqueryorder [0|1] |
指定 DNS 伺服器服務在解析名稱時,會先在 GlobalNames 區域或本機區域中尋找。 接受以下值:
|
/globalqueryblocklist[[<name> [<name>]...] |
將目前的全域查詢封鎖清單替換為您指定的名稱清單。 如果不指定任何名稱,此命令將清除封鎖清單。 根據預設,全域查詢封鎖清單包含下列項目:
|
/isslave [0|1] |
決定 DNS 伺服器在轉送的查詢未收到回應時如何回應。 接受以下值:
|
/localnetpriority [0|1] |
決定 DNS 伺服器具有相同名稱的多個主機記錄時,傳回主機記錄的順序。 接受以下值:
|
/logfilemaxsize [<size>] |
指定 Dns.log 檔案的大小上限 (以位元組為單位) (0x10000-0xFFFFFFFF)。 當檔案達到其大小上限時,DNS 會覆寫最舊的事件。 預設大小為 0x400000,也就是 4 MB。 |
/logfilepath [<path+logfilename>] |
指定 Dns.log 的路徑。 預設的路徑為 %systemroot%\System32\Dns\Dns.log 。 您可以使用格式 path+logfilename 來指定不同的路徑。 |
/logipfilterlist <IPaddress> [,<IPaddress>...] |
指定偵錯記錄檔中記錄的封包。 這些項目是 IP 位址的清單。 只會記錄清單中 IP 位址傳入和傳出的封包。 |
/loglevel [<eventtype>] |
決定 Dns.log 檔案中記錄的事件類型。 每個事件類型都會以十六進位數表示。 如果您想要記錄中的多個事件,請使用十六進位加法將數值相加,然後輸入總和。 接受以下值:
|
/maxcachesize | 指定 DNS 伺服器記憶體快取的大小上限 (以 KB 為單位)。 |
/maxcachettl [<seconds>] |
決定記錄儲存在快取中的秒數 (0x0-0xFFFFFFFF)。 如果使用 0x0 設定,DNS 伺服器就不會快取記錄。 預設設定為 0x15180 (86,400 秒或 1 天)。 |
/maxnegativecachettl [<seconds>] |
指定記錄查詢負回應的項目在 DNS 快取中的保留秒數 (0x1-0xFFFFFFFF)。 預設設定為 0x384 (900 秒)。 |
/namecheckflag [0|1|2|3] |
指定檢查 DNS 名稱時所使用的字元標準。 接受以下值:
|
/norecursion [0|1] |
判斷 DNS 伺服器是否執行遞迴名稱解析。 接受以下值:
|
/notcp | 此參數已過時,而且在目前版本的 Windows Server 中沒有任何作用。 |
/recursionretry [<seconds>] |
判斷 DNS 伺服器再次嘗試連絡遠端伺服器之前等待的秒數(0x1-0xFFFFFFFF)。 預設設定為 0x3 (三秒)。 當在緩慢的廣域網路 (WAN) 連結上發生遞迴時,應增加此值。 |
/recursiontimeout [<seconds>] |
判斷 DNS 伺服器在停止嘗試連絡遠端伺服器之前等待的秒數(0x1-0xFFFFFFFF)。 設定範圍從 0x1 到 0xFFFFFFFF。 預設設定為 0xF (15 秒)。 當在緩慢的 WAN 連結上發生遞迴時,應該增加此值。 |
/roundrobin [0|1] |
決定伺服器具有相同名稱的多個主機記錄時,傳回主機記錄的順序。 接受以下值:
|
/rpcprotocol [0x0|0x1|0x2|0x4|0xFFFFFFFF] |
指定遠端程序呼叫 (RPC) 在與 DNS 伺服器建立連線時使用的通訊協定。 接受以下值:
|
/scavenginginterval [<hours>] |
判斷是否啟用 DNS 伺服器的清除功能,並設定清除週期之間的小時數 (0x0-0xFFFFFFFF)。 預設設定為 0x0,這會停用 DNS 伺服器的清除。 大於 0x0 的設定可清除伺服器,並設定清除週期之間的小時數。 |
/secureresponses [0|1] |
判斷 DNS 是否會篩選儲存在快取中的記錄。 接受以下值:
|
/sendport [<port>] |
指定 DNS 用於向其他 DNS 伺服器傳送遞迴查詢的連接埠號碼 (0x0-0xFFFFFFFF)。 預設設定為 0x0,這表示會隨機選取連接埠號碼。 |
/serverlevelplugindll[<dllpath>] |
指定自訂外掛程式的路徑。 當 Dllpath 指定有效 DNS 伺服器外掛程式的完整路徑名稱時,DNS 伺服器會呼叫外掛程式中的函式來解析所有本機裝載區域範圍以外的名稱查詢。 如果查詢的名稱超過外掛程式的範圍,DNS 伺服器會根據設定使用轉送或遞迴來執行名稱解析。 如果未指定 Dllpath,且先前已設定自訂外掛程式,則 DNS 伺服器會停止使用自訂外掛程式。 |
/strictfileparsing [0|1] |
判斷 DNS 伺服器在裝載區域時遇到錯誤記錄的行為。 接受以下值:
|
/updateoptions <RecordValue> |
禁止指定記錄類型的動態更新。 如果想要在記錄檔中禁止多個記錄類型,請使用十六進位加法將數值相加,然後輸入總和。 接受以下值:
|
/writeauthorityns [0|1] |
判斷 DNS 伺服器何時將名稱伺服器 (NS) 資源記錄寫入回應的授權區段。 接受以下值:
|
/xfrconnecttimeout [<seconds>] |
決定主要 DNS 伺服器等待輔助伺服器傳送回應的秒數 (0x0-0xFFFFFFFF)。 預設值為 0x1E (30 秒)。 逾時值到期之後,連接就會終止。 |
區域層級語法
修改指定區域的設定。 必須只為區域層級參數指定區域名稱。
dnscmd /config <parameters>
參數
參數 | 描述 |
---|---|
<parameter> |
指定設定、區域名稱,並指定值 (選擇性)。 參數值會使用此語法:zonename parameter [value] 。 |
/aging <zonename> |
啟用或停用特定區域中的清除。 |
/allownsrecordsautocreation <zonename> [value] |
覆寫 DNS 伺服器的名稱伺服器 (NS) 資源記錄自動建立設定。 先前為此區域註冊的名稱伺服器 (NS) 資源記錄不會受到影響。 因此,如果您不想要,則必須手動移除它們。 |
/allowupdate <zonename> |
判斷指定的區域是否接受動態更新。 |
/forwarderslave <zonename> |
覆寫 DNS 伺服器 /isslave 設定。 |
/forwardertimeout <zonename> |
決定 DNS 區域在嘗試另一個轉寄站之前等候轉寄站回應的秒數。 此值會覆寫在伺服器層級設定的值。 |
/norefreshinterval <zonename> |
設定區域時間間隔,在此期間沒有任何重新整理可以動態更新指定區域中的 DNS 記錄。 |
/refreshinterval <zonename> |
設定區域時間間隔,在此期間內重新整理可以動態更新指定區域中的 DNS 記錄。 |
/securesecondaries <zonename> |
判斷哪些輔助伺服器可以從此區域的主伺服器接收區域更新。 |
dnscmd /createbuiltindirectorypartitions 命令
建立 DNS 應用程式目錄分割區。 安裝 DNS 時,會在樹系和網域層級建立服務的應用程式目錄分割區。 使用此命令來建立已刪除或從未建立的 DNS 應用程式目錄分割區。 在沒有參數的情況下,此命令會為網域建立內建的 DNS 目錄分割區。
語法
dnscmd [<servername>] /createbuiltindirectorypartitions [/forest] [/alldomains]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
/forest | 建立樹系的 DNS 目錄分割區。 |
/alldomains | 為樹系中的所有網域建立 DNS 分割區。 |
dnscmd /createdirectorypartition 命令
建立 DNS 應用程式目錄分割區。 安裝 DNS 時,會在樹系和網域層級建立服務的應用程式目錄分割區。 此作業會建立額外的 DNS 應用程式目錄分割區。
語法
dnscmd [<servername>] /createdirectorypartition <partitionFQDN>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<partitionFQDN> |
將要建立之 DNS 應用程式目錄分割區的 FQDN。 |
dnscmd /deletedirectorypartition 命令
移除現有的 DNS 應用程式目錄分割區。
語法
dnscmd [<servername>] /deletedirectorypartition <partitionFQDN>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<partitionFQDN> |
將要移除之 DNS 應用程式目錄分割區的 FQDN。 |
dnscmd /directorypartitioninfo 命令
列出指定 DNS 應用程式目錄分割區的相關資訊。
語法
dnscmd [<servername>] /directorypartitioninfo <partitionFQDN> [/detail]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<partitionFQDN> |
DNS 應用程式目錄分割區的 FQDN。 |
/detail | 列出應用程式目錄分割區的所有資訊。 |
dnscmd /enlistdirectorypartition 命令
將 DNS 伺服器新增至指定的目錄分割區複本集。
語法
dnscmd [<servername>] /enlistdirectorypartition <partitionFQDN>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<partitionFQDN> |
DNS 應用程式目錄分割區的 FQDN。 |
dnscmd /enumdirectorypartitions 命令
列出指定伺服器的 DNS 應用程式目錄分割區。
語法
dnscmd [<servername>] /enumdirectorypartitions [/custom]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
/custom | 僅列出使用者建立的目錄分割區。 |
dnscmd /enumrecords 命令
列出 DNS 區域中指定節點的資源記錄。
語法
dnscmd [<servername>] /enumrecords <zonename> <nodename> [/type <rrtype> <rrdata>] [/authority] [/glue] [/additional] [/node | /child | /startchild<childname>] [/continue | /detail]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
/enumrecords | 列出指定區域中的資源記錄。 |
<zonename> |
指定資源記錄所屬區域的名稱。 |
<nodename> |
指定資源記錄的節點名稱。 |
[/type <rrtype> <rrdata>] |
指定要列出的資源記錄類型,以及預期的資料類型。 接受以下值:
|
/authority | 包含權威資料。 |
/glue | 包含黏附資料。 |
/additional | 包含列出之資源記錄的所有其他資訊。 |
每節點 | 只列出指定節點的資源記錄。 |
/child | 只列出指定子域的資源記錄。 |
/startchild<childname> |
從指定的子網域開始清單。 |
/continue | 僅列出具有其類型和資料的資源記錄。 |
/detail | 列出資源記錄的所有資訊。 |
範例
dnscmd /enumrecords test.contoso.com test /additional
dnscmd /enumzones 命令
列出指定 DNS 伺服器上存在的區域。 enumzones 參數會做為區域清單上的篩選。 如果未指定任何篩選,則會傳回區域的完整清單。 指定篩選時,只有符合該篩選的區域才會包含在傳回的區域清單中。
語法
dnscmd [<servername>] /enumzones [/primary | /secondary | /forwarder | /stub | /cache | /auto-created] [/forward | /reverse | /ds | /file] [/domaindirectorypartition | /forestdirectorypartition | /customdirectorypartition | /legacydirectorypartition | /directorypartition <partitionFQDN>]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
/primary | 列出標準主要區域或 Active Directory 整合式區域的所有區域。 |
/secondary | 列出所有標準次要區域。 |
/forwarder | 列出將未解析的查詢轉送至另一部 DNS 伺服器的區域。 |
/stub | 列出所有虛設常式區域。 |
/cache | 僅列出載入快取的區域。 |
/auto-created] | 列出 DNS 伺服器安裝期間自動建立的區域。 |
/forward | 列出正向對應區域。 |
/reverse | 列出反向對應區域。 |
/ds | 列出 Active Directory 整合式區域。 |
/file | 列出由檔案支援的區域。 |
/domaindirectorypartition | 列出儲存在網域目錄分割區中的區域。 |
/forestdirectorypartition | 列出儲存在樹系 DNS 應用程式目錄分割區中的區域。 |
/customdirectorypartition | 列出儲存在使用者定義應用程式目錄分割區中的所有區域。 |
/legacydirectorypartition | 列出儲存在網域目錄分割區中的所有區域。 |
/directorypartition <partitionFQDN> |
列出儲存在指定目錄分割區中的所有區域。 |
範例
dnscmd /exportsettings 命令
建立文字檔,其中列出 DNS 伺服器的設定詳細資料。 文字檔名稱為 DnsSettings.txt。 它位於伺服器的 %systemroot%\system32\dns
目錄中。 您可以使用 dnscmd /exportsettings 所建立檔案中的資訊,來進行組態問題的疑難排解,或確保您已對多個伺服器進行相同的設定。
語法
dnscmd [<servername>] /exportsettings
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
dnscmd /info 命令
顯示指定伺服器 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
登錄的 DNS 區段設定。 若要顯示區域層級登錄設定,請使用 dnscmd zoneinfo
命令。
語法
dnscmd [<servername>] /info [<settings>]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<settings> |
可以個別指定 info 命令傳回的任何設定。 如果未指定設定,則會傳回常見設定的報告。 |
範例
dnscmd /ipvalidate 命令
測試 IP 位址是否識別正常運作的 DNS 伺服器,或 DNS 伺服器是否可以做為轉寄站、根目錄提示伺服器或特定區域的主伺服器。
語法
dnscmd [<servername>] /ipvalidate <context> [<zonename>] [[<IPaddress>]]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<context> |
指定要執行的測試類型。 您可以指定下列任何測試:
|
<zonename> |
識別區域。 搭配 /zonemasters 參數使用此參數。 |
<IPaddress> |
指定命令測試的 IP 位址。 |
範例
nscmd dnssvr1.contoso.com /ipvalidate /dnsservers 10.0.0.1 10.0.0.2
dnscmd dnssvr1.contoso.com /ipvalidate /zonemasters corp.contoso.com 10.0.0.2
dnscmd /nodedelete 命令
刪除指定主機的所有記錄。
語法
dnscmd [<servername>] /nodedelete <zonename> <nodename> [/tree] [/f]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定區域的名稱 |
<nodename> |
指定要刪除之節點的主機名稱。 |
/tree | 刪除所有子記錄。 |
/f | 執行命令而不要求確認。 |
範例
dnscmd /recordadd 命令
將記錄新增至 DNS 伺服器中的指定區域。
語法
dnscmd [<servername>] /recordadd <zonename> <nodename> <rrtype> <rrdata>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定記錄所在的區域。 |
<nodename> |
指定區域中的特定節點。 |
<rrtype> |
指定要新增的記錄類型。 |
<rrdata> |
指定預期的資料類型。 |
注意
新增記錄之後,請確定使用正確的資料類型和資料格式。 如需資源記錄類型和適當資料類型的清單,請參閱 Dnscmd 範例。
範例
dnscmd dnssvr1.contoso.com /recordadd test A 10.0.0.5
dnscmd /recordadd test.contoso.com test MX 10 mailserver.test.contoso.com
dnscmd /recorddelete 命令
刪除指定區域的資源記錄。
語法
dnscmd [<servername>] /recorddelete <zonename> <nodename> <rrtype> <rrdata> [/f]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定資源記錄所在的區域。 |
<nodename> |
指定主機的名稱。 |
<rrtype> |
指定要刪除的資源記錄類型。 |
<rrdata> |
指定預期的資料類型。 |
/f | 執行命令而不要求確認。 因為節點可以有多個資源記錄,因此此命令會要求您具體地了解要刪除的資源記錄類型。 如果指定資料類型但未指定資源記錄資料的類型,則會刪除具有指定節點的所有特定資料類型記錄。 |
範例
dnscmd /recorddelete test.contoso.com test MX 10 mailserver.test.contoso.com
dnscmd /resetforwarders 命令
當 DNS 伺服器無法在本機解析 DNS 查詢時,選取或重設其轉送 DNS 查詢的 IP 位址。
語法
dnscmd [<servername>] /resetforwarders <IPaddress> [,<IPaddress>]...][/timeout <timeout>] [/slave | /noslave]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<IPaddress> |
列出 DNS 伺服器轉送未解析查詢的 IP 位址。 |
/timeout <timeout> |
設定 DNS 伺服器等候轉寄站回應的秒數。 依預設,此值設定為五秒。 |
/slave | 如果轉寄站無法解析查詢,則防止 DNS 伺服器執行自己的反覆查詢。 |
/noslave | 如果轉寄站無法解析查詢,則允許 DNS 伺服器執行自己的反覆查詢。 這是預設設定。 |
/f | 執行命令而不要求確認。 因為節點可以有多個資源記錄,因此此命令會要求您具體地了解要刪除的資源記錄類型。 如果指定資料類型但未指定資源記錄資料的類型,則會刪除具有指定節點的所有特定資料類型記錄。 |
備註
預設情況下,DNS 伺服器會在無法解析查詢時執行反覆查詢。
使用 resetforwarders 命令設定 IP 位址會導致 DNS 伺服器對指定 IP 位址的 DNS 伺服器執行遞迴查詢。 如果轉寄站無法解析查詢,DNS 伺服器就可以執行自己的反覆查詢。
如果使用 /slave 參數,DNS 伺服器就不會執行自己的反覆查詢。 這表示 DNS 伺服器只會將未解析的查詢轉送至清單中的 DNS 伺服器,如果轉寄站無法解析查詢,則不會嘗試反覆查詢。 將一個 IP 位址設定為 DNS 伺服器的轉寄站會更有效率。 您可以對網路中的內部伺服器使用 resetforwarders 指令,將其未解析的查詢轉送至具有外部連線的一台 DNS 伺服器。
列出轉寄站的 IP 位址兩次,會導致 DNS 伺服器嘗試轉送至該伺服器兩次。
範例
dnscmd dnssvr1.contoso.com /resetforwarders 10.0.0.1 /timeout 7 /slave
dnscmd dnssvr1.contoso.com /resetforwarders /noslave
dnscmd /resetlistenaddresses 命令
指定接聽 DNS 用戶端要求之伺服器上的 IP 位址。 預設情況下,DNS 伺服器上的所有 IP 位址都會接聽用戶端 DNS 要求。
語法
dnscmd [<servername>] /resetlistenaddresses <listenaddress>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<listenaddress> |
指定接聽 DNS 用戶端要求之 DNS 伺服器上的 IP 位址。 如果未指定接聽位址,伺服器上的所有 IP 位址都會接聽用戶端要求。 |
範例
dnscmd dnssvr1.contoso.com /resetlistenaddresses 10.0.0.1
dnscmd /startscavenging 命令
告知 DNS 伺服器嘗試立即搜尋指定 DNS 伺服器中的過時資源記錄。
語法
dnscmd [<servername>] /startscavenging
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
備註
成功完成此命令將立即啟動清除。 如果清除失敗,則不會顯示任何警告訊息。
雖然啟動清除的命令似乎已順利完成,但除非符合下列先決條件,否則不會啟動清除:
伺服器和區域都已啟用清除。
區域已啟動。
資源記錄具有時間戳記。
如需如何啟用伺服器清除的資訊,請參閱 /config 一節中的伺服器層級語法底下的 scavenginginterval 參數。
如需如何啟用區域清除的資訊,請參閱 /config 一節中區域層級語法下的 aging 參數。
如需如何重新啟動暫停區域的資訊,請參閱本文中的 zoneresume 參數。
如需如何檢查時間戳記之資源記錄的資訊,請參閱本文中的 ageallrecords 參數。
範例
dnscmd dnssvr1.contoso.com /startscavenging
dnscmd /statistics 命令
顯示或清除指定 DNS 伺服器的資料。
語法
dnscmd [<servername>] /statistics [<statid>] [/clear]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<statid> |
指定要顯示的統計資料或統計資料組合。 statistics 命令會顯示在 DNS 伺服器啟動或復原時開始的計數器。 識別碼是用來識別統計資料。 如果未指定統計資料識別碼,則顯示所有統計資料。 可以指定的數字以及顯示的對應統計資料可以包括:
|
範例
dnscmd /unenlistdirectorypartition 命令
從指定的目錄分割區複本集移除 DNS 伺服器。
語法
dnscmd [<servername>] /unenlistdirectorypartition <partitionFQDN>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<partitionFQDN> |
將要移除之 DNS 應用程式目錄分割區的 FQDN。 |
dnscmd /writebackfiles 命令
檢查 DNS 伺服器記憶體是否有變更,並將其寫入永續性儲存體。 writebackfiles 命令會更新所有已變更區域或指定區域。 當記憶體中有尚未寫入永續性儲存體的變更時,區域就會變更。 這是檢查所有區域的伺服器層級作業。 您可以在此作業中指定一個區域,或使用 zonewriteback 作業。
語法
dnscmd [<servername>] /writebackfiles <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要更新的區域名稱。 |
範例
dnscmd dnssvr1.contoso.com /writebackfiles
dnscmd /zoneadd 命令
將區域新增至 DNS 伺服器。
語法
dnscmd [<servername>] /zoneadd <zonename> <zonetype> [/dp <FQDN> | {/domain | enterprise | legacy}]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定區域的名稱 |
<zonetype> |
指定要建立的區域類型。 指定 /forwarder 或 /dsforwarder 的區域類型,會建立執行條件式轉送的區域。 每個區域類型都有不同的必要參數:
|
<FQDN> |
指定目錄分割區的 FQDN。 |
/domain | 將區域儲存在網域目錄分割區上。 |
/enterprise | 將區域儲存在企業目錄分割區上。 |
/legacy | 將區域儲存在舊版目錄分割區上。 |
範例
dnscmd dnssvr1.contoso.com /zoneadd test.contoso.com /dsprimary
dnscmd dnssvr1.contoso.com /zoneadd secondtest.contoso.com /secondary 10.0.0.2
dnscmd /zonechangedirectorypartition 命令
變更指定區域所在的目錄分割區。
語法
dnscmd [<servername>] /zonechangedirectorypartition <zonename> {[<newpartitionname>] | [<zonetype>]}
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
區域所在目前目錄分割區的 FQDN。 |
<newpartitionname> |
區域將移動到之目錄分割區的 FQDN。 |
<zonetype> |
指定區域將移至的目錄分割區類型。 |
/domain | 將區域移至內建網域目錄分割區。 |
/forest | 將區域移至內建樹系目錄分割區。 |
/legacy | 將區域移至為預先 Active Directory 網域控制站建立的目錄分割區。 這些目錄分割區對於原生模式不是必要的。 |
dnscmd /zonedelete 命令
刪除指定的區域。
語法
dnscmd [<servername>] /zonedelete <zonename> [/dsdel] [/f]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要刪除的區域名稱。 |
/dsdel | 從 Azure Directory Domain Services (AD DS) 刪除區域。 |
/f | 執行命令而不要求確認。 |
範例
dnscmd /zoneexport 命令
建立文字檔,其中列出指定區域的資源記錄。 zoneexport 作業為 Active Directory 整合式區域建立資源記錄檔案,以進行疑難排解。 預設情況下,此命令所建立的檔案會放在 DNS 目錄中,預設為 %systemroot%/System32/Dns
目錄。
語法
dnscmd [<servername>] /zoneexport <zonename> <zoneexportfile>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定區域的名稱 |
<zoneexportfile> |
指定要建立的檔案名稱。 |
範例
dnscmd /zoneinfo
顯示指定伺服器登錄的區段設定:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters\Zones\<zonename>
。
語法
dnscmd [<servername>] /zoneinfo <zonename> [<setting>]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定區域的名稱 |
<setting> |
您可以個別指定 zoneinfo 命令傳回的任何設定。 如果您未指定設定,則會傳回所有設定。 |
備註
若要顯示伺服器層級登錄設定,請使用 /info 命令。
若要查看您可以使用此命令顯示的設定清單,請參閱 /config 命令。
範例
dnscmd /zonepause 命令
暫停指定的區域,然後忽略查詢要求。
語法
dnscmd [<servername>] /zonepause <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要暫停的區域名稱。 |
備註
- 若要繼續區域,並在暫停後可供使用,請使用 /zoneresume 命令。
範例
dnscmd dnssvr1.contoso.com /zonepause test.contoso.com
dnscmd /zoneprint 命令
列出區域中的記錄。
語法
dnscmd [<servername>] /zoneprint <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要列出的區域名稱。 |
dnscmd /zonerefresh 命令
強制次要 DNS 區域從主要區域更新。
語法
dnscmd [<servername>] /zonerefresh <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要重新整理的區域名稱。 |
備註
zonerefresh 命令會強制檢查主要伺服器開啟授權 (SOA) 資源記錄中的版本號碼。 如果主要伺服器上的版本號碼高於次要伺服器的版本號碼,則會啟動區域傳輸來更新次要伺服器。 如果版本號碼相同,則不會發生區域傳輸。
預設情況下,強制每 15 分鐘檢查一次。 若要變更預設值,請使用
dnscmd config refreshinterval
命令。
範例
dnscmd dnssvr1.contoso.com /zonerefresh test.contoso.com
dnscmd /zonereload 命令
從其來源複製區域資訊。
語法
dnscmd [<servername>] /zonereload <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要重新載入的區域名稱。 |
備註
如果區域已整合 Active Directory,則會從 Active Directory 網域服務 (AD DS) 重新載入。
如果區域是標準檔案支援的區域,則會從檔案重新載入。
範例
dnscmd dnssvr1.contoso.com /zonereload test.contoso.com
dnscmd /zoneresetmasters 命令
重設向次要區域提供區域傳輸資訊的主要伺服器 IP 位址。
語法
dnscmd [<servername>] /zoneresetmasters <zonename> [/local] [<IPaddress> [<IPaddress>]...]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要重設的區域名稱。 |
/local | 設定本機主要清單。 此參數用於 Active Directory 整合式區域。 |
<IPaddress> |
次要區域主要伺服器的 IP 位址。 |
備註
- 該值最初是在建立次要區域時設定的。 在次要伺服器上使用 zoneresetmasters 命令。 如果在主要 DNS 伺服器上設定此值,這個值則無效。
範例
dnscmd dnssvr1.contoso.com /zoneresetmasters test.contoso.com 10.0.0.1
dnscmd dnssvr1.contoso.com /zoneresetmasters test.contoso.com /local
dnscmd /zoneresetscavengeservers 命令
變更可以清除指定區域之伺服器的 IP 位址。
語法
dnscmd [<servername>] /zoneresetscavengeservers <zonename> [/local] [<IPaddress> [<IPaddress>]...]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要清除的區域。 |
/local | 設定本機主要清單。 此參數用於 Active Directory 整合式區域。 |
<IPaddress> |
列出可以執行清除的伺服器 IP 位址。 如果省略此參數,裝載此區域的所有伺服器都可以清除它。 |
備註
預設情況下,裝載區域的所有伺服器都可以清除該區域。
如果區域裝載在多個 DNS 伺服器上,您可以使用此命令來減少清除區域的次數。
必須在受此命令影響的 DNS 伺服器和區域上啟用清除。
範例
dnscmd dnssvr1.contoso.com /zoneresetscavengeservers test.contoso.com 10.0.0.1 10.0.0.2
dnscmd /zoneresetsecondaries 命令
當要求區域傳輸時,指定主伺服器回應之次要伺服器的 IP 位址清單。
語法
dnscmd [<servername>] /zoneresetsecondaries <zonename> {/noxfr | /nonsecure | /securens | /securelist <securityIPaddresses>} {/nonotify | /notify | /notifylist <notifyIPaddresses>}
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定將重設其次要伺服器的區域名稱。 |
/local | 設定本機主要清單。 此參數用於 Active Directory 整合式區域。 |
/noxfr | 指定不允許任何區域傳輸。 |
/nonsecure | 指定授與所有區域傳輸要求。 |
/securens | 指定只授與在區域的名稱伺服器 (NS) 資源記錄中列出的伺服器之傳輸權限。 |
/securelist | 指定區域傳輸只會授與伺服器清單。 此參數後面必須接著主要伺服器所使用的一個或多個 IP 位址。 |
<securityIPaddresses> |
列出從主要伺服器接收區域傳輸的 IP 位址。 此參數只能與 /securelist 參數搭配使用。 |
/nonotify | 指定不向次要伺服器發送任何變更通知。 |
/notify | 指定向所有次要伺服器發送變更通知。 |
/notifylist | 指定變更通知只會傳送到伺服器清單。 此命令後面必須接著主要伺服器所使用的一個或多個 IP 位址。 |
<notifyIPaddresses> |
指定向其發送變更通知之一個或多個次要伺服器的一個或多個 IP 位址。 此清單僅與 /notifylist 參數搭配使用。 |
備註
- 使用主要伺服器上的 zoneresetsecondaries 命令來指定它如何回應來自次要伺服器的區域傳輸要求。
範例
dnscmd dnssvr1.contoso.com /zoneresetsecondaries test.contoso.com /noxfr /nonotify
dnscmd dnssvr1.contoso.com /zoneresetsecondaries test.contoso.com /securelist 11.0.0.2
dnscmd /zoneresettype 命令
變更區域的類型。
語法
dnscmd [<servername>] /zoneresettype <zonename> <zonetype> [/overwrite_mem | /overwrite_ds]
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
識別將變更類型的區域。 |
<zonetype> |
指定要建立的區域類型。 每個類型都有不同的必要參數,包括:
|
/overwrite_mem | 覆寫 AD DS 中資料的 DNS 資料。 |
/overwrite_ds | 覆寫 AD DS 中的現有資料。 |
備註
- 將區域類型設定為 /dsforwarder 會建立執行條件式轉送的區域。
範例
dnscmd dnssvr1.contoso.com /zoneresettype test.contoso.com /primary /file test.contoso.com.dns
dnscmd dnssvr1.contoso.com /zoneresettype second.contoso.com /secondary 10.0.0.2
dnscmd /zoneresume 命令
啟動先前暫停的指定區域。
語法
dnscmd [<servername>] /zoneresume <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要繼續的區域名稱。 |
備註
- 您可以使用這項作業從 /zonepause 作業重新啟動。
範例
dnscmd dnssvr1.contoso.com /zoneresume test.contoso.com
dnscmd /zoneupdatefromds 命令
從 AD DS 更新指定的 Active Directory 整合式區域。
語法
dnscmd [<servername>] /zoneupdatefromds <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要更新的區域名稱。 |
備註
- 預設情況下,Active Directory 整合式區域每隔五分鐘執行一次此更新。 若要變更此參數,請使用
dnscmd config dspollinginterval
命令。
範例
dnscmd dnssvr1.contoso.com /zoneupdatefromds
dnscmd /zonewriteback 命令
檢查 DNS 伺服器記憶體中是否有與指定區域相關的變更,並將其寫入永續性儲存體。
語法
dnscmd [<servername>] /zonewriteback <zonename>
參數
參數 | 描述 |
---|---|
<servername> |
指定要管理的 DNS 伺服器,以 IP 位址、FQDN 或主機名稱表示。 如果您省略此參數,系統會使用本機伺服器。 |
<zonename> |
指定要更新的區域名稱。 |
備註
- 這是區域層級作業。 您可以使用 /writebackfiles 作業來更新 DNS 伺服器上的所有區域。
範例
dnscmd dnssvr1.contoso.com /zonewriteback test.contoso.com