如何在 Windows Server 2008 中以编程方式设置网络适配器的 DNS 地址?似乎Set-DnsClientServerAddress
不支持。
答案1
无法通过 PowerShell 执行此操作(文档没有明确说明这一点,但您可以看到 Server 2008 没有列在页面顶部),但您可以使用netsh
:
netsh interface ip add dnsserver "Local Area Connection" 10.0.0.1
答案2
由于您要求使用 PowerShell,因此您可以使用 WMI 并通过提供程序进行设置Win32_NetworkAdapterConfiguration
:
Get-WMIObject win32_NetworkAdapterConfiguration
这将列出您拥有的适配器,然后您可以选择一个特定的适配器:
$adapter = Get-WMIObject win32_NetworkAdapterConfiguration -Filter "Index=X"
# or use PowerShell filtering
$adapter = Get-WMIObject win32_NetworkAdapterConfiguration | Where-Object { $_.Index -eq X }
然后使用该SetDNSServerSearchOrder()
方法设置地址:
$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"))