未评估 IPTable SNAT 规则

未评估 IPTable SNAT 规则

我正在尝试使用 IPTables 对流进行 SNAT 和 DNAT,但 SNAT 让我很头疼。规则似乎没有被评估,我不知道为什么。

规则如下:

Chain PREROUTING (policy ACCEPT 117 packets, 5372 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        2   120 DNAT       all  --  *      *       0.0.0.0/0            xx.xx.xx.xx         to:99.99.99.1

Chain POSTROUTING (policy ACCEPT 6 packets, 396 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 SNAT       all  --  *      *       192.198.0.0/24       0.0.0.0/0            to:192.168.4.40

此外,net.ipv4.ip_forward设置为1

当我执行 tcpdump 来查看发生了什么时,我看到目标 IP 经过了 NAT,但源 IP 没有经过 NAT:

15:16:49.994739 IP 192.168.0.4.55149 > xx.xx.xx.xx.443: Flags [S], seq 1558061817, win 29200, options [mss 1460,sackOK,TS val 2666551254 ecr 0,nop,wscale 7], length 0
15:16:49.994797 IP 192.168.0.4.55149 > 99.99.99.1.443: Flags [S], seq 1558061817, win 29200, options [mss 1460,sackOK,TS val 2666551254 ecr 0,nop,wscale 7], length 0

我是否遗漏了什么?

相关内容