OPNsense/Multi WAN: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
K Textersetzung - „bzw.  “ durch „bzw. “
 
(20 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Multi WAN scenarios are commonly used for failover or load balancing, but combinations are also possible with OPNsense.
'''Multi WAN''' Szenarien werden üblicherweise für Failover oder Load Balancing verwendet, aber auch Kombinationen sind mit OPNsense möglich


[[Image:Bild1.png|top]]
== Failover konfigurieren ==
[[File:opnsenseMultiWan1.png|mini]]
; Um Failover einzurichten, werden die folgenden Schritte durchgeführt
# Hinzufügen von Monitor-IPs zu den Gateways
# Fügen Sie eine Gateway-Gruppe hinzu.
# Konfigurieren Sie DNS für jedes Gateway.
# Verwenden Sie richtlinienbasiertes Routing, um unsere Gateway-Gruppe zu nutzen.
# Hinzufügen einer Firewall-Regel für DNS-Verkehr, der für die Firewall selbst bestimmt ist.


== Configure Failover ==
[[File:opnsense-MultiWanQuicknavigation.png|mini|Suchen der richtigen Seite mit dem Suchfeld]]
To setup Failover the following step will be taken:# Add monitor IPs to the gateways
# Add a gateway group
# Configure DNS for each gateway
# Use policy based routing to utilize our gateway group
# Add a firewall rule for DNS traffic that is intended for the firewall itself


; Tip
=== Beispielkonfiguration ===
: Did you know you can browse quick and easy to the right page by using the search box in the top right corner of your screen? Like this:
In unserem Beispiel wurden zwei bereits konfigurierte WAN-Gateways verwendet, die beide separat funktionieren.
* Als DNS und Monitor-IPs werden wir die DNS-Dienste 8.8.8.8 und 8.8.4.4 von Google verwenden, natürlich können Sie auch Ihre eigenen 'bekannt guten' Einstellungen verwenden.


[[Image:Bild2.png|top|alt="../../_images/quick-navigation.png"]]
Wir haben WAN und WAN2 definiert, wobei WAN unser primäres (Standard-)Gateway sein wird.


=== Example configuration ===
=== Schritt 1 - Überwachungs-IPs hinzufügen ===
Our example utilized two previous configured WAN gateways that both are confirmed to function separately. As DNS’s and monitor IPs we will utilize google’s DNS services 8.8.8.8 and 8.8.4.4, of course you can use your own ‘known good’ setting.
Sie können diesen Schritt überspringen, wenn Sie die Überwachungs-IP bereits eingerichtet haben und beide Gateways als online angezeigt werden.


We defined WAN and WAN2, where WAN will be our primary (default) gateway.
Um eine Überwachungs-IP hinzuzufügen, gehen Sie zu System ‣ Gateways ‣ Single und klicken Sie auf das erste Stiftsymbol, um das erste Gateway zu bearbeiten.
 
=== Step 1 - Add monitor IPs ===
You may skip this step if you already have setup the monitoring IP and both gateways are shown as online.
 
To add a monitoring IP go to System ‣ Gateways ‣ Single and click on the first pencil symbol to edit the first gateway.
 
Now make sure the following is configured:


Stellen Sie nun sicher, dass Folgendes konfiguriert ist:
{| class="wikitable options"  
{| class="wikitable options"  
|-  
|-  
Zeile 43: Zeile 40:
|}
|}


Then click on the second pencil symbol to edit the second gateway.
Klicken Sie dann auf das zweite Bleistiftsymbol, um das zweite Gateway zu bearbeiten.


Now make sure the following is configured:
Stellen Sie nun sicher, dass Folgendes konfiguriert ist:
{| class="wikitable options"  
{| class="wikitable options"  
|-  
|-  
Zeile 62: Zeile 59:
|}
|}


=== Step 2 - Add Gateway Group ===
=== Schritt 2 - Gateway-Gruppe hinzufügen ===
Go to System ‣ Gateways ‣ Group and press '''+ Add Group''' in the upper right corner.
Gehen Sie zu System ‣ Gateways ‣ Gruppe und drücken Sie '''+ Gruppe hinzufügen''' in der oberen rechten Ecke.


Use the following settings:
Verwenden Sie die folgenden Einstellungen:
{| class="wikitable options"  
{| class="wikitable options"  
|-  
|-  
Zeile 90: Zeile 87:
|}
|}


; Tip
; Trigger Level
'''Trigger Level Explained'''
{| class="wikitable options"
* Member Down<br/>''Triggers when the gateway has 100% packet loss.''
|-
* Packet Loss<br/>''Triggers when the packet loss to a gateway is higher than the defined threshold.''
| Member Down || Triggers when the gateway has 100% packet loss
* High Latency<br/>''Triggers when the latency to a gateway higher than its defined threshold.''
|-
* Packet Loss or High Latency<br/>''Triggers for either of the above conditions.''
| Packet Loss || Triggers when the packet loss to a gateway is higher than the defined threshold
|-
| High Latency || Triggers when the latency to a gateway higher than its defined threshold
|-
| Packet Loss or High Latency || Triggers for either of the above conditions
|}


=== Step 3 - Configure DNS for each gateway ===
=== Schritt 3 - DNS für jedes Gateway konfigurieren ===
Go to System ‣ Settings General and make sure each gateway has its own DNS setup: like this:
Gehen Sie zu System ‣ Einstellungen Allgemein und stellen Sie sicher, dass jedes Gateway seine eigene DNS-Einstellung hat: wie hier:


DNS servers
DNS-Server
{| class="wikitable options"  
{| class="wikitable options"  
|-  
|-  
Zeile 111: Zeile 113:
|}
|}


=== Step 4 - Policy based routing ===
=== Schritt 4 - Richtlinienbasiertes Routing ===
Go to Firewall ‣ Rules
Gehen Sie zu Firewall ‣ Regeln
 
For our example we will update the default LAN pass rule. Click on the pencil next to this rule (''Default allow LAN to any rule'').


Now under '''Gateway''' change selection to ''WANGWGROUP''.
Für unser Beispiel werden wir die Standardregel für den LAN-Durchgang aktualisieren.
* Klicken Sie auf den Bleistift neben dieser Regel (''Default allow LAN to any rule'').


'''Save''' and '''Apply changes'''
Ändern Sie nun unter '''Gateway''' die Auswahl auf ''WANGWGROUP''.


; Note
'''Speichern''' und '''Änderungen übernehmen'''
:_ This rule will utilize the gateway group for all traffic coming from our LAN network. This also means that traffic intended for the firewall itself will be routed in this (wrong) direction. That is why Step 5 is needed for our DNS traffic going to and coming from our DNS forwarder on the firewall itself.


=== Step 5 - Add allow rule for DNS traffic ===
; Anmerkung
Add a rule just above the default LAN allow rule to make sure traffic to and from the firewall on port 53 (DNS) is not going to be routed to the Gateway Group that we just defined.
: Diese Regel verwendet die Gateway-Gruppe für den gesamten Verkehr, der aus unserem LAN-Netzwerk kommt.
* Das bedeutet auch, dass der Verkehr, der für die Firewall selbst bestimmt ist, in diese (falsche) Richtung geleitet wird.
* Aus diesem Grund ist Schritt 5 für den DNS-Verkehr erforderlich, der zu unserem DNS-Forwarder auf der Firewall selbst geht oder von ihm kommt.


Start with pressing the ''+'' icon in the bottom left corner.
=== Schritt 5 - Hinzufügen einer Zulässigkeitsregel für DNS-Verkehr ===
Fügen Sie eine Regel direkt oberhalb der Standard-LAN-Zulassungsregel hinzu, um sicherzustellen, dass der Verkehr von und zur Firewall an Port 53 (DNS) nicht an die soeben definierte Gateway-Gruppe weitergeleitet wird.


Enter the following details:
Beginnen Sie mit dem ''+''-Symbol in der unteren linken Ecke.


Geben Sie die folgenden Details ein:
{| class="wikitable options"  
{| class="wikitable options"  
|-  
|-  
|| '''Action'''
| Action || Pass || Allow this traffic to pass
|| Pass
|| ''Allow this traffic to pass''
|-  
|-  
|| '''Interface'''
| Interface || LAN ||
|| LAN
||
|-  
|-  
|| '''TCP/IP Version'''
| TCP/IP Version || IPv4 || For our example we use IPv4
|| IPv4
|| ''For our example we use IPv4''
|-  
|-  
|| '''Protocol'''
| Protocol || TCP/UDP || Select the right protocol
|| TCP/UDP
|| ''Select the right protocol''
|-  
|-  
|| '''Source'''
| Source || any ||
|| any
||
|-  
|-  
|| '''Destination'''
| Destination || Single host or Network ||
|| Single host or Network
||
|-  
|-  
|| '''Destination'''
| Destination || 192.168.1.1/32 0|| IP of the firewall only hence /32
|| 192.168.1.1/32
|| ''IP of the firewall only hence /32''
|-  
|-  
|| '''Destination port range'''
| Destination port range || DNS - DNS || Only DNS
|| DNS - DNS
|| ''Only DNS''
|-  
|-  
|| '''Category'''
| Category || DNS || See [https://docs.opnsense.org/manual/how-tos/fwcategory.html Organize PF Rules by Category]
|| DNS
|| ''See'' [https://docs.opnsense.org/manual/how-tos/fwcategory.html Organize PF Rules by Category]
|-  
|-  
|| '''Description'''
| Description || Local Route DNS || Freely chosen description
|| Local Route DNS
|| ''Freely chosen description''
|-  
|-  
|| '''Gateway'''
| Gateway || default || Select default
|| default
|| ''Select default''
|-
|}
|}


; Note
; Anmerkung
: When using Unbound for DNS resolution you should also enable ''Default Gateway Switching'' via '''System->Settings->General''', as local generated traffic will only use the current default gateway which will not change without this option.
: Wenn Sie Unbound für die DNS-Auflösung verwenden, sollten Sie auch ''Default Gateway Switching'' über '''System->Einstellungen->Allgemein''' aktivieren, da der lokal erzeugte Datenverkehr nur das aktuelle Standard-Gateway verwenden wird, das sich ohne diese Option nicht ändert.


=== Advanced Options ===
=== Erweiterte Optionen ===
For each gateway there are several advanced options you can use to change the default behavior/thresholds. These option can be changed under System ‣ Gateways ‣ Single, press the pencil icon next to the Gateway you want to update.
Für jedes Gateway gibt es mehrere erweiterte Optionen, mit denen Sie das Standardverhalten bzw.&nbsp;die Schwellenwerte ändern können.
* Diese Optionen können unter System ‣ Gateways ‣ Single geändert werden, indem Sie auf das Stiftsymbol neben dem Gateway drücken, das Sie aktualisieren möchten.


The current options are:
; Aktuelle Optionen
* Latency thresholds<br/>Low and high thresholds for latency in milliseconds.
{| class="wikitable sortable options"
* Packet Loss thresholds<br/>Low and high thresholds for packet loss in %.
|-
* Probe Interval<br/>How often that an ICMP probe will be sent in seconds.
! Option !! Beschreibung
* Down<br/>The number of seconds of failed probes before the alarm will fire.
|-
* Avg Delay Replies Qty<br/>How many replies should be used to compute average delay for controlling “delay” alarms?
|  Latenz-Schwellenwerte || Niedrige und hohe Schwellenwerte für die Latenzzeit in Millisekunden.
* Avg Packet Loss Probes Qty<br/>How many probes should be used to compute average packet loss.
|-
* Lost Probe Delay<br/>The delay (in qty of probe samples) after which loss is computed.
|  Paketverlust-Schwellenwerte || Niedrige und hohe Schwellenwerte für den Paketverlust in %.
|-
Probe Intervall || Wie oft eine ICMP-Sonde gesendet wird, in Sekunden.
|-
|  Herunterfahren || Die Anzahl der Sekunden nach fehlgeschlagenen Probes, bevor der Alarm ausgelöst wird.
|-
Avg Delay Replies Qty || Wie viele Antworten sollen zur Berechnung der durchschnittlichen Verzögerung für die Kontrolle von "Delay"-Alarmen verwendet werden?
|-
Avg Packet Loss Probes Qty || Wie viele Sonden sollen für die Berechnung des durchschnittlichen Paketverlustes verwendet werden.
|-
Lost Probe Delay || Die Verzögerung (in Anzahl der Probe Samples), nach der der Verlust berechnet wird.
|}


== Configure Load Balancing ==
== Lastausgleich konfigurieren ==
To setup load balancing follow the same configuration procedure as for Failover, but in step 2 choose same '''Tier''' for both Gateways.
Um den Lastausgleich einzurichten, folgen Sie der gleichen Konfigurationsprozedur wie für Failover, aber wählen Sie in Schritt 2 für beide Gateways die gleiche '''Stufe'''.


This will change the behavior from failover to equal balancing between the two gateways.
Dadurch ändert sich das Verhalten von Failover zu gleichem Ausgleich zwischen den beiden Gateways.


=== Sticky Connection ===
=== Sticky Connection ===
Some web sites don’t like changing request IPs for the same session, this may lead to unexpected behavior. To solve this you can use the option '''Sticky Connections''', this will make sure each subsequent request from the same user to the same website is send through the same gateway.
Einige Websites mögen es nicht, wenn sich die Anfrage-IPs für dieselbe Sitzung ändern, da dies zu unerwartetem Verhalten führen kann.  
* Um dieses Problem zu lösen, können Sie die Option '''Sticky Connections''' verwenden, die dafür sorgt, dass jede nachfolgende Anfrage desselben Benutzers an dieselbe Website über dasselbe Gateway gesendet wird.
 
Diese Option kann unter Firewall ‣ Einstellungen ‣ Erweitert eingestellt werden.


To set this option can be set under Firewall ‣ Settings ‣ Advanced.
=== Ungleiche Balancierung (Gewicht) ===
Wenn Sie eine nicht symmetrische Einrichtung haben, bei der ein IPS eine viel höhere Bandbreite hat als das andere, können Sie für jedes Gateway eine Gewichtung festlegen, um den Lastausgleich zu ändern.
* Wenn Sie z.&nbsp;B.&nbsp;eine Leitung mit 10 Mbit/s und eine mit 20 Mbit/s haben, setzen Sie die Gewichtung der ersten Leitung auf 1 und die der zweiten auf 2.
* Auf diese Weise erhält das zweite Gateway doppelt so viel Datenverkehr wie das erste.


=== Unequal Balancing (Weight) ===
Gehen Sie dazu zu System ‣ Gateways ‣ Single und drücken Sie auf das Stiftsymbol neben dem Gateway, das Sie aktualisieren möchten.
If you have a non symmetric setup with one IPS having a much higher bandwidth than the other then you can set a weight on each gateway to change the load balance. For instance if you have one line of 10 Mbps and one of 20 Mbps then set the weight of the first one to 1 and the second one to 2. This way the second gateway will get twice as many traffic to handle than the first.
* Die Gewichtung wird unter dem Abschnitt "Erweitert" definiert.


To do so, go to System ‣ Gateways ‣ Single and press the pencil icon next to the Gateway you want to update. The weight is defined under the advanced section.
== Kombination von Lastausgleich und Ausfallsicherung ==
Um Load Balancing mit Failover zu kombinieren, benötigen Sie 2 oder mehr WAN-Verbindungen für Balancing-Zwecke und 1 oder mehr für Failover.
* OPNsense bietet 5 Ebenen (Failover-Gruppen), wobei jede Ebene mehrere ISPs/WAN-Gateways enthalten kann.


== Combining Balancing & Failover ==
[[Kategorie:OPNsense/System]]
To combine Load Balancing with Failover you will have 2 or more WAN connections for Balancing purposes and 1 or more for Failover. OPNsense offers 5 tiers (Failover groups) each tier can hold multiple ISPs/WAN gateways.

Aktuelle Version vom 28. Mai 2023, 22:09 Uhr

Multi WAN Szenarien werden üblicherweise für Failover oder Load Balancing verwendet, aber auch Kombinationen sind mit OPNsense möglich

Failover konfigurieren

Um Failover einzurichten, werden die folgenden Schritte durchgeführt
  1. Hinzufügen von Monitor-IPs zu den Gateways
  2. Fügen Sie eine Gateway-Gruppe hinzu.
  3. Konfigurieren Sie DNS für jedes Gateway.
  4. Verwenden Sie richtlinienbasiertes Routing, um unsere Gateway-Gruppe zu nutzen.
  5. Hinzufügen einer Firewall-Regel für DNS-Verkehr, der für die Firewall selbst bestimmt ist.
Suchen der richtigen Seite mit dem Suchfeld

Beispielkonfiguration

In unserem Beispiel wurden zwei bereits konfigurierte WAN-Gateways verwendet, die beide separat funktionieren.

  • Als DNS und Monitor-IPs werden wir die DNS-Dienste 8.8.8.8 und 8.8.4.4 von Google verwenden, natürlich können Sie auch Ihre eigenen 'bekannt guten' Einstellungen verwenden.

Wir haben WAN und WAN2 definiert, wobei WAN unser primäres (Standard-)Gateway sein wird.

Schritt 1 - Überwachungs-IPs hinzufügen

Sie können diesen Schritt überspringen, wenn Sie die Überwachungs-IP bereits eingerichtet haben und beide Gateways als online angezeigt werden.

Um eine Überwachungs-IP hinzuzufügen, gehen Sie zu System ‣ Gateways ‣ Single und klicken Sie auf das erste Stiftsymbol, um das erste Gateway zu bearbeiten.

Stellen Sie nun sicher, dass Folgendes konfiguriert ist:

Disable Gateway Monitoring Unchecked Make sure monitoring is enabled
Monitor IP 8.8.8.8 We use Google’s DNS
Mark Gateway as Down Unchecked

Klicken Sie dann auf das zweite Bleistiftsymbol, um das zweite Gateway zu bearbeiten.

Stellen Sie nun sicher, dass Folgendes konfiguriert ist:

Disable Gateway Monitoring Unchecked Make sure monitoring is enabled
Monitor IP 8.8.4.4 We use Google’s second DNS
Mark Gateway as Down Unchecked

Schritt 2 - Gateway-Gruppe hinzufügen

Gehen Sie zu System ‣ Gateways ‣ Gruppe und drücken Sie + Gruppe hinzufügen in der oberen rechten Ecke.

Verwenden Sie die folgenden Einstellungen:

Group Name WANGWGROUP Enter a name for the gw routing later on
Gateway Priority WANGW / Tier 1 Select the first gateway and Tier 1
.. WAN2GW / Tier 2 Select the second gateway and Tier 2
Trigger Level Packet Loss Select the trigger you want to use
Description Failover Group Freely chosen description
Trigger Level
Member Down Triggers when the gateway has 100% packet loss
Packet Loss Triggers when the packet loss to a gateway is higher than the defined threshold
High Latency Triggers when the latency to a gateway higher than its defined threshold
Packet Loss or High Latency Triggers for either of the above conditions

Schritt 3 - DNS für jedes Gateway konfigurieren

Gehen Sie zu System ‣ Einstellungen ‣ Allgemein und stellen Sie sicher, dass jedes Gateway seine eigene DNS-Einstellung hat: wie hier:

DNS-Server

8.8.8.8 WANGW
8.8.4.4 WAN2GW

Schritt 4 - Richtlinienbasiertes Routing

Gehen Sie zu Firewall ‣ Regeln

Für unser Beispiel werden wir die Standardregel für den LAN-Durchgang aktualisieren.

  • Klicken Sie auf den Bleistift neben dieser Regel (Default allow LAN to any rule).

Ändern Sie nun unter Gateway die Auswahl auf WANGWGROUP.

Speichern und Änderungen übernehmen

Anmerkung
Diese Regel verwendet die Gateway-Gruppe für den gesamten Verkehr, der aus unserem LAN-Netzwerk kommt.
  • Das bedeutet auch, dass der Verkehr, der für die Firewall selbst bestimmt ist, in diese (falsche) Richtung geleitet wird.
  • Aus diesem Grund ist Schritt 5 für den DNS-Verkehr erforderlich, der zu unserem DNS-Forwarder auf der Firewall selbst geht oder von ihm kommt.

Schritt 5 - Hinzufügen einer Zulässigkeitsregel für DNS-Verkehr

Fügen Sie eine Regel direkt oberhalb der Standard-LAN-Zulassungsregel hinzu, um sicherzustellen, dass der Verkehr von und zur Firewall an Port 53 (DNS) nicht an die soeben definierte Gateway-Gruppe weitergeleitet wird.

Beginnen Sie mit dem +-Symbol in der unteren linken Ecke.

Geben Sie die folgenden Details ein:

Action Pass Allow this traffic to pass
Interface LAN
TCP/IP Version IPv4 For our example we use IPv4
Protocol TCP/UDP Select the right protocol
Source any
Destination Single host or Network
Destination 192.168.1.1/32 0 IP of the firewall only hence /32
Destination port range DNS - DNS Only DNS
Category DNS See Organize PF Rules by Category
Description Local Route DNS Freely chosen description
Gateway default Select default
Anmerkung
Wenn Sie Unbound für die DNS-Auflösung verwenden, sollten Sie auch Default Gateway Switching über System->Einstellungen->Allgemein aktivieren, da der lokal erzeugte Datenverkehr nur das aktuelle Standard-Gateway verwenden wird, das sich ohne diese Option nicht ändert.

Erweiterte Optionen

Für jedes Gateway gibt es mehrere erweiterte Optionen, mit denen Sie das Standardverhalten bzw. die Schwellenwerte ändern können.

  • Diese Optionen können unter System ‣ Gateways ‣ Single geändert werden, indem Sie auf das Stiftsymbol neben dem Gateway drücken, das Sie aktualisieren möchten.
Aktuelle Optionen
Option Beschreibung
Latenz-Schwellenwerte Niedrige und hohe Schwellenwerte für die Latenzzeit in Millisekunden.
Paketverlust-Schwellenwerte Niedrige und hohe Schwellenwerte für den Paketverlust in %.
Probe Intervall Wie oft eine ICMP-Sonde gesendet wird, in Sekunden.
Herunterfahren Die Anzahl der Sekunden nach fehlgeschlagenen Probes, bevor der Alarm ausgelöst wird.
Avg Delay Replies Qty Wie viele Antworten sollen zur Berechnung der durchschnittlichen Verzögerung für die Kontrolle von "Delay"-Alarmen verwendet werden?
Avg Packet Loss Probes Qty Wie viele Sonden sollen für die Berechnung des durchschnittlichen Paketverlustes verwendet werden.
Lost Probe Delay Die Verzögerung (in Anzahl der Probe Samples), nach der der Verlust berechnet wird.

Lastausgleich konfigurieren

Um den Lastausgleich einzurichten, folgen Sie der gleichen Konfigurationsprozedur wie für Failover, aber wählen Sie in Schritt 2 für beide Gateways die gleiche Stufe.

Dadurch ändert sich das Verhalten von Failover zu gleichem Ausgleich zwischen den beiden Gateways.

Sticky Connection

Einige Websites mögen es nicht, wenn sich die Anfrage-IPs für dieselbe Sitzung ändern, da dies zu unerwartetem Verhalten führen kann.

  • Um dieses Problem zu lösen, können Sie die Option Sticky Connections verwenden, die dafür sorgt, dass jede nachfolgende Anfrage desselben Benutzers an dieselbe Website über dasselbe Gateway gesendet wird.

Diese Option kann unter Firewall ‣ Einstellungen ‣ Erweitert eingestellt werden.

Ungleiche Balancierung (Gewicht)

Wenn Sie eine nicht symmetrische Einrichtung haben, bei der ein IPS eine viel höhere Bandbreite hat als das andere, können Sie für jedes Gateway eine Gewichtung festlegen, um den Lastausgleich zu ändern.

  • Wenn Sie z. B. eine Leitung mit 10 Mbit/s und eine mit 20 Mbit/s haben, setzen Sie die Gewichtung der ersten Leitung auf 1 und die der zweiten auf 2.
  • Auf diese Weise erhält das zweite Gateway doppelt so viel Datenverkehr wie das erste.

Gehen Sie dazu zu System ‣ Gateways ‣ Single und drücken Sie auf das Stiftsymbol neben dem Gateway, das Sie aktualisieren möchten.

  • Die Gewichtung wird unter dem Abschnitt "Erweitert" definiert.

Kombination von Lastausgleich und Ausfallsicherung

Um Load Balancing mit Failover zu kombinieren, benötigen Sie 2 oder mehr WAN-Verbindungen für Balancing-Zwecke und 1 oder mehr für Failover.

  • OPNsense bietet 5 Ebenen (Failover-Gruppen), wobei jede Ebene mehrere ISPs/WAN-Gateways enthalten kann.