[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 求助,一键修改IP的批处理,实现单网卡配置两个不同网段的IP

请教如何实现
在一个网卡上配置两个IP
假设两个IP分别为:
A: 192.168.0.1 255.255.255.0 192.168.0.10
B: 31.18.1.10 255.0.0.0
默认 DNS:61.177.7.1
请问在批处理里面如何实现啊?请高手指教啊

  1. @echo off&setlocal ENABLEDELAYEDEXPANSION
  2. set 网卡=本地连接
  3. set ip1=192.168.0.1
  4. set mask1=255.255.255.0
  5. set Gateway1=192.168.0.10
  6. set ip2=31.18.1.10
  7. set mask2=255.0.0.0
  8. set Gateway2=31.18.1.10
  9. set dns=61.177.7.1
  10. for /f "tokens=3" %%i in ('netsh interface ip show address %网卡%^|findstr /i /c:"IP 地址"') do if %%i==%ip1% (set i=2) else (set i=1)
  11. netsh interface ip set address %网卡% static !ip%i%! !mask%i%! !Gateway%i%! 1
  12. netsh interface ip set dns name="%网卡%" source=static addr=%dns%
复制代码

TOP

谢谢,我先试试

TOP

回复 2# 601997526


    您好,请问,不需要设置第二个网关的话怎么弄呢?直接删除那一行好像不行

TOP

直接删除,会提示 无效 gateway 参数 (1)。必须是有效 IPv4 地址。

TOP

回复 5# kyo31889033


    稍稍修改一下就可以了
  1. @echo off&setlocal ENABLEDELAYEDEXPANSION
  2. set 网卡=本地连接
  3. set ip1=192.168.0.1
  4. set mask1=255.255.255.0
  5. set Gateway1=192.168.0.10 1
  6. set ip2=31.18.1.10
  7. set mask2=255.0.0.0
  8. set Gateway2=none
  9. set dns=61.177.7.1
  10. for /f "tokens=3" %%i in ('netsh interface ip show address %网卡%^|findstr /i /c:"IP 地址"') do if %%i==%ip1% (set i=2) else (set i=1)
  11. netsh interface ip set address %网卡% static !ip%i%! !mask%i%! gateway=!gateway%i%!
  12. netsh interface ip set dns name="%网卡%" source=static addr=%dns%
复制代码

TOP

谢谢,非常感谢

TOP

mark之~~~~~~~~~
收入分四种:狂劳不得,多劳少得,少劳多得,不劳狂得。还好,我是第二种!

TOP

返回列表