So leiten Sie eine öffentliche IP durch einen VPN-Tunnel um

So leiten Sie eine öffentliche IP durch einen VPN-Tunnel um

Ich bin neu hier und habe viele ähnliche Fragen durchgesehen, konnte aber keine Antwort finden.

Ich habe zwei Server bei SoYouStart und auf einem Server habe ich eine HAProxy-VM. Beide Server sind mit einem Strongswan-VPN-Tunnel verbunden. Ich habe auch eine Failover-IP, die auf HAProxy auf Port 80, 443 und einigen anderen lauscht.

HAProxy VM1-Netzwerkkonfiguration:

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

Auf dem Hostserver verwende ich diese Route, um die Failover-IP auf meiner HAProxy-VM verfügbar zu machen.

ip route add FAILOVER_IP/32 via 192.168.100.2 dev vmbr1

Alles funktioniert, aber jetzt möchte ich den Datenverkehr für alle VMs auf Server 2 über meinen VPN-Tunnel auf diese Failover-IP umleiten.

Ich habe diese Regeln ausprobiert, aber es funktioniert nicht.

Server 2:

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

Server 1:

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

Kann mir bitte jemand helfen, herauszufinden, was ich falsch mache? Mein Ziel ist es, eine zweite HAProxy-Instanz auf Server 2 zu haben und den internen Datenverkehr auf die aktive HAProxy-Instanz umzuleiten.

Danke.

Antwort1

Habe die Antwort gefunden. Erstens wusste ich nicht, dass die Markierung nur für den lokalen Rechner gilt. Der zweite Fehler war, dass ich SNAT auf Server 1 verwendet habe, wodurch die Absenderadresse geändert wird, aber ich musste die Zieladresse erneut ändern und die Schnittstelle ändern. Meine Arbeitsregeln sind

Server 2

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

Server 1

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

verwandte Informationen