中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-30 15:11
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]这个ip绑定怎么实现不了... 查看 830 回复 7
楼 主 [求助]这个ip绑定怎么实现不了... 发表于 2007-06-27 20:23 ·  中国 海南 澄迈县 电信
新手上路
积分 17
发帖 9
注册 2007-05-22 23:06
19年会员
UID 89014
性别 男
状态 离线
arp -d
FOR /f "tokens=14 delims=: " %%i in ('ipconfig /all ^|find /i "IP Address"') do Set ip=%%i
FOR /f "tokens=11 delims=: " %%i in ('ipconfig /all ^|find /i "Physical Address"') do Set mac=%%i
echo arp -s %IP% %MAC%>c:\ipmac.bat
FOR /f "tokens=12 delims=: " %%i in ('ipconfig /all ^|find /i "Default Gateway"') do Set GateIP=%%i
FOR /f "skip=3 tokens=2" %%b in ('arp -a %GateIP%') do Set GateMAC=%%b
echo arp -s %Gateip% %GateMAC%>>c:\ipmac.bat

[ Last edited by ulboy on 2007-6-27 at 11:56 PM ]
2 发表于 2007-06-27 22:02 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
19年会员
UID 75048
性别 男
状态 离线
是否代码不完整?

具有绑定功能的arp -s那里前面有echo,后面有重定向,又怎能绑定呢?

FOR /f "tokens=14 delims=: " %%i in ('ipconfig /all ^|find /i "IP Address"') do Set ip=%%i
FOR /f "tokens=11 delims=: " %%i in ('ipconfig /all ^|find /i "Physical Address"') do Set mac=%%i
arp -s %IP% %MAC%
FOR /f "tokens=12 delims=: " %%i in ('ipconfig /all ^|find /i "Default Gateway"') do Set GateIP=%%i
FOR /f "skip=3 tokens=2" %%b in ('arp -a %GateIP%') do Set GateMAC=%%b
arp -s %Gateip% %GateMAC
正在潜水修练的批处理小白
3 发表于 2007-06-27 23:59 ·  中国 海南 澄迈县 电信
新手上路
积分 17
发帖 9
注册 2007-05-22 23:06
19年会员
UID 89014
性别 男
状态 离线
我是想把本地与网关的绑定写入到一个文件里头.

为什么网关的mac 读不出来...语句有问题吗.
4 发表于 2007-06-28 00:39 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
19年会员
UID 75048
性别 男
状态 离线
先ping一下网关的IP再用arp -a试试
正在潜水修练的批处理小白
5 发表于 2007-06-28 01:35 ·  中国 海南 澄迈县 电信
新手上路
积分 17
发帖 9
注册 2007-05-22 23:06
19年会员
UID 89014
性别 男
状态 离线
ping 没有问题.能得出mac 在批处理起不了作用..
这个批处理你那边也可以试一下...真搞不懂..
6 发表于 2007-06-28 16:45 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
可能是arp -d命令的问题
试试我这个

@echo off
FOR /f "tokens=14 delims=: " %%i in ('ipconfig /all ^|find /i "IP Address"') do Set ip=%%i
FOR /f "tokens=11 delims=: " %%i in ('ipconfig /all ^|find /i "Physical Address"') do Set mac=%%i
echo arp -s %IP% %MAC%>c:\ipmac.bat
FOR /f "tokens=12 delims=: " %%i in ('ipconfig /all ^|find /i "Default Gateway"') do Set GateIP=%%i
FOR /f "skip=3 tokens=2" %%b in ('arp -a %GateIP%') do (
Set GateMAC=%%b
goto gate
)

:gate
echo arp -s %Gateip% %GateMAC%>>c:\ipmac.bat
7 发表于 2007-06-28 17:30 ·  中国 海南 澄迈县 电信
新手上路
积分 17
发帖 9
注册 2007-05-22 23:06
19年会员
UID 89014
性别 男
状态 离线
6楼兄弟 太感谢你咯.


能指出错误吗.....
图个明白..
8 发表于 2007-06-28 17:37 ·  中国 海南 澄迈县 电信
新手上路
积分 17
发帖 9
注册 2007-05-22 23:06
19年会员
UID 89014
性别 男
状态 离线
我知道错在哪里咯....

语句是没有错.只是开头加错了..唉.
论坛跳转: