CloudflareWARP修改了DNS,会导致很多国内的域名无法解析(包括笔者单位的vpn服务器)。以下脚本用于切换 DNS
@echo off
sc query "CloudflareWARP" | findstr "STOPPED"
rem var=0 服务已停止 var=1 服务运行中
set var=%errorlevel%
set /p ans=将DNS修改为梯子专用 [y/n]:
if "%ans%"=="y" (
if "%var%"=="0" (
sc start "CloudflareWARP"
ping 127.0.2.2
)
netsh interface ipv4 add dnsservers "以太网" 127.0.2.2
netsh interface ipv4 add dnsservers "以太网" 127.0.2.3 index=2
netsh interface ipv4 add dnsservers "以太网 2" 127.0.2.2
netsh interface ipv4 add dnsservers "以太网 2" 127.0.2.3 index=2
netsh interface ipv4 add dnsservers "WLAN" 127.0.2.2
netsh interface ipv4 add dnsservers "WLAN" 127.0.2.3 index=2
) else (
if "%var%"=="1" sc stop CloudflareWARP
netsh interface ipv4 set dnsservers name="以太网" source=dhcp
netsh interface ipv4 set dnsservers name="以太网 2" source=dhcp
netsh interface ipv4 set dnsservers name="WLAN" source=dhcp
rem nslookup vpn.zime.edu.cn
)
ipconfig/all
sc query "CloudflareWARP" | findstr "STOPPED"
set var=%errorlevel%
if "%ans%"=="n" (
echo.
if "%var%"=="0" echo 请注意:DNS改成自动时, CloudflareWARP 服务已被关闭!
)
:end
echo.
pause
127.0.0.2 和 127.0.0.3 两个IP地址是服务启动时产生,所以, sc start 启动服务时需要适当延时(脚本中用 ping命令),不延时可能后续添加地址时出现找不到的情况