无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5948|回复: 24
打印 上一主题 下一主题

转载:用批处理来快速切换IP地址

[复制链接]
跳转到指定楼层
1#
发表于 2007-9-20 09:05:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【原创】用批处理来快速切换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
2#
发表于 2007-9-20 10:17:15 | 只看该作者
好强啊...收藏了..谢谢..
回复

使用道具 举报

3#
发表于 2007-9-20 14:36:24 | 只看该作者
学习..................
回复

使用道具 举报

4#
发表于 2007-9-21 14:19:58 | 只看该作者
提供另一种思路 不错 学习下
不过 设置多个网络连接 然后启用/禁用也很方便的呀 也用不着每次改:lol
回复

使用道具 举报

5#
发表于 2007-9-22 16:58:17 | 只看该作者
也是,方法是多种多样的.
回复

使用道具 举报

6#
 楼主| 发表于 2007-9-23 16:36:05 | 只看该作者
原帖由 EnsonKing 于 2007-9-21 02:19 PM 发表
提供另一种思路 不错 学习下
不过 设置多个网络连接 然后启用/禁用也很方便的呀 也用不着每次改:lol

我试了一下,本地连接好象只让添加一个,第二个无法添加上,把原有的改名也不行,不知你是如何添加上的?
回复

使用道具 举报

7#
发表于 2007-9-23 17:24:54 | 只看该作者
直接给网卡加两个IP就OK了呀,不用这么麻烦吧!
回复

使用道具 举报

8#
发表于 2007-9-23 22:36:05 | 只看该作者
原帖由 wwwfox 于 2007-9-23 04:36 PM 发表
我试了一下,本地连接好象只让添加一个,第二个无法添加上,把原有的改名也不行,不知你是如何添加上的?

忘记了 单网卡MS是不可以的;P
回复

使用道具 举报

9#
发表于 2007-9-24 11:03:27 | 只看该作者
哈哈  好东西啊  收下了  谢谢
回复

使用道具 举报

10#
发表于 2007-9-24 14:49:41 | 只看该作者
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

:B
echo 请手动关闭机器前方的无线开关!!! 然后按任意键继续!
pause >NUL
netsh interface set interface name="无线网络连接" admin=DISABLED
netsh interface set interface name="本地连接" admin=ENABLED
sc config WZCSVC start= disabled
sc stop WZCSVC
sc config dhcp start= disabled
sc stop dhcp
echo 无线网络已经禁用成功!!!
goto START

:exit
echo "安装完成"
pause >NUL

放上目前自己用的设置IP的批处理吧。
回复

使用道具 举报

11#
发表于 2007-9-25 09:00:59 | 只看该作者
很方便....
回复

使用道具 举报

12#
发表于 2007-9-25 10:47:40 | 只看该作者
好东西收藏了,以后有机会用得着

原帖由 zjg2003 于 2007-9-23 17:24 发表
直接给网卡加两个IP就OK了呀,不用这么麻烦吧!

这个怎么加呀 ??
回复

使用道具 举报

13#
发表于 2007-9-25 23:45:20 | 只看该作者
:) :) :) :)
回复

使用道具 举报

14#
发表于 2007-9-25 23:46:01 | 只看该作者
我来看看啦,谢谢楼主分享
回复

使用道具 举报

15#
发表于 2007-9-25 23:47:56 | 只看该作者
:victory: :victory: :victory: :victory:
回复

使用道具 举报

16#
发表于 2007-9-26 01:41:01 | 只看该作者
:victory: :D 下载后一用,这么好的东东,非常适用,就自己也做了这批处理。
回复

使用道具 举报

17#
发表于 2007-9-26 12:03:21 | 只看该作者
好东西。下来用一用,看看怎么样,谢谢分享。
回复

使用道具 举报

18#
发表于 2007-9-26 17:26:21 | 只看该作者
原帖由 濁酒半壺 于 2007-9-25 10:47 AM 发表
好东西收藏了,以后有机会用得着


这个怎么加呀 ??




就是在改IP地址和DNS的地方,那个确定上面不是有个“高级”按钮吗,就在那个里面,点开来你就知道了,要是还不知道的话那你就太xun了!!
回复

使用道具 举报

19#
发表于 2007-9-26 20:15:48 | 只看该作者
一个比一个强哈哈!...
回复

使用道具 举报

20#
发表于 2007-9-26 22:53:44 | 只看该作者
的确是好东西,明天就去实验,早就想搞这东西了
回复

使用道具 举报

21#
发表于 2007-10-7 20:36:24 | 只看该作者
好东西,收下了!!!
回复

使用道具 举报

22#
发表于 2008-10-23 07:56:28 | 只看该作者
太实用了,谢谢分享!!
回复

使用道具 举报

23#
发表于 2008-10-23 16:39:57 | 只看该作者

你这个批处理能在Vista下运行吗?

我是用这个"NetSH"编的,在WinXP下就很好用,但用在Vista就不行. 你这个批处理能在Vista下运行吗?
先用第一条命令得到GZG_SP.txt, 等等, 以后只要运行第二条命令就行了

netsh -c interface dump >C:\Windows\OfficeIP\GZG_IP.txt

netsh -f C:\Windows\OfficeIP\GZG_IP.txt
回复

使用道具 举报

24#
发表于 2008-10-23 21:44:48 | 只看该作者
终于找到了——一直想要的贴
回复

使用道具 举报

25#
发表于 2010-8-26 21:06:23 | 只看该作者
收藏啦  方便的好东西
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2026-3-4 01:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表