当前位置:编程学习 > 网站相关 >>

自动切换ip方案批处理文件

 

平时上班下班切换ip真累,于是做了个一劳永逸的工具,share it:

 

 

::::::13:53 2011/10/26 

:: 建议:将程序添加到系统启动项,可自动根据开机时间换ip 

:: 程序说明:在工作日上班时间运行本程序将启用办公室ip,否则启用宿舍ip。运行前请在“程序参数配置”里面进行相差配置  

:: 使用环境:window 7 

:: 异常处理:如果执行配置时提示"指定了无效的接口",则请您开启系统的"Remote Registry Service"服务。 

@echo off 

::---------------------- 程序参数配置------------------------- 

:: 设置网卡名称eth 

set eth="本地连接" 

:: 设置上班时间 小时,8 为上午8点钟,暂不支持分 

set beginWork=8 

:: 设置下班时间 小时,17为下午5点钟,暂不支持分 

set endWork=17 

:: 设置自动模式 

set autoMode=自动模式 

:: 是否跳过人工模式,自动配置后直接退出程式 

set skipManual=true 

:: 设置办公室ip,子网掩码,网关,首选dns,备用dns 

set officeIp=10.1.6.27 

set officeMask=255.255.255.128 

set officeGate=10.1.6.126 

set officeDns1=192.168.30.1 

set officeDns2=211.138.151.161 

:: 设置宿舍ip,子网掩码,网关,首选dns,备用dns 

set dormIp=192.168.7.199 

set dormMask=255.255.255.0 

set dormGate=192.168.7.254 

set dormDns1=192.168.30.1 

set dormDns2=218.85.157.99 

::------------------------------------------------------------ 

 

:: 周六周日 进入【宿舍】模式 

set week=%date:~11% 

if %week%==星期六goto dorm 

if %week%==周六goto dorm 

if %week%==星期日goto dorm 

if %week%==周日goto dorm 

 

:: 工作日 上班时间 进入【办公室】模式 

set hh=%time:~0,2%&set mm=%time:~3,2%&set ss=%time:~6,5% 

if "%time:~3,1%"=="0" set /a mm="%time:~4,1%" 

if "%time:~0,1%"=="0" set /a mm="%time:~1,1%" 

if %hh% gtr %beginWork%  if %hh% lss %endWork% goto office 

:: 工作日 非上班时间 进入【宿舍】模式 

goto dorm 

 

:auto 

  echo 正在启用【自动获取】方案... 

  netsh inte易做图ce IP set address name=本地连接source=dhcp 

  netsh inte易做图ce ip set dns  name=本地连接source=dhcp  

  goto end 

   

:dorm 

  echo 正在启用【宿舍】方案... 

  netsh inte易做图ce ip set address name="本地连接" source=static addr=%dormIp% mask=%dormMask% gateway=%dormGate% 

  netsh inte易做图ce ip set dns "本地连接" source=static addr=%dormDns1% register=PRIMARY 

  netsh inte易做图ce ip add dns "本地连接" addr=%dormDns2% index=2  

  goto end 

 

:office 

  echo 正在启用【办公室】方案... 

  netsh inte易做图ce ip set address name="本地连接" source=static addr=%officeIp% mask=%officeMask% gateway=%officeGate% 

  netsh inte易做图ce ip set dns "本地连接" source=static addr=%officeDns1% register=PRIMARY 

  netsh inte易做图ce ip add dns "本地连接" addr=%officeDns2% index=2 

  goto end 

 

:manual 

  set autoMode=人工模式 

  echo. ------------------------------------------------------------- 

  echo.      1.启用【自动获取】方案 

  echo.      2.启用【宿舍】方案 

  echo.      3.启用【办公室】方案 

  echo.      4.退出 

  echo. ------------------------------------------------------------- 

  set /p mode=请输入: 

  if %mode% == 1 goto auto 

  if %mode% == 2 goto dorm 

  if %mode% == 3 goto office 

  if %mode% == 4 exit.     

 

:select 

  echo. ------------------------------------------------------------- 

  echo           1:进入【人工模式】 

  echo      其它键:退出。 

  echo. ------------------------------------------------------------- 

  set /p key=请输入: 

  if %key% == 1 goto manual 

   

  exit. 

   

:end 

echo 【%autoMode%】切换成功,当前ip信息: 

netsh inte易做图ce ip dump 

if %skipManual%==true exit. 

if %autoMode%==自动模式goto select 

if %autoMode%==人工模式pause. 

 

 

将这个代码保存为  "自动切换ip方案.cmd"即可运行。

作者 xiaolong8

补充:综合编程 , 其他综合 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,