标题: 转载:用批处理来快速切换IP地址 [打印本页] 作者: wuyou 时间: 2007-9-20 09:05 标题: 转载:用批处理来快速切换IP地址 【原创】用批处理来快速切换IP地址(5.19更新)作者:后知后觉 日期:2007-05-12
字体大小: 小 中 大
有的电脑需要切换IP地址,比如公司笔记本电脑,有时候出差的时候在外面用不同的网络,然后出差回来之后又要更换成公司的IP地址,这样换来换去比较麻烦,做成批处理就比较简单了。
我现在公司也需要这样的功能,公司的总经理助理在财务部办公,财务部有一个交换机跟公司的网络相连。
现在要求财务部单独的网段,助理也要跟财务部相连,有时候方便通过网络查看财务数据。但是助理也要跟公司内网连接来上网。
公司内网的网段是 192.168.0.0/24 网关为192.168.0.1
为了节约成本已经设置方便,直接把财务的几台电脑设置为 192.168.2.0/24,网关为192.168.2.1,这样就直接用IP分割成一个内部网了,虽然不是很安全,但是计算机不是很多,也可以将就。
现在助理的机器想要访问谁的网络,就直接把IP改成那个网段就可以了。但是改来改去比较麻烦,所以我就写了2个批处理来实现,都有注释,一般应该都看的懂,我就不解释了。
---------------------------
财务内部ip.bat
---------------------------
程序代码
@echo off
rem eth //设置网卡名称,如"本地连接"
set eth="本地连接"
rem ip //设置IP地址
set ip=192.168.2.60
rem gw //设置网关
set gw=192.168.2.1
rem netmasks //设置子网掩码
set netmasks=255.255.255.0
rem dns1 //设置主DNS
set dns1=111.111.111.111
rem dns2 //设置辅DNS
set dns2=222.222.222.222
echo 正在将本机IP更改到:%ip%
netsh interface ip set address "%eth%" static %ip% %netmasks% %gw% default
echo 正在添加本机主DNS:%dns1%
netsh interface ip set dns "%eth%" static %dns1%
echo 正在添加本机副DNS:%dns2%
netsh interface ip add dns "%eth%" %dns2%
echo ------------------------------
echo IP更改完毕,检查当前配置...
echo ------------------------------
ipconfig /all
pause
close
---------------------------
公司上网ip.bat
---------------------------
程序代码
@echo off
rem eth //设置网卡名称,如"本地连接"
set eth="本地连接"
rem ip //设置IP地址
set ip=192.168.0.19
rem gw //设置网关
set gw=192.168.0.1
rem netmasks //设置子网掩码
set netmasks=255.255.255.0
rem dns1 //设置主DNS
set dns1=61.144.56.100
rem dns2 //设置辅DNS
set dns2=202.96.128.86
echo 正在将本机IP更改到:%ip%
netsh interface ip set address "%eth%" static %ip% %netmasks% %gw% default
echo 正在添加本机主DNS:%dns1%
netsh interface ip set dns "%eth%" static %dns1%
echo 正在添加本机副DNS:%dns2%
netsh interface ip add dns "%eth%" %dns2%
echo ------------------------------
echo IP更改完毕,检查当前配置...
echo ------------------------------
ipconfig /all
pause
close
---------------------------
自动获取ip.bat
---------------------------
程序代码
@echo off
rem eth //设置网卡名称,如"本地连接"
set eth="本地连接"
rem sleep //设置后面的等待时间,如"20秒"
set sleep=ping -n 18 127.0.0.1>nul 2>nul
echo 正在更改为自动获取IP地址...
netsh interface ip set address "%eth%" source=dhcp
echo 正在更改为自动获取DNS地址...
netsh interface ip set dns "%eth%" source=dhcp
echo --------------------------------------
echo 更改完毕,正在自动获取IP,等待20秒
echo --------------------------------------
%SLEEP%
echo ----------------------------------------
echo 检查当前IP,如无法获取请联系网管
echo ----------------------------------------
ipconfig /all
pause
close作者: sansa520 时间: 2007-9-20 10:17
好强啊...收藏了..谢谢..作者: S73G20 时间: 2007-9-20 14:36
学习..................作者: EnsonKing 时间: 2007-9-21 14:19
提供另一种思路 不错 学习下
不过 设置多个网络连接 然后启用/禁用也很方便的呀 也用不着每次改:lol作者: lovesee 时间: 2007-9-22 16:58
也是,方法是多种多样的.作者: wuyou 时间: 2007-9-23 16:36
忘记了 单网卡MS是不可以的;P作者: yuyu028 时间: 2007-9-24 11:03
哈哈 好东西啊 收下了 谢谢作者: jasonwang 时间: 2007-9-24 14:49
echo off
color 0C
:START
echo 请输入你的选择或者你现在所在的位置:
echo _______________________________________________
echo X X
echo X 庆安大厦----------------请按'1' X
echo X X
echo X 第三置业----------------请按'2' X
echo X X
echo X 蓟门里------------------请按'3' X
echo X X
echo X DHCP启动----------------请按'4' X
echo X X
echo X 启用禁用无线网络--------请按'5' X
echo X X
echo X 退出--------------------请按"0' X
echo X_______________________________________________X
set /p a=请输入选项:
goto %a%
:1
sc config dhcp start= disabled
netsh interface ip set address name="本地连接" source=static addr=192.168.0.200 mask=255.255.255.0
netsh interface ip set address name="本地连接" source=static gateway=192.168.0.1 gwmetric=1
netsh interface ip set dns name="本地连接" source=static addr=202.106.0.20 register=primary
netsh interface ip add dns "本地连接" 202.106.46.151
for /F "tokens=1,2 skip=2 delims= " %%i in ('arp -a') do (
arp -s %%i %%j)
ipconfig /all
goto exit
:2
sc config dhcp start= disabled
netsh interface ip set address name="本地连接" source=static addr=192.168.1.15 mask=255.255.255.0
netsh interface ip set address name="本地连接" source=static gateway=192.168.1.1 gwmetric=1
netsh interface ip set dns name="本地连接" source=static addr=219.141.136.10 register=primary
netsh interface ip add dns "本地连接" 219.150.32.132
for /F "tokens=1,2 skip=2 delims= " %%i in ('arp -a') do (
arp -s %%i %%j)
ipconfig /all
goto exit
:3
sc config dhcp start= disabled
netsh interface ip set address name="本地连接" source=static addr=192.168.100.200 mask=255.255.255.0
netsh interface ip set address name="本地连接" source=static gateway=192.168.100.1 gwmetric=1
netsh interface ip set dns name="本地连接" source=static addr=202.106.0.20 register=primary
netsh interface ip add dns "本地连接" 202.106.46.151
for /F "tokens=1,2 skip=2 delims= " %%i in ('arp -a') do (
arp -s %%i %%j)
ipconfig /all
goto exit
:4
sc config dhcp start= auto
netsh interface ip set address name="本地连接" source=dhcp
netsh interface ip set dns name="本地连接" source=dhcp
ipconfig /renew
ipconfig /all
goto exit
:5
echo _______________________________________________
echo X X
echo X 启用无线网络------------请按'A' X
echo X X
echo X 禁用无线网络------------请按'B' X
echo X_______________________________________________X
set /p a=请输入选项:
goto %a%
:A
echo 请手动打开机器前方的无线开关!!! 然后按任意键继续!
pause >NUL
netsh interface set interface name="无线网络连接" admin=ENABLED
netsh interface set interface name="本地连接" admin=DISABLED
sc config WZCSVC start= auto
sc start WZCSVC
sc config dhcp start= auto
sc start DHCP
echo 无线网络已经启用成功!!!
goto START