相关疑难解决方法(0)

将 UDP 单播数据包转换为广播?

我们需要从 Internet 唤醒我们内部 LAN 上的一些计算机。
我们有一个有点封闭的路由器,配置它的方法很少。
我想使用 netfilter (iptables) 来执行此操作,因为它不涉及守护进程或类似程序,但其他解决方案也可以。

我的想法是:

  • 外部计算机向公共 IP 地址发出 WOL(Wake-On-LAN)数据包(内部具有正确的 MAC)
  • 路由器上打开了正确的端口(比如 1234),将数据重定向到 Linux 机器
  • Linux box将UDP单播包转化为广播包(内容完全一样,只是目的地址修改为255.255.255.255或192.168.0.255)
  • 多播数据包到达每个网卡,并且所需的计算机现在处于唤醒状态

为此,一个非常简单的 netfilter 规则是:
iptables --table nat --append PREROUTING --in-interface eth+ --protocol udp --destination-port 1234 --jump DNAT --to-destination 192.168.0.255

唉 netfilter 似乎忽略了转换到广播。192.168.0.255 和 255.255.255.255 什么也没给。还用 192.168.0.0 和 0.0.0.0 进行了测试,
我使用 tcpdump 来查看会发生什么:
tcpdump -n dst port 1234
13:54:28.583556 IP www.xxx.yyy.zzz.43852 > 192.168.0.100.1234: UDP, length 102
仅此而已。我应该有第二行,如:
13:54:28.xxxxxx IP www.xxx.yyy.zzz.43852 > 192.168.0.255.1234: UDP, length 102

如果我重定向到非多播地址,则一切正常。我有 2 条预期的线路。但显然这不适用于 WOL。 …

iptables wake-on-lan broadcast

8
推荐指数
2
解决办法
1万
查看次数

远程打开我的 Ubuntu 服务器?

我在家里有一台 Ubuntu 服务器 (16.10),想知道当我不在家时是否可以远程打开它?

我设置了 Wake-On-LAN,但这似乎只在我使用另一台与我的 Ubuntu 服务器连接到同一网络的计算机时才有效。

关于让 WOL 远程工作的任何想法?

ubuntu wake-on-lan

6
推荐指数
2
解决办法
5205
查看次数

标签 统计

wake-on-lan ×2

broadcast ×1

iptables ×1

ubuntu ×1