Como redirecionar IP público através de túnel VPN

Como redirecionar IP público através de túnel VPN

Sou novo nisso e examinei muitas outras perguntas semelhantes, mas não consegui encontrar uma resposta.

Tenho dois servidores no SoYouStart e em um servidor tenho uma VM HAProxy. Ambos os servidores estão conectados com um túnel VPN Strongswan. Eu também tenho um IP de failover que escuta no HAProxy nas portas 80, 443 e algumas outras.

Configuração de rede HAProxy VM1:

iface eth0 inet static
    address 192.168.100.2
    netmask 255.255.255.224
    network 192.168.100.0
    broadcast 192.168.100.31
    gateway 192.168.100.30
    post-up ip addr add FAILOVER_IP dev $IFACE
    pre-down ip addr del FAILOVER_IP dev $IFACE

No servidor host eu uso essa rota para disponibilizar o IP Failover na minha VM HAProxy.

ip route add FAILOVER_IP/32 via 192.168.100.2 dev vmbr1

Tudo está funcionando, mas agora gostaria de redirecionar o tráfego para esse IP de failover através do meu túnel VPN para todas as VMs no servidor 2.

Eu tentei essas regras, mas não funciona.

Servidor 2:

iptables -t nat -A PREROUTING -i eth0 -d FAILOVER_IP -m connmark 
         --mark 0xE010E798 -j DNAT --to-destination 192.168.100.2

Servidor1:

iptables -t nat -A POSTROUTING -i eth0 -d 192.168.100.2/32 
         --match connmark --mark 0xE010E798 -j SNAT --to-source FAILOVER_IP

Por favor, alguém poderia me ajudar a descobrir o que estou fazendo de errado? Meu objetivo é ter uma segunda instância do HAProxy no servidor 2 e redirecionar o tráfego interno para a instância ativa do HAProxy.

Obrigado.

Responder1

Encontrei a resposta. Em primeiro lugar, não sabia que essa marca se aplica apenas à máquina local. O segundo erro foi usar o SNAT no Servidor 1, que altera o endereço do remetente, mas precisei alterar o endereço de destino novamente e tive que alterar a interface. Minhas regras de trabalho são

Servidor 2

iptables -t nat -A PREROUTING -i vmbr1 -p tcp -d FAILOVER_IP 
         -j DNAT --to-destination 192.168.100.2

Servidor1

iptables -t nat -A PREROUTING -p tcp -d 192.168.100.2 
         -j DNAT --to-destination FAILOVER_IP

informação relacionada