ubuntuusers.de

Netzwerkbrücke (Bridge)

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |
Dieses Thema ist die Diskussion des Artikels Netzwerkbrücke.

otzenpunk Team-Icon

Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

Baustelle/Netzwerkbrücke ist aus meiner Sicht fertig.

otzenpunk Team-Icon

(Themenstarter)
Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

*push*

Ist der Artikel wirklich so perfekt, dass es keine Anmerkungen gibt? 😉

Dee Team-Icon

Avatar von Dee

Anmeldungsdatum:
9. Februar 2006

Beiträge: 20095

Wohnort: Schwabenländle

Passt scho... 😉

Nur bitte setze doch in Zukunft auch vor die Zahlen [1] ein Leerzeichen.

Gruß, Dee

otzenpunk Team-Icon

(Themenstarter)
Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

Ok, danke.

Dann bring ich den mal in den öffentlichen Teil.

martti

Anmeldungsdatum:
10. April 2007

Beiträge: Zähle...

Folgendes zur Situation

Ich habe meinen Drucker an eth1 angeschlossen, und hatte den router an eth0. Jetzt habe ich mir gedacht, na gut, dann holst du dir, lieber Drucker im Netzwerk eine eigene IP. Jetzt bin ich die Sache zuerst manuell angegangen (gemäss der englischen Seite, https://help.ubuntu.com/community/NetworkConnectionBridge ):

1
2
3
4
5
6
brctl addbr bridge0
brctl addif bridge0 eth0
brctl addif bridge0 eth1
ifconfig bridge0 up
route add default gw 192.168.1.1
dhclient bridge0

Das hat erstaunlicherweise prima funktioniert. Dann ist das ja eigentlich nur eine temporäre Konfiguration, also, sage ich mir, machen wir daraus eine dauerhafte. Nach längerem Surfen bin ich auf folgende Lösung gekommen (/etc/network/interfaces, von https://help.ubuntu.com/community/NetworkMonitoringBridge ):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

auto bridge0
iface bridge0 inet dhcp
  pre-up ifconfig eth0 down
  pre-up ifconfig eth1 down
  pre-up brctl addbr bridge0
  pre-up brctl addif bridge0 eth0
  pre-up brctl addif bridge0 eth1
  pre-up ifconfig eth0 0.0.0.0
  pre-up ifconfig eth1 0.0.0.0
  post-down ifconfig eth0 down
  post-down ifconfig eth1 down
  post-down ifconfig bridge0 down
  post-down brctl delif bridge0 eth0
  post-down brctl delif bridge0 eth1
  post-down brctl delbr bridge0

Tatsächlich hat diese Einstellung nicht richtig funktioniert. Das Interface eth0 hat sich irgendwie trotzdem selbständig konfiguriert und über bridge0 hatte ich im gleichen Netzwerk plötzlich eine zweite IP-Adresse. Ich bin zum Schluss gekommen, dass diese Konfiguration unter anderem veraltet war, da sie diese eigenartigen pre-ups und post-downs enthielt und da route mir plötzlich zwei default-Gateways anzeigte.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
$ ping www.google.ch
PING www.l.google.com (74.125.43.104) 56(84) bytes of data.
From martti64.local (192.168.1.39) icmp_seq=1 Destination Host Unreachable
From martti64.local (192.168.1.39) icmp_seq=2 Destination Host Unreachable
$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 bridge0
192.168.1.0     *               255.255.255.0   U     1      0        0 eth0
link-local      *               255.255.0.0     U     1000   0        0 bridge0
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
default         192.168.1.1     0.0.0.0         UG    100    0        0 bridge0

Nach einigen weiteren recherchen habe ich folgende Lösung erfrickelt, die ich mit der Community gern teilen würde - die da in /etc/network/interfaces zu finden wäre:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
auto eth1
auto bridge0

iface eth0 inet manual
iface eth1 inet manual

iface bridge0 inet dhcp
	bridge_ports eth0 eth1

EDIT: Auf den zweiten Blick habe ich jetzt gemerkt, dass im Wiki sogar empfohlen wird die

 auto <iface> 

Definition der beteiligten Interfaces auszukommentieren. Das ist definitiv falsch, da sich diese Dinger leider von allein (samt dhcp) zu konfigurieren scheinen, und deswegen sollte

 auto <iface>
iface <iface> inet manual 

für die beteiligten Interfaces eingetragen werden. Diese Änderung ist plausibel, und funktioniert bei mir von Anfang an.

Kann das jemand bestätigen?

otzenpunk Team-Icon

(Themenstarter)
Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

martti schrieb:

EDIT: Auf den zweiten Blick habe ich jetzt gemerkt, dass im Wiki sogar empfohlen wird die

 auto <iface> 

Definition der beteiligten Interfaces auszukommentieren. Das ist definitiv falsch, da sich diese Dinger leider von allein (samt dhcp) zu konfigurieren scheinen,

Nur, wenn der Network-Manager aktiv ist und sich alle unkonfigurierten Ethernet-Schnittstellen unter den Nagel reißt. Bei Erstellung des Artikels war das noch nicht standardmäßig der Fall (und ist es unter den Server- und Minimal-Installationen immer noch nicht).

und deswegen sollte

 auto <iface>
iface <iface> inet manual 

für die beteiligten Interfaces eingetragen werden. Diese Änderung ist plausibel, und funktioniert bei mir von Anfang an.

Klingt auf jeden Fall logisch. Wie wäre es einfach mit einem neuen Absatz "Konflikt mit Network-Manager"?

martti

Anmeldungsdatum:
10. April 2007

Beiträge: 2

Verdammt...

Nun, da geb ich dir recht. Obwohl ich mit diesem Gnome-Sessiondings vor langer Zeit abgeschlossen habe, startet sich bei mir der Networkmanager. Jetzt eröffnet sich aber noch eine andere Frage, und zwar ob eine Brücke nicht auch mit dem NetworkManager teil hergestellt werden kann? Und äh, sagen wir, ich will das teil weghaben, lässt sich das rauskonfigurieren oder soll ich das einfach deinstallieren?

danke für den tipp, das ist mir jetzt entgangen!

otzenpunk Team-Icon

(Themenstarter)
Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

martti schrieb:

Jetzt eröffnet sich aber noch eine andere Frage, und zwar ob eine Brücke nicht auch mit dem NetworkManager teil hergestellt werden kann?

Glaub nich. Bin aber auch nicht so'n NetworkManager-Crack.

Und äh, sagen wir, ich will das teil weghaben, lässt sich das rauskonfigurieren oder soll ich das einfach deinstallieren?

Der wird über Skripte in /etc/dbus-1/event.d/ gestartet. Evtl. reicht es aus, diesen Skripten das x-Bit zu klauen.

Captcha

Anmeldungsdatum:
16. Februar 2009

Beiträge: Zähle...

Wohnort: Chemnitz

Wie unter http://www.linuxfoundation.org/en/Net:Bridge#Sample_setup beschrieben, ist es günstig, die einzelnen Netzwerkkarten erst auf IP 0.0.0.0 zu setzen. Auch MTU-Angaben können so eingeschrieben werden. Auch ist es günstig wie unter Tuning beschrieben das IPv6 zu deaktivieren. Auch der NetworkManager hat sich eher als Störquelle als als Hilfe erwiesen. Noch ein Phänomen: Wenn eine GBit-Karte und eine 100MBit Karte zusammengestellt wurde, dann schien es mir so, als ob auf der Gigabit-Strecke die Daten auch nur noch 100MBit/s transportiert wurden. Messen lässt sich so etwas mit http://www.ars.de/ars/ars.nsf/docs/netio.

iface eth0 inet static
    address 0.0.0.0
    netmask 255.255.255.0
auto eth0
iface wlan0 inet static
    address 0.0.0.0
    netmask 255.255.255.0
#auto br0
#iface br0 inet static
    address 192.168.4.2
    netmask 255.255.255.0
    gateway 192.168.4.1    
    bridge_ports eth0 wlan0
    bridge_fd 5
    bridge_stp yes
    broadcast 192.168.4.0
    network 192.168.4.0

cornix Team-Icon

Avatar von cornix

Anmeldungsdatum:
9. März 2007

Beiträge: 4763

Wohnort: Ringenberg

Moin Moin

Nutzt jemand eine Netzwerkbrücke unter einem aktuellen Ubuntu? Dann bitte den Artikel entsprechend überprüfen und den Getstet-tag ergänzen.

Gruß, cornix

Wajanja_simba

Anmeldungsdatum:
5. Dezember 2009

Beiträge: 149

Ich nutze eine Brücke auf eiem 10.10 . Es funktioniert, doch mein PC der die Brücke herstellt hat jetzt kein Internet mehr.

gunwi

Anmeldungsdatum:
23. Januar 2014

Beiträge: Zähle...

Eine Bridge ist kein Gateway, sondern leitet den gesamten Verkehr automatisch nach allen Seiten weiter. (Vergleichbar mit einem Switch.)

Switch? Müsste es nicht eigentlich Hub heissen? Denn mW. leitet nur der alles an alle Ports weiter, wohingegen der Switch eine Logik beinhaltet, nach der er die angeschlossenen Geräte anhand derer MAC-Adressen gezielt bedient - und eben nicht alle (anderen)?

lx_uwe

Avatar von lx_uwe

Anmeldungsdatum:
29. August 2017

Beiträge: 105

Wie wäre es mit einem Hinweis auf parprouted (daemon for transparent IP, Layer 3, proxy ARP bridging) im Wiki-Artikel?

https://linux.die.net/man/8/parprouted

Sehr zu empfehlen für Leute, die eine Bridge über ein Wlan-Device anlegen möchten. Hat mir jedenfalls sehr geholfen und war mir bis dahin völlig unbekannt.

lx_uwe

Avatar von lx_uwe

Anmeldungsdatum:
29. August 2017

Beiträge: 105

Ich hatte in meiner virtuellen Win7-Maschine "fälschlicherweise" die Bridge als Gateway eingetragen. Funktionierte auch, musste allerdings noch die MAC-Adresse der Bridge mit ifconfig setzen, da sonst Windows immer ein neues Netzwerk erkennt (tunctl erzeugt eine zufällige MAC). Auch nach Ändern des Gateways im Windows muss dies immer noch gemacht werden, um ein Erkennen "neuer" Netzwerke zu vermeiden.

So erzeuge ich die Bridge mit parprouted:

1
2
3
4
5
6
tunctl -t tap0 -u uwe
ip link set tap0 up
ip addr add 192.168.178.202 dev tap0
ifconfig tap0 hw ether xx:xx:xx:xx:xx:xx
echo 1 > /proc/sys/net/ipv4/ip_forward
parprouted wlp3s0 tap0

In der virt. Maschine stelle ich die feste IP 192.168.178.203 und den Standardgateway in meinem Netz ein (.1)

Zum Beenden:

1
2
3
ip link set tap0 down
tunctl -d tap0
killall parprouted 

... jeweils als root bzw. mit sudo. Dann kann der User uwe die Brücke nutzen.

elektronenblitz63

Avatar von elektronenblitz63

Anmeldungsdatum:
16. Januar 2007

Beiträge: 29307

Wohnort: NRW

Hallo,
ich hatte hier vergleichbares vorgeschlagen um einen Ethernetdrucker über WLAN an einen RasPi anzubinden, da Bridging ansonsten nur mit einem WLAN-Interface im AP-Mode über hostapd funktioniert.

Die Funktion wurde hier mit einem Laptop getestet. Im Beitrag leider keine Rückmeldung mehr.

Antworten |