
Gostaria de encaminhar o tráfego local para 127.0.0.2:30041 para 127.0.0.2:40041 e 127.0.0.3:30041 para 127.0.0.3:40041.
Quando eu uso
sudo iptables -t nat -A OUTPUT -o lo -p udp -m udp --dport 30041 -j REDIRECT --to-ports 40041
todo o tráfego é encaminhado para 127.0.0.1:40041.
tentei
sudo iptables -t nat -A OUTPUT -o lo -d 127.0.0.2 -p udp -m udp --dport 30041 -j REDIRECT --to-ports 40041
assim como
sudo iptables -t nat -A OUTPUT -d 127.0.0.2 -p udp -m udp --dport 30041 -j REDIRECT --to-ports 40041
mas o tráfego ainda é encaminhado apenas para 127.0.0.1.
Suspeitamente, as regras resultantes mostram que a -d 127.0.0.2
opção parece ser ignorada, o que destination
é simplesmente localhost
:
sudo iptables -t nat -v -L OUTPUT
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
3 357 REDIRECT udp -- any any anywhere localhost udp dpt:30041 redir ports 40041
6 10018 DOCKER all -- any any anywhere !localhost/8 ADDRTYPE match dst-type LOCAL
Como posso fazer com que o iptables encaminhe para um endereço local específico?