Obrigado ao amauk no reddit por esta resposta. Pensei em publicá-lo aqui também, caso alguém encontre essa questão.
Primeiro, você precisa ativar o encaminhamento de IP.
Isso está desabilitado por padrão, por motivos de segurança.
vim /etc/sysctl.conf
e net.ipv4.ip_forward = 1
Em seguida, execute o seguinte para confirmar as alterações e recarregar a configuração do sysctl
sysctl -p
Então você precisa escrever as regras do IPTables para encaminhar as conexões.
TCP
iptables -t nat -A PREROUTING -i ad1 -p tcp -m tcp --dport 1234 -j DNAT --to-destination 192.168.1.5:1238
UDP
iptables -t nat -A PREROUTING -i ad1 -p udp --dport 1234 -j DNAT --to-destination 192.168.1.5:1238
Pacotes recebidos da interface ad1 -i ad1
que correspondem aos critérios (TCP / UDP + número da porta), NAT ao destino: porta
Você também precisará salvar as regras do IPTables de alguma forma e restaurá-las durante a inicialização. Exatamente como você faz isso é específico da distribuição.
editar
Para excluir regras, use -D
(delete) no lugar de -A
(append)
Por exemplo,
Para excluir a regra de encaminhamento de TCP
iptables -t nat -D PREROUTING -i ad1 -p tcp -m tcp --dport 1234 -j DNAT --to-destination 192.168.1.5:1238