大家好,又见面了,我是你们的朋友全栈君。
WAN远程唤醒与LAN远程唤醒有着诸多不同,WAN远程唤醒首先需要主板、网卡等硬件的支持,需要一条有效的Intelnet连接,与Lan远程唤醒不同的是,WAN远程唤醒需要经过路由器,因此下面我就来详细讲解如何在路由器上进行设置,以支持WAN远程唤醒,前提是,你已经成功进行了LAN远程唤醒。
一、WOL(远程唤醒)工具介绍
实现远程唤醒的软件有很多,原理都是相同的。下面列出几款常用的WOL软件:
■ LanHelper
■ Magic Packet Utility
■ NetWaker for windows
■ WakeOnLanGui(http://www.depicus.com)
二、准备
WAN与LAN在不同在于在广域网上,有许多的路由器等网络设备,这些设备可能会使Magic Packet的包不能到达我们想唤醒的电脑网卡上。因此,要实现通过internet来唤醒,必须得到路由器的支持。下面就以我的TP-Link WR841N无线路由为例来说明配置过程。
首先确保路由器可以正常接入internet,即通过服务商得到一个公网IP(对于家庭来说ADSL、Cable Modem是常见的上网方式),进入路由器WEB配置页面http://192.168.1.1。
三、端口映射(虚拟服务器)
依次点击“转发规则”->“虚拟服务器”,添加一新条目,端口为2301(2301是默认的端口号,也可以是其它端口号,只要不和其它的冲突),IP地址为需要唤醒电脑网卡所使用的IP地址(比如192.168.1.250),协议为UDP,并使之处于“生效”状态。
这一步使得当路由器收到发到它2301端口的数据都会转发到IP地址为192.168.1.250的这台电脑上。
四、IP地址与MAC地址之间的绑定
依次点击“IP与MAC绑定”->“静态ARP绑定设置”,添加一新条目,MAC地址添为网卡(被唤醒电脑上的)MAC,如50-E5-60-CA-1A-4A,IP为上一步设置的IP地址:192.168.1.250。
注意:记住要启用路由器的“ARP绑定”功能(图片中的红圈部分),不然此步的设置是不生效的。
当路由器收到从internet发往2301端口的Magic Packet包时,由于设了端口映射,路由器就直接将该Magic Packet包转发到192.168.1.250上。但是由于电脑是处理关机状态,ARP无法通过广播找到192.168.1.250这台电脑,Magic Packet包将被路由器丢弃,因此进行静态的IP-MAC绑定,使数据包可以直接发往MAC地址为50-E5-60-CA-1A-4A的网卡上。
此时,从理论上来说,通过internet的远程唤醒就可以成功了。但是,如果远程主机没有配置静态IP地址,而是通过DHCP方式获取动态IP地址的,那么还有一些工作需要做,以确保万无一失。
五、静态IP地址分配
大家都清楚,DHCP租约协议是有有效期的,TP-Link上的DHCP租约有效期默认是2小时,为了确保远程电脑在启动后可以获得192.168.1.250这个IP地址,需要在DHCP服务器中设置一个静态地址分配,即为MAC地址50-E5-60-CA-1A-4A静态分配192.168.1.250这个IP地址,而且永不过期。
六、使用动态DNS功能
在路由器上使用动态DNS功能,这样可以用一个域名来访问而不用查看经常改变的公网IP(ADSL拨号上网的IP是经常变的)。同时,允许路由器可以进行无端WEB管理,以方便当我们在任何地方都可以检查路由器的状态。
说到DDNS,不得不提到大名鼎鼎的花生壳了,TP-LINK路由器默认就内嵌了动态DNS功能,只需要到花生壳的官网注册一个护照,并申请一个免费域名,然后在路由器上登录。登录成功后,会看到域名,这样花生壳就将域名和路由器上的公网IP地址绑定在一起了。
七、使用第三方工具进行远程唤醒
访问http://www.depicus.com/wake-on-lan/woli.aspx这个页面,这是depicus提供的一个在线的远程唤醒工具页面,使用起来很方便。工作界面如下:
下面就进行远程唤醒的四个参数作下说明:
- Your Network Cards Mac Address:(内部局域网)远程主机的网卡MAC地址,不是路由器的MAC地址。[一开始我这里搞错了,填的是路由器的MAC地址,怎么也不能远程唤醒]
- Any Computers Ip Number or FQDN:路由器获取到的公网IP地址或使用花生壳DDNS进行绑定的合法域名。这里最好使用DDNS功能绑定一个域名,因为域名是不变的,而你不清楚你的路由器什么时候会重新从ISP服务商那里获取公网IP地址。但如果使用了DDNS,即使路由器的IP地址变了,会自动更新到花生壳服务器上。
- Your Subnet Mask:子网掩码。这个很重要,因为路由器是动态地从ISP服务商那里获取IP地址的,你根本不知道该IP地址所对应的子网掩码,所以索性就填写255.255.255.255,这表示是唯一一个IP地址,而不是一个网段。
- Any Port Number:网络端口,路由器会一直侦听该网络端口,一旦侦测到有数据包发往该端口,就进行转发。
经过上述配置,我已经通过Internet成功远程唤醒了我的服务器。你也成功了吗?
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137464.html原文链接:https://javaforall.cn