批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!(一)

时间:2022-09-04 17:00:34

因为公司有同事负责美国、日本两个城市,经常在两地来回走动,到每个城市后,都要自己手动更改相应的网络配置,况且到外地时住的是酒店,

酒店上网是自动获得IP,又要将网络设置取消,真的很麻烦!于是想起写一个批处理!来解决这个问题!主要用到的命令是netsh.

-、第一种方法是将两地的网络配置先进行本机设置,然后再导出,等用到的时候,再分别导入。

1、将现有的配置导出到d:\test.txt中:

netsh �Cc interface dump > d:\test.txt

2、将之前导出的d:\test.txt文件进行导入:

netsh -f d:\test.txt

这种方法在执行时有点慢,不如下面的方法。

二、第二种方法

语法格式:

1、设置IP、网关

netsh  interface  ip  set  address   name="本地连接"  static   要设置的IP地址   子网掩码   网关IP    网关跃数  

2、设置主DNS、WINS

netsh  interface  ip  set  dns/wins  name="本地连接"  static   要设置的DNS地址  register=PRIMARY

2、设置备用DNS、WINS

netsh  interface  ip  add  dns/wins  name="本地连接"    要设置的DNS地址  index=2

具体配置如下:

1、酒店.bat

@echo off
echo   取消指定网络配置,请稍等….
echo.
echo   正在设置自动获取IP地址,请稍等……
netsh interface ip set address name="本地连接" source=dhcp
echo 正在设置自动获取DNS,请稍等……
netsh interface ip set dns name="本地连接" source=dhcp
echo 设置完成!

2、美国.bat

@echo off
echo 开始设置美国网络地址!
echo 正在设置美国IP ,请稍等……
netsh interface ip set address name="本地连接" source=static addr=192.168.1.18 mask=255.255.0.0
echo 正在设置美国网关,请稍等……
netsh interface ip set address name="本地连接" gateway=192.168.1.13 gwmetric=1
echo 正在设置美国主DNS ,请稍等……
netsh interface ip set dns name="本地连接" source=static addr=192.168.1.1 register=PRIMARY
echo 正在设置美国备用DNS ,请稍等……
netsh interface ip add dns name="本地连接" addr=192.168.1.2 index=2
echo 正在设置美国主WINS ,请稍等……
netsh interface ip set wins name="本地连接" source=static addr=192.168.1.1
echo 正在设置美国备用WINS ,请稍等……
netsh interface ip add wins name="本地连接" addr=192.168.1.2 index=2
echo 设置完成!

3、日本.bat

@echo off
echo 开始设置日本网络地址!
echo 正在设置日本IP ,请稍等……
netsh interface ip set address name="本地连接" source=static addr=192.168.2.89 mask=255.255.0.0
echo 正在设置日本网关,请稍等……
netsh interface ip set address name="本地连接" gateway=192.168.2.24 gwmetric=1
echo 正在设置日本主DNS ,请稍等……
netsh interface ip set dns name="本地连接" source=static addr=192.168.2.1 register=PRIMARY
echo 正在设置日本备用DNS ,请稍等……
netsh interface ip add dns name="本地连接" addr=192.168.2.2 index=2
echo 正在设置日本主WINS ,请稍等……
netsh interface ip set wins name="本地连接" source=static addr=192.168.2.1
echo 正在设置日本备用WINS ,请稍等……
netsh interface ip add wins name="本地连接" addr=192.168.2.2 index=2
echo 设置完成!

至此第二种方法完成!

三、也可以在批处理中使用变量!例如美国.BAT可以按照如下方法写:

@ echo off
rem 设置变量
set Nic=本地连接
rem //可以根据你的需要更改,
set Addr=192.168.1.18
set Mask=255.255.255.0
set Gway=192.168.1.13
set Dns1=192.168.1.1
set Dns2=192.168.1.2
set Wins1=192.168.1.1
set Wins2=192.168.1.2
rem //以上依次为IP地址、子网掩码、网关、首选DNS、备用DNS、首选WINS、备用WINS

echo ------------------------------------------------------
echo 正在进行美国IP设置,请稍等

rem //可以根据你的需要更改
echo. IP地址 = %Addr%
echo. 子网掩码 = %Mask%
netsh interface ip set address name=%Nic% source=static addr=%Addr% mask=%Mask% >nul
echo. 网关 = %Gway%
netsh interface ip set address name=%Nic% gateway=%Gway% gwmetric=1 >nul
echo. 首选DNS = %Dns1%
netsh interface ip set dns name=%Nic% source=static addr=%Dns1% register=PRIMARY >nul
echo. 备用DNS = %Dns2%
netsh interface ip add dns name=%Nic% addr=%Dns2% index=2 >nul
echo. 首选WINS = %Wins1%
netsh interface ip set wins name=%Nic% source=static addr=%Wins1% register=PRIMARY >nul
echo. 备用WINS = %Wins2%
netsh interface ip add wins name=%Nic% addr=%Wins2% index=2 >nul

echo ------------------------------------------------------
echo IP设置完成!

依个人习惯采用适合自己的方法。