最近某些地区的用户无法通过电脑端访问网络,但是手机端却能正常访问,经小编测试查实,是DNS设置问题。所以这里弄了个最优化DNS设置工具的批处理。

将以下代码保存为bat或cmd文件即可
@ECHO OFF
@mode con lines=50 cols=100
COLOR 0B
CLS
ECHO #################################################################################
ECHO # 最优化DNS设置工具,以管理员身份执行,若安全软件拦截,请点允许 #
ECHO #################################################################################
SETLOCAL ENABLEDELAYEDEXPANSION
TITLE 最优化DNS设置工具
SET d=www.baidu.com
SET b1=114.114.114.114
SET b2=223.5.5.5
SET b3=1.2.4.8
SET b4=180.76.76.76
SET b5=119.29.29.29
SET b6=1.1.1.1
SET b7=8.8.8.8
ECHO 正在检测域名解析,可能需要1~2分钟,请耐心等待...
ECHO .
ECHO ..
FOR /L %%b IN (1,1,7) DO (
SET ip%%b=空
SET t%%b=超时
FOR /F "skip=1 tokens=1,2 delims=: " %%i IN ('nslookup -qt^=a %d% !b%%b! 2^>nul^|findstr "[0-9]$"') DO (
SET ip%%b=%%j
FOR /F "tokens=4 delims== " %%k IN ('ping %%j -n "2" ^| findstr /c:"平均"') DO (
SET t%%b=%%k
)))
SET tmin=10000
SET bmin=!b1!
FOR /L %%b IN (1,1,7) DO (
IF !ip%%b!==空 (
ECHO DNS"!b%%b!" 解析域名"%d%" 失败
) ELSE (
IF !t%%b!==超时 (
ECHO DNS"!b%%b!" 解析域名"%d%" IP为!ip%%b! 连接超时!
) ELSE (
ECHO DNS"!b%%b!" 解析域名"%d%" IP为!ip%%b! 连接时间为!t%%b!
SET /a t%%b=!t%%b:~0,-2!+0
IF !tmin! GEQ !t%%b! (
SET tmin=!t%%b!
SET bmin=!b%%b!
))))
ECHO=
ECHO #####################################################################
ECHO=
SET /P RT=推荐设置DNS为!bmin!,是否设置(y/n)?:
IF %RT%==y (
FOR /F "SKIP=3 TOKENS=*" %%M IN ('NETSH INTERFACE SHOW INTERFACE') DO (
FOR %%T IN (%%M) DO SET E=%%T
NETSH -C INTERFACE IP ADD DNS NAME="!E!" ADDR=!bmin! INDEX=1
ECHO 设置网卡"!E!"为!bmin!完毕
)
IPCONFIG /FLUSHDNS
ECHO 测试域名解析 ping %d%
PING %d%
ECHO #####################################################################
ECHO 设置DNS完毕,按任意键退出...
) ELSE (
IF %RT%==Y (
FOR /F "SKIP=3 TOKENS=*" %%M IN ('NETSH INTERFACE SHOW INTERFACE') DO (
FOR %%T IN (%%M) DO SET E=%%T
NETSH -C INTERFACE IP ADD DNS NAME="!E!" ADDR=!bmin! INDEX=1
ECHO 设置网卡"!E!"为!bmin!完毕
)
IPCONFIG /FLUSHDNS
ECHO 测试域名解析 ping %d%
PING %d%
ECHO #####################################################################
ECHO 设置DNS完毕,按任意键退出...
) ELSE (
ECHO #####################################################################
ECHO 设置DNS失败,按任意键退出...
))
PAUSE>NUL
EXIT




