在 Windows 10 上,我需要在登录后立即手动设置我的 DNS 服务器。出于某种原因,似乎 DHCP 在每次重新启动时都会清除我的手动设置。:-( )
我在使用 wifi 和电缆之间有所不同(取决于我是否在带基座的办公桌前)。
这个命令很好用:
Set-DNSClientServerAddress –interfaceIndex 25 –ServerAddresses (“127.0.0.1”,”1.1.1.2”)
如何动态找出interfaceIndex
当前活动的网络连接?
解决方案
这是一项正在进行的工作(还没有弄清楚在坞站等时寻找正确适配器的所有变体),但它适用于 wifi(我有多个 vmware 接口已启动,需要将它们过滤掉!)
$adapterIndex = Get-NetAdapter | % { Process { If (( $_.Status -eq "up" ) -and ($_.Name -eq "Wi-Fi") ){ $_.ifIndex } }};
Set-DNSClientServerAddress –interfaceIndex $adapterIndex –ServerAddresses (“127.0.0.1”,”1.1.1.2”);
使用get-netadapter并根据“ up ”的状态值获取当前“活动”网络适配器的值。使用该值动态获取该适配器的索引值。然后将其用作命令中索引的值来设置 DNS 地址。
Set-DNSClientServerAddress
请在支持资源部分阅读更多关于用于帮助动态获取此详细信息的条件逻辑和其他技术的信息。
电源外壳
Get-NetAdapter(输出示例)
注意:请注意,命名适配器的值是
ifIndex
active和 up。7
Wi-Fi
支持资源