Zum Inhalt springen

Linux/Netzwerk/Bridging: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „BASEPAGENAME}}}}“ durch „BASEPAGENAME}}/}}“
 
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 3: Zeile 3:
== Beschreibung ==
== Beschreibung ==
Bridging ist sehr beliebt, wenn ein Server für eine hohe Verfügbarkeit oder mit Virtualisierung an mehrere Switches angeschlossen wird
Bridging ist sehr beliebt, wenn ein Server für eine hohe Verfügbarkeit oder mit Virtualisierung an mehrere Switches angeschlossen wird
* Im letzteren Fall wird es normalerweise verwendet, um eine Brücke im Host (z. B. dom0) zu erstellen und die virtuellen Schnittstellen der Gäste (domU) in die Brücke einzufügen
* Im letzteren Fall wird es normalerweise verwendet, um eine Brücke im Host (beispielsweise dom0) zu erstellen und die virtuellen Schnittstellen der Gäste (domU) in die Brücke einzufügen
* Das Paket [https://packages.debian.org/bridge-utilsbridge-utils bridge-utilsbridge-utils] ist erforderlich, um überbrückte Schnittstellen zu erstellen
* Das Paket [https://packages.debian.org/bridge-utilsbridge-utils bridge-utilsbridge-utils] ist erforderlich, um überbrückte Schnittstellen zu erstellen


; Beispiel
; Beispiel
Verbinden Sie einen Server mit 2 Switches (über eth0 und eth1), indem Sie Bridge 0 definieren und dem Server eine IP-Adresse in diesem Subnetz zuweisen
Verbinden Sie einen Server mit 2 Switches (über eth0 und eth1), indem Sie Bridge 0 definieren und dem Server eine IP-Adresse in diesem Subnetz zuweisen
<syntaxhighlight lang="bash" highlight="1" line>
<syntaxhighlight lang="bash" highlight="1" line copy>
auto br0
auto br0
iface br0 inet static
iface br0 inet static
Zeile 18: Zeile 18:


Wenn ein Server mit mehreren Switches verbunden ist, muss normalerweise das Spanning Tree Protocol ausgeführt werden, um Schleifen zu vermeiden
Wenn ein Server mit mehreren Switches verbunden ist, muss normalerweise das Spanning Tree Protocol ausgeführt werden, um Schleifen zu vermeiden
* Daher muss STP wie oben gezeigt über einen „up“-Befehl aktiviert werden
* Daher muss STP wie oben gezeigt über einen "up"-Befehl aktiviert werden


; Beispiel
; Beispiel
Bridge-Einrichtung ohne IP-Adresskonfiguration (verwenden Sie „manual“ anstelle von „static“), um eine Schnittstelle an eine Gast-VM weiterzuleiten. (Die statische Bridge-Konfiguration enthält nur eine physische Schnittstelle
Bridge-Einrichtung ohne IP-Adresskonfiguration (verwenden Sie "manual" anstelle von "static"), um eine Schnittstelle an eine Gast-VM weiterzuleiten. (Die statische Bridge-Konfiguration enthält nur eine physische Schnittstelle
* Die virtuelle Schnittstelle wird der Bridge hinzugefügt, wenn die VM gestartet wird.)
* Die virtuelle Schnittstelle wird der Bridge hinzugefügt, wenn die VM gestartet wird.)
<syntaxhighlight lang="bash" highlight="1" line>
<syntaxhighlight lang="bash" highlight="1" line copy>
auto br1
auto br1
iface br1 inet manual
iface br1 inet manual
Zeile 34: Zeile 34:
: Die Linux-Bridge unterstützt nur STP, kein RSTP (Rapid Spanning Tree)
: Die Linux-Bridge unterstützt nur STP, kein RSTP (Rapid Spanning Tree)
* Daher unterstützt sie nur die alten STP-Kosten, nicht die neuen RSTP-Kosten (siehe [https://en.wikipedia.org/wiki/Spanning_Tree_Protocol#Data_rate_and_STP_path_costSpanning_Tree_Protocol])
* Daher unterstützt sie nur die alten STP-Kosten, nicht die neuen RSTP-Kosten (siehe [https://en.wikipedia.org/wiki/Spanning_Tree_Protocol#Data_rate_and_STP_path_costSpanning_Tree_Protocol])
* Bei Cisco-Switches ist dies normalerweise in Ordnung, aber z.&nbsp;B.&nbsp;verwenden Juniper-Switches die RSTP-Kosten, was zu unterschiedlichen Spanning-Tree-Berechnungen und Schleifenproblemen führen kann
* Bei Cisco-Switches ist dies normalerweise in Ordnung, aber beispielsweise verwenden Juniper-Switches die RSTP-Kosten, was zu unterschiedlichen Spanning-Tree-Berechnungen und Schleifenproblemen führen kann
* Dies kann durch manuelles Einstellen der Kosten behoben werden, entweder auf dem Switch oder auf dem Server
* Dies kann durch manuelles Einstellen der Kosten behoben werden, entweder auf dem Switch oder auf dem Server
* Die Einstellung der Kosten auf dem Switch wird bevorzugt, da Linux bei jedem Herunterfahren/Hochfahren einer Schnittstelle zu den Standardkosten zurückkehrt
* Die Einstellung der Kosten auf dem Switch wird bevorzugt, da Linux bei jedem Herunterfahren/Hochfahren einer Schnittstelle zu den Standardkosten zurückkehrt
Zeile 40: Zeile 40:
=== Bridging ohne Switching ===
=== Bridging ohne Switching ===
Standardmäßig verhält sich die Linux-Bridge wie ein Switch
Standardmäßig verhält sich die Linux-Bridge wie ein Switch
* Das bedeutet, dass sie sich die MAC-Adressen hinter einem Switch-Port merkt und Datenpakete nur an den entsprechenden Port weiterleitet, wenn die Ziel-MAC-Adresse bekannt ist andernfalls werden die Pakete gesendet
* Das bedeutet, dass sie sich die MAC-Adressen hinter einem Switch-Port merkt und Datenpakete nur an den entsprechenden Port weiterleitet, wenn die Ziel-MAC-Adresse bekannt ist - andernfalls werden die Pakete gesendet


In einigen Konfigurationen ist dies nicht wünschenswert
In einigen Konfigurationen ist dies nicht wünschenswert
* Wenn die Bridge beispielsweise zwei Trunk-Schnittstellen verbindet und dieselben MAC-Adressen von beiden Schnittstellen aus gesehen werden können, je nach VLAN
* Wenn die Bridge beispielsweise zwei Trunk-Schnittstellen verbindet und dieselben MAC-Adressen von beiden Schnittstellen aus gesehen werden können, je nach VLAN
* Da die Linux-Bridge keine VLANs unterstützt (dedizierte MAC-Adresstabellen für jedes VLAN), müssen Sie in solchen Konfigurationen das Lernen der MAC-Adressen deaktivieren und die Bridge in einen echten „Bridge“-Modus versetzen, und zwar mit
* Da die Linux-Bridge keine VLANs unterstützt (dedizierte MAC-Adresstabellen für jedes VLAN), müssen Sie in solchen Konfigurationen das Lernen der MAC-Adressen deaktivieren und die Bridge in einen echten "Bridge"-Modus versetzen, und zwar mit
<syntaxhighlight lang="bash" highlight="1-2" line>
<syntaxhighlight lang="bash" highlight="1-2" line copy>
up /sbin/brctl setageing br0 0
up /sbin/brctl setageing br0 0
up /sbin/brctl stp br0 off
up /sbin/brctl stp br0 off
Zeile 55: Zeile 55:
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
==== Links ====
=== Links ===
===== Weblinks =====
==== Weblinks ====


[[Kategorie:Linux/Netzwerk/Konfiguration]]
[[Kategorie:Linux/Netzwerk/Konfiguration]]


</noinclude>
</noinclude>

Aktuelle Version vom 15. Oktober 2025, 10:18 Uhr

Linux/Netzwerk/Konfiguration/Bridging - Bridging fasst mehrere Schnittstellen in einem Netzwerksegment zusammen

Beschreibung

Bridging ist sehr beliebt, wenn ein Server für eine hohe Verfügbarkeit oder mit Virtualisierung an mehrere Switches angeschlossen wird

  • Im letzteren Fall wird es normalerweise verwendet, um eine Brücke im Host (beispielsweise dom0) zu erstellen und die virtuellen Schnittstellen der Gäste (domU) in die Brücke einzufügen
  • Das Paket bridge-utilsbridge-utils ist erforderlich, um überbrückte Schnittstellen zu erstellen
Beispiel

Verbinden Sie einen Server mit 2 Switches (über eth0 und eth1), indem Sie Bridge 0 definieren und dem Server eine IP-Adresse in diesem Subnetz zuweisen

auto br0
iface br0 inet static
address 10.10.0.15/24
gateway 10.10.0.1
bridge_ports eth0 eth1
up /usr/sbin/brctl stp br0 on

Wenn ein Server mit mehreren Switches verbunden ist, muss normalerweise das Spanning Tree Protocol ausgeführt werden, um Schleifen zu vermeiden

  • Daher muss STP wie oben gezeigt über einen "up"-Befehl aktiviert werden
Beispiel

Bridge-Einrichtung ohne IP-Adresskonfiguration (verwenden Sie "manual" anstelle von "static"), um eine Schnittstelle an eine Gast-VM weiterzuleiten. (Die statische Bridge-Konfiguration enthält nur eine physische Schnittstelle

  • Die virtuelle Schnittstelle wird der Bridge hinzugefügt, wenn die VM gestartet wird.)
auto br1
iface br1 inet manual
bridge_ports eth4
up /usr/sbin/brctl setageing br1 0
up /usr/sbin/brctl stp br1 off
Hinweis
Die Linux-Bridge unterstützt nur STP, kein RSTP (Rapid Spanning Tree)
  • Daher unterstützt sie nur die alten STP-Kosten, nicht die neuen RSTP-Kosten (siehe [1])
  • Bei Cisco-Switches ist dies normalerweise in Ordnung, aber beispielsweise verwenden Juniper-Switches die RSTP-Kosten, was zu unterschiedlichen Spanning-Tree-Berechnungen und Schleifenproblemen führen kann
  • Dies kann durch manuelles Einstellen der Kosten behoben werden, entweder auf dem Switch oder auf dem Server
  • Die Einstellung der Kosten auf dem Switch wird bevorzugt, da Linux bei jedem Herunterfahren/Hochfahren einer Schnittstelle zu den Standardkosten zurückkehrt

Bridging ohne Switching

Standardmäßig verhält sich die Linux-Bridge wie ein Switch

  • Das bedeutet, dass sie sich die MAC-Adressen hinter einem Switch-Port merkt und Datenpakete nur an den entsprechenden Port weiterleitet, wenn die Ziel-MAC-Adresse bekannt ist - andernfalls werden die Pakete gesendet

In einigen Konfigurationen ist dies nicht wünschenswert

  • Wenn die Bridge beispielsweise zwei Trunk-Schnittstellen verbindet und dieselben MAC-Adressen von beiden Schnittstellen aus gesehen werden können, je nach VLAN
  • Da die Linux-Bridge keine VLANs unterstützt (dedizierte MAC-Adresstabellen für jedes VLAN), müssen Sie in solchen Konfigurationen das Lernen der MAC-Adressen deaktivieren und die Bridge in einen echten "Bridge"-Modus versetzen, und zwar mit
up /sbin/brctl setageing br0 0
up /sbin/brctl stp br0 off


Anhang

Siehe auch

Links

Weblinks