路由到同一子网中的网关

我陷入了Debian nft防火墙问题。我正在运行以下设置:

互联网防火墙网络192.168.1.0/24 vpn服务器网络192.168.2.0/24

总结:具有一个专用网络(防火墙所在的VPN服务器已连接到另一网络)的防火墙。防火墙通过vpn服务器将路由设置为192.168.2.0/24。

我现在想启用网络192.168.1.0/24中的客户端来联系VPN网关后面的客户端。如果在客户端上指定了通过vpn-server到192.168.2.0/24的路由,则一切正常。如果缺少此路由,并且客户端与防火墙联系,防火墙再次将数据包转发到vpn-server,则所有先前的数据包(以SYN ACK数据包开头)都会被conntrack状态为INVALID的防火墙过滤掉。

我的假设是,防火墙将第一个数据包转发到vpn服务器,答复直接到达客户端,因此客户端发送的下一个数据包不再处于conntrack状态NEW,而且也不属于跟踪连接,因为防火墙从未看到客户端的回复。

如果我没错,客户端实际上应该注意到vpn服务器(下一跳)在同一子网中,并接受它作为新的nexthop,但是事实并非如此,客户端的路由表始终会指出防火墙作为到192.168.2.0/24网络的下一跳。

您对如何进行此操作有任何想法吗?预先谢谢!

更新:在防火墙上启用了send_redirects,我添加了一个nft规则来跟踪所有icmp重定向。显然,防火墙出于某种原因不会发送重定向。使用与默认网关相同路由的fritz!box,客户端会立即收到ICMP重定向。

更新:如果有人也遇到这个问题:尝试从Debian Stable升级到Testing。我尝试通过测试系统重现它:没问题。在给定设置中更新了防火墙以进行测试:除了在第二个数据包而不是第一个数据包上发送ICMP重定向之外,也没有问题。但这是我可以处理的。

kirecetycike 回答:路由到同一子网中的网关

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2819471.html

大家都在问