参考的帖子:
- http://luyou.xunlei.com/thread-14555-1-1.html?_t=1488872182
- http://koolshare.cn/thread-6025-2-1.html
第二个帖子基本上说的差不多了,但是不够详实,在这里归纳一下我自己的做法
为什么需要ARP绑定
当年华硕的旗舰家用路由,其实如果不要求超高的内网速度,可能用不上这个级别的路由。
然而就是这级别货,官方固件居然没有ARP绑定设置,梅林固件也没有,连几十块TP都有的东西。。。
为什么要ARP绑定呢,家里有一台群辉DS216j,有时候可能需要从外部用因特网进行WOL开机,故需要做
- DDNS
- DHCP静态分配给NAS
- 端口转发
- 绑定ARP
ARP绑定和静态DHCP分IP是两回事。
看了不少帖子有不少人把ARP和静态DHCP混为一谈,不管技术上有什么区别,我自己多次试验证明仅仅分配静态IP地址就的不行。。。
前三点就不说了,官方固件都可以胜任,现在的固件也支持用花生壳DDNS,挺方便的。
具体步骤
用官方固件还是不行,并不清楚如何给官方固件添加启动脚本,所以我用的是梅林。
用telnet命令登入路由器,之后输入
arp -s 192.168.xxx.xxx AA:AA:AA:AA:AA:AA
这样其实就完成了绑定,但是如果路由重启需要再次输入绑定。家里如果停电一次…NAS关机却又没法远程开机就醉了,所以重点是每次路由一开机就让他跑一次上面这行代码。
请先确认
- 固件为梅林
- 系统管理>系统设置里,
Enable JFFS custom scripts and configs
为开启 - 其他中的
启动 Telnet
开启
似乎旧一些的梅林固件会有一个Enable JFFS partition
选项,新的已经没有了,默认就是开启了
第一个选项Format JFFS partition at next boot
可不要傻乎乎的勾上了。。下次开机重置JFFS文件夹,那就白做了。。(我第一次就犯了这种错误
打开CMD(windows7可能需要开启telnet功能,在程序和功能里。苹果用终端一样的)
telnet 192.168.X.X
之后敲路由的用户和密码就可以连上开始下一个步骤了
cd /jffs/scripts/
vi services-start
跳转目录及打开VI文本编辑器。
VI不会用可以找WinSCP这种图形化的软件,也是一样找到这个目录,新建一个名为services-start
不用带后缀的文本文件。
进入VI编辑后先按一下insert
键才能进入输入模式,苹果机的终端下是按Fn+enter
#!/bin/sh
arp -s 192.168.X.X AA:AA:AA:AA:AA:AA
exit 0
这样就写好了脚本内容,IP和MAC物理地址不要出错,之后按ESC
退出输入模式,再按一下shift+;
,输入wq
回车
文本就保存并退出编辑器了。
chmod a+rx /jffs/scripts/*
给脚本文件赋权限,防止万一还是做了吧。
到这为止就万事OK了,可以输入cat /jffs/scripts/services-start
来查看脚本的内容。
现在重启路由,脚本就会载入。
验证ARP绑定无误
也非常简单,上面步骤做完以后,重启一下路由器,还是登入telnet,直接输入
arp
返回的结果如果有PERM
则是ARP绑定上了。你应该可以通过域名从互联网开机了。
很详细的教程,非常感谢!
方法可用,已验证。黑裙可以用APP远程唤醒
nice
真棒!解决问题的好文!唉,现在都快2019年了,梅林依然没有相应功能
太棒了,那个之前卡在vi编辑器半天,一直不知道怎么退出来
太强了.一步到位
感谢!
找了好久終於成功了 感謝你朋友
请问博主,AX86U用的官改固件,ARP绑定PERM之后一段时间会自动清理掉又变成非静态的是什么原因?现在只能用Crontab每分钟去配静态ARP。勉强能用,但重启一次就又麻烦了。
抱歉呀没再研究这个了,可能给不出有用的建议