如何在Windows Server 2008中以编程方式设置networking适配器的DNS地址? 看起来像Set-DnsClientServerAddress不受支持。
这是不可能的,通过PowerShell( 文档没有明确这一点,但你可以看到Server 2008未列在页面的顶部),但你可以使用netsh :
netsh interface ip add dnsserver "Local Area Connection" 10.0.0.1
由于您要求使用PowerShell,因此可以使用WMI并通过Win32_NetworkAdapterConfiguration提供程序进行设置:
Get-WMIObject win32_NetworkAdapterConfiguration
这将列出你有的适配器,然后你可以select一个特定的适配器:
$adapter = Get-WMIObject win32_NetworkAdapterConfiguration -Filter "Index=X" # or use PowerShell filtering $adapter = Get-WMIObject win32_NetworkAdapterConfiguration | Where-Object { $_.Index -eq X }
然后使用SetDNSServerSearchOrder()方法设置地址(es):
$adapter.SetDNSServerSearchOrder("8.8.8.8") # or a list $dns_servers = "8.8.8.8", "8.8.4.4" $adapter.SetDNSServerSearchOrder($dns_servers)
奖励单线:
(gwmi win32_networkadapterconfiguration -Filter "index=x").SetDNSServerSearchOrder(@("8.8.8.8","8.8.4.4"))