海天无影Blog

小米路由器成功外网WOL唤醒

/ 42892阅 / 33评 / 24

局域网内操作WOL唤醒很简单,通过软件就可以直接操作,windows、mac、iphone、Android都有对应的软件,很简单的设置就可以完成。

而广域网唤醒其实也不难,总的来说三个步骤,端口映射、MAC绑定,ARP绑定。很多人设置WOL唤醒不成功就是因为没有操作ARP绑定。

但是小米路由器开启WOL唤醒还是有点麻烦的,之前可以安装WOL唤醒插件,但现在插件已经失效。大多数路由器上都可以直接操作的ARP绑定,在小米路由器上却不能通过WEB界面操作,需要开启ssh操作,所以这里就讲一下小米路由器外网使用WOL唤醒的功能吧。

端口映射

这是第一步,也是最重要的一部,简单来说就是将外网的唤醒信号,能够准确找到待唤醒电脑,所以首先要有外网IP地址(电信宽带获取公网IP),然后开启DDNS功能,最后在路由器操作端口转发或者DMZ。这里可以将WOL软件的端口(一般为4505、9)设置转发到待唤醒电脑,或直接将待唤醒电脑设置为DMZ主机。

如果没有外网,做不了端口转发,那只能依靠硬件来完成唤醒了,比如说小米智能插座,然后设置电脑通电后自动开机;或者使用花生壳开机棒。

小米路由器设置端口转发

MAC绑定

第二步需要分配固定IP给对应的MAC电脑,这一步操作在小米路由器的DHCP静态IP分配页面进行操作的。将对应IP和待唤醒电脑的MAC码进行绑定。

小米路由器设置DHCP静态IP分配

ARP绑定

这一步比较麻烦,因为上面说了小米路由器不能直接像上面两步一样在WEB界面设置,需要开启ssh进行设置。但其他路由器如果可以设置,那么直接设置ARP绑定就可以了。

1、打开网址http://www1.miwifi.com/miwifi_open.html,点击“开启SSH工具”,登录路由器的绑定账号,会直接显示对应的路由器以及需要下载的工具包。然后按照步骤使用U盘进行操作。然后使用ssh工具和下载工具包时给出的root密码登录。

小米路由器开启ssh

2、登录ssh后,开始绑定ARP。

打开并编辑文件 /etc/ethers ,这里强调一下,这是一个文件,而且是一个本身不存的文件,所以直接 vi /etc/ethers 就可以编辑了;进入编辑后,以待唤醒电脑的 IP+MAC 的格式,输入并保存

192.168.31.aa XX:XX:XX:XX:XX:XX

打开并编辑文件 /etc/rc.d/rc.local ,输入以下代码并保存

arp -f 

最后,重启路由器,小米路由器的外网WOL唤醒就可以正常操作了。

PS:如果你的电脑用作服务器安装的是liunx系统,还不知道或者没开启WOL唤醒,可以参考这篇文章:linux系统查看网卡是否支持WOL网络唤醒并开启WOL唤醒功能

关于使用WOL唤醒,其实最主要的是Magic Packet数据包,和端口关系不大,网卡是根据收到的Magic Packet数据包来进行唤醒的,所以可以不使用一些程序或者app,直接使用php网页发送Magic Packet数据包来完成WOL,具体方法如下:PHP使用Magic Packet完成WOL唤醒

《 “小米路由器成功外网WOL唤醒” 》 有 33 条评论

  1. dreamer说道:

    我IPV6,路由器做了arp静态绑定,DHCP静态IP-MAC绑定,但是感觉内网电脑UDP9收不到幻包。我测试了打开其他端口接收tcp类型,结果是通的,同样方法我尝试打开UDP:9,但是不行。*/5 * * * * ip6tables -L | grep “udp dpt:9”; [ $? != 0 ] && echo “add port” && ip6tables -I INPUT -p udp -m udp –dport 9 -j ACCEPT

  2. 匿名说道:

    默默问一句,我想小爱唤醒家里内网电脑,现在app可以唤醒,就差路由器一个python环境了,装不上啊
    小米R1D路由器

  3. 匿名说道:

    试验了下不行,arp -f这个命令r3p自带的busybox arp不认
    最后安装了entware后用net-tool-arp才支持这个语法。

  4. 彳亍说道:

    我的都按照步骤弄了。没成功。端口映射 WOL UDP 9 192.168.31.168 9 设置对吗?

  5. 匿名说道:

    主要是不清楚协议用tcp还是udp

  6. 匿名说道:

    端口转发如何添加,我都按照你的来了。没成功。感觉像是端口转发设置有问题

  7. […] 然后在日常操作中,海天碰到的关于小米路由器添加迅雷远程下载,为了能够更高效的利用宽带,给小米路由器开启WOL外网唤醒的功能。 […]

  8. 匿名说道:

    我也的已root,也是显示找不到ect/ethers,显示如下:
    root@XiaoQiang:~# /etc/ethers
    -ash: /etc/ethers: not found

  9. ZiLong Zhao说道:

    我设置完后发现端口映射失效了,并且重新设置点击保存并生效就一直卡在规则正在生效中,请等待…

  10. 匿名说道:

    用的winscp连接的路由器

    • haitian说道:

      @匿名 我没用过winscp 但查了下 winscp好像是sftp工具。但是 首先你得先开启开启SSH,然后windows下建议你可以试试PuTTYPuTTY,这个我之前用过 很经典的ssh连接工具

  11. 匿名说道:

    您说的这两个文件 我怎么找不到

  12. 匿名说道:

    /etc/ethers 这个目录找不到 新建吗

  13. 匿名说道:

    怎么打开并编辑文件 /etc/ethers ?找不到相关说明,头大

    • haitian说道:

      @匿名 首先需要打开小米路由器的ssh登录的功能,这个在文章里有说明方法。
      然后使用软件连接ssh登录后就可以编辑了。
      其实小米路由器就是一个linux系统

      • 匿名说道:

        @haitian ok,已经弄好了,谢谢,我想问一下,你是用的官方的哪个版本啊?我用的最新开发版,PPOE经常(678)错误,上不了网,换TPlink的就一点问题都没有,基本可以排除猫的问题了,小米路由器太烂了

    • 匿名说道:

      @匿名 输入命令vim /etc/ethers,按insert键之后进行编辑,编辑完了按Esc,然后输入:wq进行保存(注意输入英文符号的冒号)

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注