0

我正在尝试获取在某个 DNS 服务器(公司的内部网络 DNS)上具有 A 记录的所有计算机的列表。

到目前为止,我设法使用 NMAP 获取所有在线主机并为其提供特定的子网进行扫描(nmap -sN [subnet]),但不幸的是,当我为其提供大于 /24 的子网时,它经常崩溃。当然,另一种选择是 ping 给定范围内的所有 IP 并查看谁回答,但这需要太长时间。

我正在尝试将其包含在 powershell 脚本中,因此任何可以从 CLI 运行的东西都会很棒,任何我可以从 CLI 编译和运行的编程语言都会很好,任何需要手动输入的东西,都不是很好。

任何帮助将不胜感激!

编辑:如果可能的话,将列表限制为单个区域会很棒。

4

2 回答 2

0

关于 powershell,自动化程度不高,但您可以在 DNS 客户端 cmdlet 中使用一些东西。

http://technet.microsoft.com/en-us/library/jj590772.aspx

获得帮助 - 示例

于 2013-10-08T11:32:29.593 回答
0

请使用这个强大的 GridView:

$server = "Your_DNS_Server"
$record = Get-WmiObject -Namespace "root\MicrosoftDNS" -ComputerName $server -Class MicrosoftDNS_AType
$record | Select DomainName,RecordData,OwnerName | Sort-Object -Property {[System.Version]$_.RecordData} | Out-GridView
于 2016-01-22T13:40:22.037 回答