我正在尝试使用 iptable 进行负载平衡。我设置的规则如下,其中我想将来自 ipaddress 10.xx4 的请求路由到服务器的内部 ips 10.xx1:1010 、 10.xx2:1010 和 10.xx3:1010
iptables -t nat -A PREROUTING -p udp -d 10.x.x.4 --dport 1010 -m state --state NEW -m statistic --mode nth --every 3 --packet 0 -j DNAT --to-destination 10.x.x.1:1010
iptables -t nat -A PREROUTING -p udp -d 10.x.x.4 --dport 1010 -m state --state NEW -m statistic --mode nth --every 3 --packet 0 -j DNAT --to-destination 10.x.x.2:1010
iptables -t nat -A PREROUTING -p udp -d 10.x.x.4 --dport 1010 -m state --state NEW -m statistic --mode nth --every 3 --packet 0 -j DNAT --to-destination 10.x.x.3:1010
当我执行时,前 4 个数据包被正确路由到每个 ipaddress。第 5 个数据包没有被路由并被丢弃。
我该如何调试这个问题。我应该增加给 --packet 的值吗?正确的规则应该是什么?