我需要经常更改DNS服务器地址,现在我通过打开“网络和共享中心”-“本地连接”-属性-ipv4-然后键入DNS号码来完成。
有没有更快的方法来做到这一点?我可以使用批处理文件或 powershell 脚本来完成吗?是否有内置的控制台命令来更改 DNS?
Log*_*man 42
主 DNS 值:
netsh interface ipv4 set dns "Local Area Connection" static 192.168.0.2
Run Code Online (Sandbox Code Playgroud)
次要值:
netsh interface ipv4 add dns "Local Area Connection" 192.168.0.3 index=2
Run Code Online (Sandbox Code Playgroud)
如果连接名称正确,则效果很好。如果名称不是“本地连接”,则它将不起作用。如果您运行的是 XP,则需要将“ipv4”更改为“ip”。也可以使用 IPv6。
设置子网掩码、IP 地址和网关:
netsh interface ipv4 set address name="Local Area Connection" source=static addr=192.168.1.10 mask=255.255.255.0 gateway=192.168.0.1
Run Code Online (Sandbox Code Playgroud)
要查找网络连接,您可以从 cmd 行使用 ipconfig。但是您也可以将以下内容用于缩写的 ipconfig 结果:
ipconfig | find /I "Ethernet adapter"
Run Code Online (Sandbox Code Playgroud)
使用上面的 ipconfig cmd 我们可以循环连接(源代码)并设置 dns 服务器:
:: Set primary and alternate DNS for IPv4 on Windows Server 2000/2003/2008 &
:: Windows XP/Vista/7
@ECHO OFF
SETLOCAL EnableDelayedExpansion
SET adapterName=
FOR /F "tokens=* delims=:" %%a IN ('IPCONFIG ^| FIND /I "ETHERNET ADAPTER"') DO (
SET adapterName=%%a
REM Removes "Ethernet adapter" from the front of the adapter name
SET adapterName=!adapterName:~17!
REM Removes the colon from the end of the adapter name
SET adapterName=!adapterName:~0,-1!
netsh interface ipv4 set dns name="!adapterName!" static 192.168.0.2 primary
netsh interface ipv4 add dns name="!adapterName!" 192.168.0.3 index=2
)
ipconfig /flushdns
:EOF
Run Code Online (Sandbox Code Playgroud)
小智 9
还要使用 DHCP 服务器提供的 DNS 地址:
netsh interface ipv4 set dns "Local Area Connection" dhcp
Run Code Online (Sandbox Code Playgroud)
这是您的新朋友:QuickSetDNS,由 NirSoft 提供,一如既往的出色。

它还可以在命令行中使用 :) 与 netsh 相比具有以下优势:
只是一些警告:
小智 6
在 Windows 8 或 2012 中使用Powershell脚本,您可以设置如下值:
Set-DnsClientServerAddress -InterfaceAlias Wi-Fi -ServerAddresses "1.1.1.1","2.2.2.2"
Run Code Online (Sandbox Code Playgroud)
其中wi-Fi是您感兴趣的接口的名称。您可以通过运行列出接口:
Get-NetAdapter
Run Code Online (Sandbox Code Playgroud)
要重置 DNS 地址并使用 DHCP:
Set-DnsClientServerAddress -InterfaceAlias wi-fi -ResetServerAddresses
Run Code Online (Sandbox Code Playgroud)
转到此页面查看完整说明。
请注意,此处使用的 comandlet 在早期版本中不可用,例如 Windows 7。
| 归档时间: |
|
| 查看次数: |
143728 次 |
| 最近记录: |