Get-DnsServerResourceRecord在2016年的服务器上无法使用。

问题描述 投票:0回答:1

我有一个利用函数Get-DNSServerResourceRecord的powershell。 我已经在几个不同的服务器上进行了测试,但在我想让它运行的服务器上,我得到了这个错误。

Get-DNSServerResourceRecord : 术语'Get-DnsServerResourceRecord'不被识别为cmdlet、函数、脚本文件或可操作程序的名称。检查名称的拼写,如果包含路径,请确认路径是否正确,然后再试。在 line:2 char:3 + Get-DnsServerResourceRecord -ComputerName $DNSServer -ZoneNam ...。 (Get-DnsServerResourceRecord:String)[], CommandNotF oundException + FullyQualifiedErrorId : CommandNotFoundException (CommandNotFoundException)

我所有的google都告诉我,由于我在Windows Server 2016 (DataCenter)上运行这个,所以这应该可以正常工作。 为了让这个运行,我缺少什么?


我到底是如何运行它的。

$DNSServer = "dnsservername"
        $dnsrecord = Get-DnsServerResourceRecord -ComputerName $DNSServer -ZoneName 'db.local' -RRType CName | Where-Object {$_.RecordData.HostNameAlias -like "*" -and $_.HostName -like "*.*"}  

        $Datatable = New-Object System.Data.DataTable
        [void]$Datatable.Columns.Add("CName")
        [void]$Datatable.Columns.Add("HostNameAlias")

        Foreach ($record in $dnsrecord)
        {
            [void]$Datatable.Rows.Add($record.HostName, $record.RecordData.HostNameAlias)
        }
powershell dns windows-server-2016
1个回答
0
投票

你需要安装DNS服务器工具模块.运行下面的powershell命令安装-WindowsFeature rsat-DNS-server。

© www.soinside.com 2019 - 2024. All rights reserved.