找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 292|回复: 3

不带dhcp的boot的 快捷固定ip【批处理命令-设置IP 子网掩码 网关 dns】

[复制链接]
本帖最后由 xiaomi1991 于 2024-1-15 17:09 编辑

作为一个混迹恩山论坛七年多的老油条,见过好多种boot引导。
其中也有好多种路由器的boot都不带dhcp功能。不带也无伤大雅,论坛大神能找到刷机方法,还把boot分享给我们 我们已经很感激了。
不带dhcp的boot刷机就需要手动固定电脑ip和boot在同一网段,需要去网络设置那儿修改网络接口的ip 子网掩码 网关等 相对来说步骤稍微多了一点
因此经过一晚上的百度加上自己浅显的理解制作了一个批处理命令,用来快捷设置ip、子网掩码、网关和dns,供大家参考和交流。
我也是菜鸡,不喜勿喷,谢谢!!!

使用方法:
新建文本文档,把文件名改改xxx.bat。选中编辑文件,把如下代码区域内容复制到文件中,文件--另存为--编码改为:ANSI--选择要保存的路径--保存。如果不把编码方式改为ANSI,批处理中的汉字会显示乱码,影响观感。
此文件已在win10 教育版测试 其他系统版本自行测试。也可以直接下载附件中的文件,直接使用即可。

