導出DNS服務器上的記錄

近日遇到一個需求,需要將DNS服務器上的所有記錄都導出。

試了一下,如果從DNS管理單元裏直接選擇導出列表,那麼子域的DNS記錄是不會被導出的。這樣顯然不行,需要尋找其它方法。本來想用Export-DnsServerZone,但是發現它只能導出本機上的DNS記錄。因爲平時的管理都只是在管理機上,輕易不會去登錄DNS服務器的,所以最好能找到其它的命令。經過搜索,找到後面這些命令。

https://blog.csdn.net/qishine/article/details/104550220

這些命令導出的文件會包含條件轉發器的區域,但是條件轉發器區域對應的文件是空的。

從DNS服務器

$Zones = @(Get-DnsServerZone)

ForEach ($Zone in $Zones) {

Write-Host "`n$($Zone.ZoneName)" -ForegroundColor "Green"

$Zone | Get-DnsServerResourceRecord

}

從其它DNS服務器

$DNSServer = "servernameOrIp"

$Zones = @(Get-DnsServerZone -ComputerName $DNSServer)

ForEach ($Zone in $Zones) {

Write-Host "`n$($Zone.ZoneName)" -ForegroundColor "Green"

$Zone | Get-DnsServerResourceRecord -ComputerName $DNSServer

}

從其它DNS服務器,輸出table分隔的文件

$DNSServer = "servernameOrIp"

$Zones = @(Get-DnsServerZone -ComputerName $DNSServer)

ForEach ($Zone in $Zones) {

Write-Host "`n$($Zone.ZoneName)" -ForegroundColor "Green"

$Results = $Zone | Get-DnsServerResourceRecord -ComputerName $DNSServer

echo $Results > "$($Zone.ZoneName).txt"

}

 

原帖地址

http://sigkillit.com/2015/10/27/list-all-dns-records-with-powershell/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章