远程开关机NAS时唤醒魔术包 (Wake On Lan ) 选择哪个端口?

快节奏时代,先说答案:

MagicPack 魔术包唤醒NAS的时候,使用哪个端口都可以。 甚至不关心UDP还是TCP。


唤醒原理:

Network Interface Card(NIC),也就是网卡只是通过6个0xff 后面接16个MAC地址进行过滤的,只要符合这种格式就会唤醒电脑。

也就是说无论指定哪个端口号,都可以唤醒NAS。那为什么要端口号呢?

当网络复杂一些的时候,比如机器在局域网里(192.168.1.1),则必须指定一个端口号进行映射(端口转发 或 内网穿透,案例见文章末尾),这样公网上的远程唤醒数据包就可以顺利的发送到内网了。

进而达到直接远程唤醒NAS主机的目的

为什么默认使用9号端口,  或者7号端口呢?

9号端口是丢弃端口,任何发到这个端口的包都会丢弃。 远程唤醒的默认端口,建议使用这个端口。

而7号端口是兼容遗留的 Echo 端口,回显端口。 因为是广播,收到的机器都进行回复,显然不大合适。

由于Linux下低位端口号通常需要权限,所以如果用web程序唤醒机器时,注意把端口号改高些,比如端口:20009


另外如ping命令使用ICMP协议,工作在IP层, 也是不需要端口号的(虽然有伪端口,或者能够指定某个端口,这里不展开)。

 

 

远程唤醒NAS案例:

  1.  路由器(或光猫)有公网IP, 在路由器上设置 NAS的IP<-> MAC 地址绑定关系。
  2.  设置NAT或虚拟服务器,映射端口20009到 NAS的IP上。

向路由器IP的20009端口发送唤醒魔术包,即可唤醒NAS服务器。

评论列表: