标题: [网络连接] 批处理如何间隔一定时间更换一次IP? [打印本页]
作者: Ansen.org 时间: 2012-12-12 15:30 标题: 批处理如何间隔一定时间更换一次IP?
需要间隔一定时间更换一次IP
我已经做出 当IP在一个网段时,如何更换IP,但是现在的情况是IP不在一个网段,还得更换相应的网关- :a
- @echo off
- cls
- color 3f
-
-
- @echo off
- set /a b=%random%%%5+1
- set MASK=255.255.255.0
- set GATEWAY=192.168.1.1
- set INTERFACE=本地连接
- set /a i+=1
- set /a b=b-1
- for /f "delims=" %%d in ('more +%b% iplist.txt') do ( set "var=%%d"
- goto endfor)
- :endfor
- echo ===============这是第%i%次更改==============
- echo.
- echo 正在将ip地址更改为%var%,请稍等。。。
- netsh interface ip set address name="%INTERFACE%" source=static addr=%
- var% mask=%MASK%
- netsh interface ip set address "%INTERFACE%" gateway=%GATEWAY%
- gwmetric=1
- echo ip地址设置完成
- echo.
- echo ==============15S后再次更改==============
- @echo off
- ping /n 3 127.0.0.1 > nul
- goto a
复制代码
对应的iplist.txt- 192.168.1.2
- 192.168.1.3
- 192.168.1.5
复制代码
假如iplist.txt为下面的内容(一个IP对应一个网关),上面有代码要怎么改 才能保证能够上网- 192.168.1.5 192.168.1.1
- 192.168.2.5 192.168.2.1
复制代码
PS:我是小白,上面的代码都还是东拉西凑来的
作者: Ansen.org 时间: 2012-12-13 11:40
额 没有人么?
作者: BAT-VBS 时间: 2012-12-13 23:24
- @echo off
- :loop
- set /a b=%random%%%5+1
- set MASK=255.255.255.0
- set INTERFACE=本地连接
- set /a i+=1
- set /a b-=1
- for /f "tokens=1-2" %%d in ('more +%b% iplist.txt') do (
- set "ip=%%d"
- set "GATEWAY=%%e"
- goto :endfor
- )
- :endfor
- echo ===============这是第%i%次更改==============
- echo.
- echo 正在将ip地址更改为%ip%,请稍等。。。
- netsh interface ip set address name="%INTERFACE%" source=static addr=%ip% mask=%MASK%
- netsh interface ip set address "%INTERFACE%" gateway=%GATEWAY% gwmetric=1
- echo ip地址设置完成
- echo.
- echo ==============15S后再次更改==============
- ping /n 3 127.0.0.1 > nul
- goto :loop
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |