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

[网络连接] 批处理怎样定义IP后自动定义网关?

准备写一个批处理:

用户只要输入IP,然后会自动修改IP和网关的IP,如输入IP为192。168。1。88,则网关的IP为192。168。1。1

如输入IP为192。168。0。88,则网关的IP为192。168。0。1

而网关的IP无需用户输入。批处理中如何根据定义IP后自动定义网关????????

代码:
#  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #   #  #  #  #  #  #  #  #  #  #
@echo off
echo.
echo.
echo    设置本机IP地址
echo.
echo.
set /p Addr=请输入您的IP地址:
set /p Gateway

echo.
echo    正在修改设置,请稍候……
::修改IP地址
netsh interface Ip set address name="本地连接" source=static Gwmetric=0 Gateway=%Gateway% Addr=%Addr% mask=255.255.255.0   >nul
::修改DNS
Netsh interface IP Set dns "本地连接" static 202.102.10.220 primary   >nul
echo.   完成
#  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #  #   #  #  #  #  #  #  #  #  #  #
set /p Gateway   如何根据IP自动定义????(不用输入)

回复 1楼 的帖子

简单点,就是截取IP地址192.168.1或192.168.0,然后给后面加个1,不就行了。
复杂点,就是要通过IP和子网掩码位数计算。

TOP

原帖由 Undead 于 2009-12-24 11:20 发表
简单点,就是截取IP地址192.168.1或192.168.0,然后给后面加个1,不就行了。


如何截取呢????

TOP

for /f  "delims=." %%a in ("192.168.0.25")do set gateway=%%a.%%b.%%c.1

TOP

  1. @echo off
  2. echo.
  3. echo.
  4. echo    设置本机IP地址
  5. echo.
  6. echo.
  7. set /p Addr=请输入您的IP地址:
  8. for /f  "tokens=1-3 delims=." %%a in ("%Addr%")do set Gateway=%%a.%%b.%%c.1
  9. echo.
  10. echo    正在修改设置,请稍候……
  11. ::修改IP地址
  12. netsh interface Ip set address name="本地连接" source=static Gwmetric=0 Gateway=%Gateway% Addr=%Addr% mask=255.255.255.0   >nul
  13. ::修改DNS
  14. Netsh interface IP Set dns "本地连接" static 202.102.10.220 primary   >nul
  15. echo.   完成
复制代码

TOP

原帖由 Undead 于 2009-12-24 12:45 发表
for /f  "tokens=1-3 delims=." %%a in ("%Addr%")do set Gateway=%%a.%%b.%%c.1


谢谢!!!

TOP

返回列表