无忧启动论坛

标题: 永久绑定网关操作 [打印本页]

作者: 窄口牛    时间: 2020-1-19 09:24
标题: 永久绑定网关操作
本帖最后由 窄口牛 于 2020-1-23 10:02 编辑

一些特定的网络环境需要这种操作
把这个到已经正常的同局域网终端运行,它会生成一个文件夹,里面的批处理到别的同局域网机器就可以使用了
  1. @echo off
  2. Setlocal enabledelayedexpansion
  3. reg query HKU\S-1-5-20>nul || echo;CreateObject^("Shell.Application"^).ShellExecute "%~f0", "%*", "", "runas", 1 > "%temp%\getadmin.vbs" && cscript //b "%temp%\getadmin.vbs" && exit /b & del "%temp%\getadmin.vbs" /f /q>nul 2>nul
  4. for /f "delims=" %%i in ('wmic nic where "PhysicalAdapter='TRUE'" get InterfaceIndex /value') do (
  5. for /f "delims== tokens=2" %%a in ("%%i") do (
  6. for /f "delims=" %%l in ('wmic nicconfig where "InterfaceIndex='%%a'" get DefaultIPGateway /value') do (
  7. for /f "tokens=2 delims==" %%x in ("%%l") do (
  8. set "G=%%~x"
  9. ))))
  10. set Gate=%G:~2,-2%
  11. FOR /F "tokens=1,2 delims= " %%a IN ('arp -a^|find "%Gate%"') DO (
  12.         set "GateMac=%%~b"
  13. )
  14. md %Gate%专用
  15. echo @echo off>>%Gate%专用\%Gate%专用绑定mac.bat
  16. echo Setlocal enabledelayedexpansion>>%Gate%专用\%Gate%专用绑定mac.bat
  17. echo reg query HKU\S-1-5-20^>nul ^|^| echo;CreateObject^^("Shell.Application"^^).ShellExecute "%%~f0", "%%*", "", "runas", 1 ^> "%%temp%%\getadmin.vbs" ^&^& cscript //b "%%temp%%\getadmin.vbs" ^&^& exit /b ^& del "%%temp%%\getadmin.vbs" /f /q^>nul 2^>nul>>%Gate%专用\%Gate%专用绑定mac.bat
  18. echo for /f "delims=" %%%%i in ('wmic nic where "PhysicalAdapter='TRUE'" get InterfaceIndex /value') do (>>%Gate%专用\%Gate%专用绑定mac.bat
  19. echo for /f "delims== tokens=2" %%%%a in ("%%%%i") do (>>%Gate%专用\%Gate%专用绑定mac.bat
  20. echo for /f "delims=" %%%%l in ('wmic nicconfig where "InterfaceIndex='%%%%a'" get DefaultIPGateway /value') do (>>%Gate%专用\%Gate%专用绑定mac.bat
  21. echo for /f "tokens=2 delims==" %%%%x in ("%%%%l") do (>>%Gate%专用\%Gate%专用绑定mac.bat
  22. echo set Index=%%%%a>>%Gate%专用\%Gate%专用绑定mac.bat
  23. echo ))))>>%Gate%专用\%Gate%专用绑定mac.bat
  24. echo netsh -c "i i" delete neighbors %%Index%%^>nul>>%Gate%专用\%Gate%专用绑定mac.bat
  25. echo netsh -c "i i" add neighbors %%Index%% %Gate% %GateMac%^>nul>>%Gate%专用\%Gate%专用绑定mac.bat
复制代码


打包下载 永久绑定网关MAC生成.rar (738 Bytes, 下载次数: 36)
作者: 窄口牛    时间: 2020-1-19 09:26
wmic确实是不好用,明明语法没问题,就是报错,放外面生成文本正常,放进for里面就会出岔子。
作者: nttwqz    时间: 2020-1-19 11:30
窄口牛 发表于 2020-1-19 09:26
wmic确实是不好用,明明语法没问题,就是报错,放外面生成文本正常,放进for里面就会出岔子。

因为逗号需要转义
作者: 窄口牛    时间: 2020-1-19 15:11
刚刚找到原因了,是因为结果里面有空行和空格,需要先退掉它们。回头更新下这个。
作者: 9zhmke    时间: 2020-1-19 16:27
换VBS吧,批处理对字符串处理需要注意的地方太多了。
作者: 窄口牛    时间: 2020-1-19 17:31
玩不了,这种有明文帮助的马马虎虎能拼凑一下。
作者: nttwqz    时间: 2020-1-19 21:42
小白想问一句,永久绑定网关是什么意思?

作者: 窄口牛    时间: 2020-1-20 02:25
个别的网络环境要求必须绑定,否则会出现掉网现象。
作者: 窄口牛    时间: 2020-1-21 07:02
这个有问题,应该是排除所有的虚拟网卡,然后获取有网关地址的网卡,获取它的网关mac和网卡物理编号。
作者: plusv    时间: 2020-1-23 03:50
本帖最后由 plusv 于 2020-1-23 03:55 编辑
窄口牛 发表于 2020-1-22 23:04
前半部分顺利搞定
后面通过网关再反推网卡序号该怎么弄?
或者取网关地址的同时获取到这时这个%%a是几?

>或者取网关地址的同时获取到这时这个%%a是几?

若不排斥 EXE 可试
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=418506


[attach]410214[/attach]

NicInfo.png (14.7 KB, 下载次数: 65)

NicInfo.png

作者: plusv    时间: 2020-1-23 04:16
窄口牛 发表于 2020-1-22 23:04
前半部分顺利搞定
后面通过网关再反推网卡序号该怎么弄?
或者取网关地址的同时获取到这时这个%%a是几?

>后面通过网关再反推网卡序号该怎么弄?

  1. @echo off
  2. setlocal EnableExtensions
  3. setlocal EnableDelayedExpansion
  4. echo.
  5. for /F "tokens=3-8 delims==: " %%i in ('NicInfo/DelFake^|Find/i "Gateway"') do (
  6. set MyNic=%%i:%%j %%k:%%l %%m:%%n
  7. set MyGateWay=%%n
  8. echo Local NIC   = !MyNic!
  9. for /F "tokens=2 delims= " %%j in ('Ping -n 1 !MyGateWay!^|ARP -a^|Find/i "!MyGateWay!"') do (
  10. echo Gateway MAC = %%j
  11. )
  12. )
复制代码


作者: 窄口牛    时间: 2020-1-23 07:46
谢谢,鼓捣和使用是两个方向,可以用你的,那个也尽量鼓捣出来。
作者: 2011npwjm    时间: 2020-1-23 08:31
谢谢楼主的分享
作者: 窄口牛    时间: 2020-1-23 10:02
成品已更
作者: huang1987    时间: 2023-11-12 15:32
谢谢分享




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3