VPN-Routing für Hosts mit mehreren IP-Adressen [geschlossen]


7

Ich benutze Mikrotik RouterOS als NAT-Router. Einige Hosts hinter dem Router haben auch eine direkte Verbindung zum Internet, und diese Hosts haben anstelle von RouterOS eine Standardroute zum Gateway des Internetdienstanbieters. Ich habe einen OpenVPN-Server im Tun-Modus auf einem dieser Hosts mit öffentlicher IP eingerichtet. Das Problem ist, dass VPN-Clients nicht mit Hosts kommunizieren können, die eine öffentliche IP haben, da sie eine Standardroute zum ISP haben. Ich kann RouterOS eine statische Route zuweisen, habe jedoch keine Kontrolle über den Router meines Internetdienstanbieters. Daher werden an den VPN-Client gesendete Pakete an die WAN-Verbindung anstelle des VPN-Servers gesendet. Welche Möglichkeiten habe ich?

privater DHCP-Pool 172.16.10.0/24, Gateway 172.16.10.1 (RouterOS)

OpenVPN-Pool 172.16.11.0/24

  1. Tap-Modus, viel Overhead
  2. Tun-Modus, VPN-Pool im DHCP-Pool und OpenVPN-Server-Proxy-ARP für den VPN-Pool im LAN
  3. Tun-Modus, fügen Sie auf jedem Host mit einer öffentlichen IP eine statische Route für den OpenVPN-Pool hinzu. Dies lässt sich nicht gut skalieren, zu viel Arbeit in einer gemischten Umgebung
  4. IPv6. Das Problem ist, dass viele Windows-Anwendungen (z. B. VMware-Produkte) IPv6 nur unzureichend unterstützen. Alle Hosts verfügen über IPv6-Konnektivität, aber VPN-Clients haben möglicherweise Schwierigkeiten, IPv6 zu erhalten.

Ich weiß, ich sollte wahrscheinlich alles hinter die Firewall stellen. Ich werde das tun, nachdem ich einen Juniper SRX bekommen habe. Ich habe nicht genug öffentliche IPs für jeden Host. Und RouterOS / pfSense eignet sich nicht gut für eine Umgebung mit gemischten öffentlichen / privaten IPs. Ich muss zugeben, dass dies zunächst ein schlechtes Design ist, ein Migrationspfad, ohne die Bank zu sprengen? Es ist keine Produktion, nur ein etwas kompliziertes Heimnetzwerk.

Ich freue mich über Ihren Beitrag.

Edit1 (Antwort auf die Antwort von JelmerS): Dies ist machbar, skaliert aber nicht wirklich gut, wie ich in OP erwähnt habe. In der Umgebung habe ich verschiedene Varianten von BSD-, Linux-, Windows- und Standalone-Appliances ohne Shell (z. B. Drucker, Netzwerküberwachungsgeräte, Telefon). Ich werde DHCP Option 33 und Option 121 ausprobieren, nicht sicher, wie gut sie auf verschiedenen Geräten unterstützt werden.

Edit2 (Antwort auf Joseph Dranes Antwort): 1. Derzeit haben Hosts mit einer öffentlichen IP eine Verbindung zum RouterOS LAN und eine weitere Verbindung zum ISP (Bypass RouterOS).

  1. Gibt es eine Rechtfertigung für statisches NAT? Es scheint unnötig (schwere Leistungsstrafe)

  2. Die gesuchte Firewall kann im transparenten Modus gut funktionieren. DHCP / NAT kann vollständig von einer anderen Box ausgeführt werden. Aber die meisten Firewalls, die ich verwendet habe, unterstützen / funktionieren im transparenten Modus nicht gut und sind schwer zu beheben (mangelnde Sichtbarkeit).

Edit3: RouterOS läuft in ESXi. Es gibt einige andere Gastbetriebssysteme. Die Umgebung ist mit physischen / virtuellen Hosts gemischt. Ich habe genug NIC-Schnittstellen auf der ESXi-Box. Ich möchte die Flexibilität, die es Hosts ermöglicht, einfach zwischen öffentlichen und privaten Adressen zu wechseln.

Antworten:


3

Routen werden immer in der Reihenfolge ihrer Spezifität ausgewählt. Angenommen, ein Host hat eine Route zu 10.0.0.0/8 über Router A und 10.0.1.0/24 über Router B. Sobald er ein Paket an 10.0.1.1 senden möchte, wird er Router B gegenüber Router A bevorzugen. A Standard Route ist die am wenigsten spezifische Route, die Sie haben können. Jede andere Route, die Sie hinzufügen, wird einer Standardroute vorgezogen. Die Antwort ist also einfach: Fügen Sie dem VPN-DHCP-Pool über den Mikrotik-Router eine bestimmte Route hinzu. Vergessen Sie nicht, die Routen dauerhaft zu machen, damit sie einen Neustart überleben. Angenommen, Ihr DHCP-Pool ist 10.0.1.0/24und Ihre Mikrotik hat IP 1.1.1.1und ist verbunden eth0. Hier ist der Befehl für Windows:

route add -p 10.0.1.0 MASK 255.255.255.0 1.1.1.1

Unter Linux wird eine dauerhafte Route hinzugefügt, indem die /etc/sysconfig/network-scripts/route-eth0Datei bearbeitet wird, um statische Routen für die eth0Schnittstelle zu definieren .

GATEWAY0=1.1.1.1
NETMASK0=255.255.255.0 
ADDRESS0=10.0.1.0

2

Wie Sie bereits wissen, sind Hosts mit zugewiesenen öffentlichen IP-Adressen nicht gut. Ich beziehe mich auf Ihren Kommentar zum Vorstellen einer Firewall.

Ich würde Ihren Router verwenden und eine weitere Schnittstelle für ein DMZ-Netzwerk hinzufügen. Dieses DMZ-Netzwerk würde private IP-Adressen verwenden, die nicht öffentlich sind.

Dann NAT in Ihrem Router einfach die öffentliche an diese private IP-Adresse NAT.

Also aktuelle Konfiguration: [Internet] ----> RouterOS -----> Host mit öffentlicher IP

Neue Konfiguration / Einrichtung: [Internet] ---> RouterOS <---> NAT public IP 60.70.80.90 <--to--> 192.168.100.90 ----> Host mit privater IP 192.168.100.90

Jetzt können Sie einfach eine Route zum Subnetz / Netzwerk 192.168.100.90 eingeben, das das DMZ-Subnetz / Netzwerk sein wird.

Sie können mit IP-Tabellen ein paar coole Sachen machen, wenn es um eine "Make-Shift" -Firewall geht, aber ich bin nicht der Typ, der dabei hilft. Ich bin ein Cisco-Typ.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.