批处理内容如下:

  1. ::设置关闭回显和变量延迟
  2. @ECHO off & setlocal EnableDelayedExpansion

  3. ::设置标题文字
  4. title 《Internet协议版本 4》设置批处理
  5. ::设置字体浅绿色
  6. color 0A

  7. echo ================================================================================
  8. echo 欢迎使用《Internet协议版本 4》设置批处理命令
  9. echo 制作者:xiaomi
  10. echo ================================================================================

  11. ::提升当前批处理命令为管理员权限
  12. NET FILE 1>NUL 2>NUL
  13. if '%errorlevel%' == '0' (
  14.     echo 已提升该批处理命令为管理员权限
  15. ) else (
  16.     echo Requesting administrator rights...
  17.     powershell Start-Process -FilePath "%0" -Verb RunAs
  18.     exit /b
  19. )

  20. ::默认值
  21. :setDefault
  22. ::默认网络接口名称
  23. set defaultInterfaceName=本地网络
  24. ::IP的默认分配方式 1:DHCP 2:static
  25. set sourceIndex=1
  26. ::默认网关
  27. set ipGateway=192.168.1.1
  28. ::默认子网掩码
  29. set ipMask=255.255.255.0
  30. ::IP序号。ip是根据网关的前3位+这个ipNo组成,当前默认地址为192.168.1.100
  31. set ipNo=100
  32. ::DNS的默认分配方式 1:DHCP 2:static 3:跳过设置
  33. set DNSIndex=1
  34. ::默认首选DNS
  35. set DNS1=114.114.114.114
  36. ::默认备用DNS
  37. set DNS2=114.114.115.115

  38. @echo.
  39. ::选择要修改网络配置的网络接口
  40. :setInterfaceName
  41. set defaultInterfaceIndex=65535
  42. set tempInterfaceName=''
  43. set index=0
  44. for /f "tokens=3*" %%a in ('netsh interface show interface ^|more +2') do (
  45.         @echo !index!: %%b
  46.         set interfaceList[!index!]=%%b

  47.         set tempInterfaceName=%%b
  48.         if !tempInterfaceName! == !defaultInterfaceName! (
  49.                 set defaultInterfaceIndex=!index!
  50.         )

  51.         set /A index+=1
  52. )

  53. if !defaultInterfaceIndex! == 65535 (
  54.         set /A interfaceIndex=!index!-1
  55. ) else (
  56.         set interfaceIndex=!defaultInterfaceIndex!
  57. )

  58. set /p interfaceIndex=请输入网络接口编号(默认值:!interfaceIndex!):
  59. if !interfaceIndex! geq !index! (
  60.         @echo.
  61.         echo 请输入网络接口编号有误,请重新输入!
  62.         goto setInterfaceName
  63. )
  64. set interfaceName=!interfaceList[%interfaceIndex%]!
  65. echo 你的选择是:!interfaceName!

  66. @echo.
  67. ::选择IP分配方式:DHCP或static
  68. :setSourceName
  69. echo IP地址获取方式:1:DHCP 2:static
  70. set /p sourceIndex=请输入获取方式(默认值:!sourceIndex!):
  71. if !sourceIndex! == 1 (
  72.         set sourceName=dhcp
  73.         echo 你的选择是:DHCP
  74.         cmd /c netsh interface ip set address name="!interfaceName!" source=!sourceName! 1>nul 2>nul

  75.         goto setDNSSource
  76. ) else if !sourceIndex! == 2 (
  77.         set sourceName=static
  78.         echo 你的选择是:static
  79. ) else (
  80.         @echo.
  81.         echo 输入IP获取方式有误,请重新输入!
  82.         goto setSourceName
  83. )

  84. ::static模式下IP的参数值
  85. set /p ipGateway=请输入网关(默认值:!ipGateway!):
  86. echo 你的选择是:!ipGateway!
  87. set /p ipMask=请输入子网掩码(默认值:!ipMask!):
  88. echo 你的选择是:!ipMask!

  89. for /f "tokens=1,2,3,4 delims=." %%a in ("!ipGateway!") do (
  90.         set ipAddress= %%a.%%b.%%c.!ipNo!
  91. )
  92. set /p ipAddress=请输入IP地址(默认值:!ipAddress!):
  93. echo 你的选择是:!ipAddress!
  94. cmd /c netsh interface ip set address name="!interfaceName!" source=!sourceName! address=!ipAddress! mask=!ipMask! gateway=!ipGateway! 1>nul 2>nul

  95. @echo.
  96. ::选择DNS的分配模式:DHCP或static
  97. :setDNSSource
  98. echo DNS地址获取方式:1:DHCP 2:static 3:跳过
  99. set /p DNSIndex=请输入获取方式(默认值:!DNSIndex!):
  100. ::echo !DNSIndex!
  101. ::pause
  102. if !DNSIndex! == 1 (
  103.         set DNSSourceName=dhcp
  104.         echo 你的选择是:!DNSSourceName!        
  105.         cmd /c netsh interface ip set dnsservers name="!interfaceName!" source=dhcp 1>nul 2>nul

  106.         goto setExit
  107. ) else if !DNSIndex! == 2 (
  108.         set DNSSourceName=static
  109.         echo 你的选择是:!DNSSourceName!

  110.         goto setDNS
  111. ) else if !DNSIndex! == 3 (
  112.         echo 跳过设置DNS

  113.         goto setExit
  114. ) else (
  115.         @echo.
  116.         echo 输入IP获取方式有误,请重新输入!
  117.         goto setDNSSource
  118. )

  119. :setDNS
  120. ::static模式下DNS的参数值
  121. set /p DNS1=请输入DNS1(默认值:!DNS1!):
  122. echo 你的选择是:!DNS1!
  123. cmd /c netsh interface ip set dnsservers name="!interfaceName!" source=static address=!DNS1! register=primary validate=no 1>nul 2>nul
  124. set /p DNS2=请输入DNS2(默认值:!DNS2!):
  125. echo 你的选择是:!DNS2!
  126. cmd /c netsh interface ip add dnsservers name="!interfaceName!" address=!DNS2! index=2 validate=no 1>nul 2>nul

  127. :setExit
  128. @echo.

  129. echo 查询当前配置:
  130. @cmd /c netsh interface ip show config name="!interfaceName!"

  131. pause

复制代码





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
谢谢分享!!!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
你真是一个小机灵鬼,为你点赞
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

感谢分享.............
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

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

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-27 20:07

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

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