marc126 Posted May 1, 2022 Share Posted May 1, 2022 (edited) 我在虚拟机里面安装了openwrt,连接的br0,设置作为unraid的网关。 openwrt是作为二级旁路由,连接了的是同网段的上级路由 问题:Unraid自己可以正常上网,docker能ping通网关,但不能上网 请问有没有解决办法? Edited May 1, 2022 by marc126 Quote Link to comment
marc126 Posted May 1, 2022 Author Share Posted May 1, 2022 防火墙设置没有问题: 1、Unraid自己通过openwrt可以上网 2、局域网的其它机器可以通过openwrt上网 仅Unraid里面的docker不能上网 其它测试: 我把同样的openwrt部署在外面PVE中全部正常,就是在Unraid中虚拟机不行 21 minutes ago, 4dew said: 旁路由防火墙设置对吗? Quote Link to comment
lyqalex Posted May 1, 2022 Share Posted May 1, 2022 检查unraid设置中网络设置和docker设置是否一个网段及网关,不存在这个情况在pve可以,unraid则行不通的问题。 Quote Link to comment
marc126 Posted May 1, 2022 Author Share Posted May 1, 2022 docker用的Bridge,应该默认就是用的unraid的网关 docker的shell能ping通网关,但出不去,而且traceroute能看到在openwrt节点后就断了 unraid的shell中ping和traceroute都正常 22 minutes ago, lyqalex said: 检查unraid设置中网络设置和docker设置是否一个网段及网关,不存在这个情况在pve可以,unraid则行不通的问题。 Quote Link to comment
Solution marc126 Posted May 2, 2022 Author Solution Share Posted May 2, 2022 解决了,在openwrt防火墙中加入: iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE 猜测:应该是数据包回程的时候没有经过Openwrt网关,直接由一级网关回复给了请求者,然后unraid里面可能有没有把这种数据包转发给bridge中的docker。 不明白:为啥openwrt不部署在unriad虚拟机里面就没有这个问题。 Quote Link to comment
lyqalex Posted May 2, 2022 Share Posted May 2, 2022 我现在用的也是旁路由openwrt,不存在你说的问题,这只涉及你的硬路由器不转发你旁路由的包,你应该不是华硕路由器,另外pve部署openwrt也应该不可以被转发。 Quote Link to comment
SkyZzzzz Posted August 17, 2022 Share Posted August 17, 2022 On 5/2/2022 at 10:53 AM, marc126 said: 解决了,在openwrt防火墙中加入: iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE 猜测:应该是数据包回程的时候没有经过Openwrt网关,直接由一级网关回复给了请求者,然后unraid里面可能有没有把这种数据包转发给bridge中的docker。 不明白:为啥openwrt不部署在unriad虚拟机里面就没有这个问题。 这是解决办法,需要注意网口的实际名称 Quote Link to comment
monkiq Posted September 4, 2022 Share Posted September 4, 2022 我也遇到这个问题了,谢谢你! 我也好奇这个问题是咋回事 Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.