导出DNS服务器上的记录

近日遇到一个需求,需要将DNS服务器上的所有记录都导出。

试了一下,如果从DNS管理单元里直接选择导出列表,那么子域的DNS记录是不会被导出的。这样显然不行,需要寻找其它方法。本来想用Export-DnsServerZone,但是发现它只能导出本机上的DNS记录。因为平时的管理都只是在管理机上,轻易不会去登录DNS服务器的,所以最好能找到其它的命令。经过搜索,找到后面这些命令。

 https://www.cnblogs.com/qishine/p/12375825.html

这些命令导出的文件会包含条件转发器的区域,但是条件转发器区域对应的文件是空的。

从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/

猜你喜欢

转载自www.cnblogs.com/qishine/p/12375825.html
今日推荐