我的服务器设置中有一个奇怪的行为。它看起来像那样。
client1 192.168.11.2/24< ----> 192.168.11.7/24(br1 / vlan1)服务器192.168.21.1/24(br21 / vlan21)< ---> 192.168.21.101/24 client2
在服务器上,我已经为两个端口设置了DNAT到另一个目的地。
~> sudo iptables -t nat -nL -v
Chain PREROUTING (policy ACCEPT 3631 packets, 220K bytes)
pkts bytes target prot opt in out source destination
5332 320K DNAT tcp -- * * 0.0.0.0/0 192.168.11.7 multiport dports 5308,21 to:192.168.2.19
~> ip r get 192.168.2.19
192.168.2.19 via 192.168.11.1 dev br1 src 192.168.11.7
这对两个客户端都有一段时间的作用,但是在一个未指定的时间之后,只有来自client2的数据包才会被转发。当我尝试从client1连接但是没有NAT时,数据包计数器会增加。有时它会在几个小时后再次开始工作。
防火墙中没有任何内容被阻止,因为所有策略都在ACCEPT上,并且没有设置规则。 conntrack也不满。我已经用rp_filter等尝试了多种方法,但在这些设置中应该没问题。
希望有人有个主意。