OpenVZ, Zugriff auf VPN des Hosts

Hey,

Konstellation ist folgende:
2 Hardware Nodes, mittels VPN (OpenVPN) miteinander verbunden. Beide Nodes beherrbergen mehrere OpenVZ Container, die sich via venet-Interface ein privates Netz teilen.

VPN: 10.250.0.0/16
Node-1: 10.250.0.1
Node-2: 10.250.0.10
Node-X: 10.250.0.X
Container auf Node-1: 10.0.1.0/24
Container auf Node-2: 10.0.2.0/24
Container auf Node-X: 10.0.X.0/24

Auszug aus ifconfig auf Node-2:
Code:
tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.250.0.10  P-t-P:10.250.0.9  Mask:255.255.255.255

Container auf Node-1 sollen mit Containern auf Node-2 kommunizieren können.
Ich brauche also ein Routing:
Code:
Container-1 -> venet -> vpn -> venet -> Container-2

Derzeit löse ich dieses Problem mittels Eintrag in der Routing Tabelle der Nodes: (Auszug aus Node-2)
Code:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.250.0.0      10.250.0.9      255.255.0.0     UG    0      0        0 tun0
10.0.1.0        10.250.0.9      255.255.255.0   UG    0      0        0 tun0

Sowie SNAT via iptables: (Auszug aus Node-2)
Code:
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
SNAT       all  --  10.0.2.0/24            10.0.1.0/24         to:10.250.0.10

---

Mir gefällt das ganze aber nicht wirklich. Ist NAT hier wirklich notwendig?
Hat jemand einen besseren (einfacheren?) Lösungsansatz?

Ich möchte erreichen, dass alle VPN-Clients (inklusive der Nodes selbst, sowie deren Container) ohne zusätzliche manuelle Konfiguration auf Client-Seite Zugriff auf alle Nodes, sowie deren Container erhalten.

Das System soll einfach erweiterbar sein. Ich möchte möglichst einfach Nodes hinzufügen und entfernen können, ohne jedes mal 20 Konfigurationsdateien editieren zu müssen.

- keks
 
Zurück
Oben