Mein Verständnis einer Netzwerkbrücke besteht darin, eine Art "virtuellen Switch" zu haben, der die Netzwerkgeräte (die der Bridge hinzugefügt wurden) virtuell verbindet, als würde ich sie mit Kabeln an einen realen Switch anschließen ... aber irgendetwas muss nicht stimmen Diese Art von Analogie, da ich aus irgendeinem Grund meine IP-Adresse auf dem Bridge-Gerät einstellen muss.
Beispiel
Nehmen wir zum Beispiel das folgende Setup: Ich habe eine Maschine, die als Host für mehrere virtuelle Maschinen fungiert (mit eigenen virtuellen Netzwerkgeräten vnet0, vnet1, vnet2, ...). Diese Maschine verfügt über eine physische Netzwerkschnittstelle eth0, die ich für alle virtuellen Maschinen und meine Host-Maschine verwenden möchte, um mit der Außenwelt zu kommunizieren.
Da mein Host-Computer eine IP-Adresse haben soll, würde ich daher denken, dass ich diese IP (inkl. Standard-Gateway, DNS-Server, ...) auf eth0 konfigurieren sollte. Dann würde ich eine Brücke br0 erstellen und alle Schnittstellen (eth0, vnet0, vnet1, vnet2, ..) zu dieser Brücke hinzufügen. Das funktioniert nicht ...
Stattdessen muss ich die Bridge br0 so konfigurieren, dass sie die IP-Adresse meines Host-Computers hat (und auch das Standard-Gateway und die DNS-Server konfiguriert hat) und dann alle Schnittstellen (eth0, vnet0, vnet2, ...) zur Bridge br0 hinzufügen .
Nun, ... das funktioniert. Aber ich frage mich eigentlich, warum das Definieren der IP auf eth0 nicht funktioniert. Mir scheint ein grundlegendes Wissen darüber zu fehlen, wie dies tatsächlich funktioniert. Ich würde mich also freuen, wenn mir jemand erklären könnte, was daran falsch ist. Normalerweise möchte ich wirklich verstehen, wie diese Dinge funktionieren. Ich würde mich freuen, wenn Sie mit Protokollen ins Detail gehen.
Antworten:
Du warst ein sehr ähnliches Q in UL: /unix/86056/why-does-linux-require-moving-ip-from-eth-interface-to-bridge-interface
Die Analyse lautet, dass die ETH einem Uplink-L1-Kabel ähnelt.
quelle