Sua culpa é que você precisa de três sistemas para que isso faça sentido:
A -----> B
deve ser substituído por
A -----> B -----> C
Nesse caso, você precisaria da cadeia PREROUTING
em B
, pois o pacote seria entregue ao sistema a partir do exterior.
Mas se você usar iptables
no mesmo sistema no qual você cria os pacotes, eles serão gerados localmente e eles não passarão PREROUTING
. Com dois sistemas, você pode fazer isso:
A -----> B
deve ser substituído por
A -----> C
( C
não precisa existir se nenhuma resposta for necessária para testar o DNAT).
Nesse caso, você precisa de tal regra:
iptables -t nat -A OUTPUT -d y1 -j DNAT --to-destination z1
Mas se você alterar o endereço de destino para o seu, o pacote não alcançará eth6
. Você precisa de tcpdump -i lo -n
para ver.