使用PowerShell配置IPv6 DNS地址为本机



我在Windows 8.1上运行本地DNS服务器,并希望创建一个PowerShell脚本来自动在此DNS服务器和DHCP提供的DNS服务器之间切换。

我发现

Set-DnsClientServerAddress -InterfaceIndex 3 -ServerAddresses 127.0.0.1 -Validate

可用于将DNS地址设置为本地主机,并且

Set-DnsClientServerAddress -InterfaceIndex 3 -ResetServerAddresses

重置为DHCP的值。

我还想将DNS服务器的IPv6地址更改为本地主机(::1),但是当我尝试使用

这样做时
Set-DnsClientServerAddress -InterfaceIndex 3 -ServerAddresses "::1" -Validate

我得到以下'一般错误',我无法追溯到它的原因:

Set-DnsClientServerAddress : A general error occurred that is not covered by a more specific error code.
At line:1 char:1
+ Set-DnsClientServerAddress -InterfaceIndex 3 -Validate -ServerAddresses "::1"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (MSFT_DNSClientS...stemName = "2"):ROOT/StandardCi...ntServerAddress) [Set
   -DnsClientServerAddress], CimException
    + FullyQualifiedErrorId : MI RESULT 1,Set-DnsClientServerAddress
Set-DnsClientServerAddress : A general error occurred that is not covered by a more specific error code.
At line:1 char:1
+ Set-DnsClientServerAddress -InterfaceIndex 3 -Validate -ServerAddresses "::1"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (MSFT_DNSClientS...temName = "23"):ROOT/StandardCi...ntServerAddress) [Set
   -DnsClientServerAddress], CimException
    + FullyQualifiedErrorId : MI RESULT 1,Set-DnsClientServerAddress

必须使用哪个命令来将IPv6 DNS地址设置为本地主机,为什么我当前的解决方案产生错误?

-Validate在这里表示实际尝试连接到指定的DNS服务器。如果它们不响应,则发生此错误。

当然,你应该有一个DNS服务器运行在指定的地址,如果你真的打算使用它…

最新更新