Der Linux-Kernel stellt uns Module zur Verfügung, um Netzwerk-Bonding durchzuführen. Dieses Tutorial erklärt, wie Sie das Linux Bonding Module verwenden, um mehrere Netzwerkschnittstellen zu einer einzigen Schnittstelle zu verbinden.
Bevor wir in das Terminal eintauchen und die Netzwerkbindung aktivieren, lassen Sie uns die Schlüsselkonzepte der Netzwerkbindung besprechen.
Arten der Netzwerkbindung
Es gibt sechs Arten von Netzwerkbindungen. Sie sind:
- Modus =0 – Dies ist der Standardbindungstyp. Es basiert auf der Round-Robin-Policy (von der ersten bis zur letzten Schnittstelle) und bietet Fehlertoleranz- und Load-Balancing-Funktionen.
- Modus =1 – Diese Art der Bindung basiert auf der Active Backup-Richtlinie (nur eine Schnittstelle ist aktiv und die andere wird bis zum Ausfall aktiviert). Dieser Modus kann Fehlertoleranz bieten.
- Modus =2 – Diese Art der Bündelung bietet Funktionen wie Lastenausgleich und Fehlertoleranz. Es stellt einen XOR-Modus ein, der eine XOR-Operation der Quell-MAC-Adresse mit der Ziel-MAC-Adresse durchführt.
- Modus =3 – Modus 3 basiert auf einer Broadcast-Policy, bei der alle Pakete an alle Schnittstellen übertragen werden. Dieser Modus ist kein typischer Verbindungsmodus und gilt nur für bestimmte Instanzen.
- Modus =4 – Mode 4 oder Dynamic Link Aggregation-Modus erstellen Aggregationsgruppen mit der gleichen Geschwindigkeit. Die Schnittstellenauswahl für ausgehenden Datenverkehr basiert auf dem Send-Hashing-Verfahren. Sie können die Hash-Methode von XOR mit xmit_hash_policy ändern. Es erfordert einen Switch mit 802.3ad Dynamic Link
- Modus =5 – In diesem Modus bestimmt die aktuelle Last auf jeder Schnittstelle die Verteilung der ausgehenden Pakete. Die aktuelle Schnittstelle empfängt die eingehenden Pakete. Wenn die aktuelle Schnittstelle die eingehenden Pakete nicht empfängt, wird sie durch die MAC-Adresse einer anderen Schnittstelle ersetzt. Es wird auch als adaptiver Lastausgleich bei der Übertragung bezeichnet.
- Modus =6 – Diese Art des Ausgleichs wird auch als adaptiver Lastausgleich bezeichnet. Es verfügt über einen ausgleichenden Sendelastausgleich und einen Empfangslastausgleich. Der empfangende Load Balancer verwendet ARP-Aushandlung. Der Netzwerkbindungstreiber fängt die ARP-Antworten vom lokalen Gerät ab und überschreibt die Quelladresse mit einer eindeutigen Adresse einer der Schnittstellen in der Bindung. Dieser Modus erfordert keine Switch-Unterstützung.
So konfigurieren Sie die Netzwerkverbindung unter Ubuntu
Lassen Sie uns in das Terminal eintauchen und die Netzwerkbindung in Ubuntu konfigurieren. Bevor wir beginnen, vergewissern Sie sich, dass Sie Folgendes haben:
- Ein Root- oder Sudo-Benutzerkonto
- Zwei oder mehr Netzwerkschnittstellen
Bondmodul installieren
Stellen Sie sicher, dass das Bonding-Modul in Ihrem Kernel installiert und aktiviert ist. Verwenden Sie den lsmod-Befehl als:
sudo lsmod | grep-LinkVerbindung 180224 1
Wenn das Modul nicht verfügbar ist, verwenden Sie den folgenden Befehl, um es zu installieren.
sudo apt-get if slave installierenEphemere Bindung
Über zwei Schnittstellen in Ihrem System können Sie temporäres Network Bonding einrichten. Laden Sie dazu zunächst den Bonding-Treiber.
sudo Modprobe-BindungLassen Sie uns im nächsten Schritt die Namen der Ethernet-Schnittstellen in unseren Systemen abrufen. Verwenden Sie den Befehl:
sudo ifconfigDer obige Befehl zeigt die Schnittstellen im System. Eine Beispielausgabe finden Sie im Bild unten:
Lassen Sie uns nun eine Netzwerkbindung mit dem ip-Befehl wie folgt erstellen:
sudo ifconfig ens33 downsudo ifconfig ens36 weiter unten
sudo IP-Link Bond0 hinzufügen Typ Bindungsmodus 802.3ad
Fügen Sie abschließend die beiden Schnittstellen hinzu:
sudo IP-Link zum Anpassen von ens33 Master Loan0sudo IP-Link zum Anpassen von ens36 Master Loan0
Um die erfolgreiche Erstellung der Bindung zu bestätigen, verwenden Sie den Befehl:
sudo-IP-Link
HINWEIS: Das Erstellen einer Bindung wie oben gezeigt überlebt einen Neustart nicht.
Dauerhafte Bindung
Wir müssen die Konfigurationsdatei der Schnittstelle bearbeiten und die Bindungseinstellungen hinzufügen, um eine permanente Bindung zu erstellen.
sudo vim /etc/network/interfacesFügen Sie der Datei die folgende Konfiguration hinzu.
automatisch ens33iface ens33 inet-Handbuch
automatisch ens36
iface ens36 inet-Handbuch
Auto-Bond0
iface bond inet statisch
Adresse 192.168.0.253
Netzmaske 255.255.255.0
Gateway 192.168.0.1
DNS-Suche domainname.local
Slaves ens33 ens36
bond_mode 4.
Bond-Miimon 100
Bonddown-Verzögerung 0
Bond-Update 0
HINWEIS: Stellen Sie sicher, dass die Schnittstellen mit Bond =4 kompatibel sind. Wenn nicht, können Sie stattdessen Bond =0 verwenden. Möglicherweise müssen Sie auch die beiden Schnittstellen herunterfahren und die Verbindung aktivieren.
Verwenden Sie den folgenden Befehl, um die Bindung zu aktivieren.
sudo ifconfig ens33 down &&sudo ifconfig ens36 below &sudo ifconfig Bond0 upsudo Dienst Netzwerkmanager neu starten
Um zu bestätigen, dass die Schnittstelle betriebsbereit ist, verwenden Sie den Befehl:
sudo ifconfig Bond0
Um den Status der Bindung anzuzeigen, verwenden Sie den Befehl als:
sudo cat /proc/network/link/Bond0Hier ist eine Beispielausgabe:
Endlich
Dieser Leitfaden führte Sie durch die Einrichtung von Netzwerkbindungen in Ubuntu- und Debian-basierten Distributionen. Detaillierte Informationen zum Kleben finden Sie in der Dokumentation.