如何将 DNS 添加到所有接口而不命名它们?

如何将 DNS 添加到所有接口而不命名它们?

如何使用 netsh 或类似命令将我的 DNS 服务器添加到所有接口,而不是逐一命名它们。

通常我会这样做:netsh 接口 ip 设置 dns“本地连接”静态 1.2.3.4.5 netsh 接口 ip 设置 dns“本地连接 2”静态 1.2.3.4.5 netsh 接口 ip 设置 dns“WiFi”静态 1.2.3.4.5

我该怎么做,比如说 netsh interface ip set dns * static 1.2.3.4.5? (当然,这个不起作用),所以我不必输入所有接口的名称?

谢谢你!

答案1

感谢@HelpingHand,这对我有用:

powershell "foreach ($c in Get-NetAdapter) { write-host 'Setting DNS for' $c.interfaceName ; Set-DnsClientServerAddress -InterfaceIndex $c.interfaceindex -ServerAddresses ('1.2.3.4', '5.6.7.8') }"

就我而言,我从 Elastic Beanstalk 的 ebextensions 文件运行它,以便我的 Windows EC2 实例可以使用私有 DNS 服务器启动:

commands:
  useInternalDns:
    command: powershell "foreach...
    ignoreErrors: false
    waitAfterCompletion: 0

这样,即使接口名称和索引发生变化,自定义 DNS 服务器也会始终被添加。

相关内容