从Win 2008R2服务器或Win7通过Powershell添加DNS Alogging到Win 2008R2服务器

我最近发现,使用一个很好的cmdlet可以简单地自动执行DNS条目pipe理:

Import-Module DnsServer Add-DnsServerResourceRecordA -Name mail2 -IPv4Address 192.168.0.10 -ZoneName powershell.local 

我想在Windows 2008 R2计算机上运行这个(在Web服务中调用它)来更改另一个DNS项。 我看到Powershell v3已经支持这个function,但是我还是无法在Powershell v4上运行它,显然这个模块不能被导入。 这是因为我在Windows 7机器上testing过吗? 我有一个Windows 7开发机器,我想开发和debugging它。 是否有可能以某种方式重新加载这个模块? 如果是,我该怎么做?

我在MS页面看到它在Windows Server 2012上受支持,但我没有Win2012系统来testing它,以确认和切换生产服务器2012年目前是不可能的。

非常感谢

您需要指定DNS服务器,否则它将在本地服务器上运行,所以如果远程运行此cmdlet,则需要指定DNS服务器的位置。

使用:

-ComputerName cmdlet中的-ComputerName ,并指定要更改的DNS服务器的名称或IP。

指定一个DNS服务器。 如果不指定该参数,则该命令在本地系统上运行。 您可以指定IP地址或parsing为IP地址的任何值,例如完全限定的域名(FQDN),主机名或NETBIOS名称。

但是,该cmdlet仅指定Windows 8.1和Windows 2012 R2。 所以它很可能不会在这些操作系统之前的任何东西上运行……这就是为什么他们在Technet上的文档中指定它。

您需要安装远程服务器pipe理工​​具。

在服务器上,它们作为一项function进行安装。

对于客户端谷歌“rsat的Windows 7”,并下载安装程序。

安装完成后,您可以使用import-module cmd-let提供的powershell服务器pipe理模块。

[编辑] DndServer模块自带win8.1 RSAT。 你可以通过其他方式在win7上完成,请参阅脚本编写人员: http : //blogs.technet.com/b/heyscriptingguy/archive/2010/09/13/manage-dns-in-a-windows-environment-通过-使用-powershell.aspx

但是我在几周前迁移了一个dns服务器的时候,我做了一个csv文件导入(我没有想到我写了我的答案)。 我发现从powershell调用dnscmd比乱七八糟更容易。

这是我使用的实际执行,csv导入和循环剥离:

 dnscmd $DNS_DNSServerName /recordadd $DNS_Domain $DNS_Name $DNS_ResourceType $DNS_Data 

采取从这里: http : //daniel.streefkerkonline.com/2014/12/09/change-a-nics-dns-server-settings-with-owershell-and-wmi-setdnsserversearchorder/

看一下这个:

我们想要使用的服务器

$ newDNSServers =“192.168.1.1”,“192.168.1.2”

获取已设置DNS服务器的所有networking适配器

$ adapters = Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object {$ _。DNSServerSearchOrder -ne $ null}

为所有先前find的适配器设置DNS服务器search顺序

$ adapters | ForEach-Object {$ _。SetDNSServerSearchOrder($ newDNSServers)}