首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将UDP唤醒端口转发到使用IPTABLES广播IP?

如何将UDP唤醒端口转发到使用IPTABLES广播IP?
EN

Server Fault用户
提问于 2010-11-06 22:36:25
回答 4查看 16.3K关注 0票数 4

我正在尝试为家里的一些LAN计算机设置Wake,而且我似乎需要打开一个UDP端口(7或9是最常见的),并将所有请求转发到广播IP,在我的例子中是192.168.1.255。

问题是我的路由器不允许我将任何东西转发到广播IP。

我可以通过telnet连接到我的路由器,这个路由器似乎使用IPTABLES,但我不知道它或如何是。

有人能帮我使用适当的iptable命令来做我想做的吗?另外,如果它不能工作,那么将所有东西放回原处的命令也会很好。

最后一件事,重新启动路由器将保留那些手动添加的iptables条目,还是每次我都需要运行它们?

EN

回答 4

Server Fault用户

发布于 2011-05-07 17:12:07

代码语言:javascript
运行
复制
# iptables -A PREROUTING -t nat -p udp --dport 6  -d <original destination> -j DNAT --to-destination 192.168.1.255

这将采取一个WOL包的目的地,并重新路由到您的网络广播。

此外,如果您使用的是Red派生系统,则需要使用

代码语言:javascript
运行
复制
# service iptables save
票数 1
EN

Server Fault用户

发布于 2015-11-19 17:57:31

使用工具socat有一个很好的解决方案,在这个StackExchange主题中提到:

将UDP单播包转换为广播?

我根本不是这个话题的专家,所以我不能详细说明,我只能引用。这个解决方案对我很有用。

红色图克斯 (https://serverfault.com/a/267343/323199)提到的解决方案不起作用,iptables不是用来广播数据包的。我在上面提到的StackExchange主题中解释了这一点。

票数 1
EN

Server Fault用户

发布于 2020-02-27 16:31:40

一些路由器(cisco)能够转发定向UDP广播。

Linux内核从大约5.0版本就能够做到这一点。您只需要为特定的网络接口指定一个参数:

代码语言:javascript
运行
复制
sudo sysctl -w net.ipv4.conf.eth1.bc_forwarding=1

(注: net.ipv4.conf.all.bc_forwarding的选项似乎行不通)

您可以保存此参数int /etc/sysctl.conf

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/198996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档