Ethernet Bridging mit Linux

Was ist eigentlich eine Ethernet Bridge?

Kernel konfiguration:

Networking Options --->
<*> 802.1d Ethernet Bridging

Konfiguration einer Linux Bridge

Als Beispiel nehmen wir an ein Computer A hat 3 Netzwerkkarten und hängt mit eth0 in einem Netzwerk mit einem DHCP Server. Computer B und C hängen mittels einem Crossover CAT5 Kabel an Computer A.

Hinzufügen der bridge device:

brctl addbr bridge

mit "ifconfig -a" sollte dann ein Device mit dem Namen "bridge" sichtbar sein.

Konfigurieren der Netzwerkinterfaces:

ifconfig eth0 0.0.0.0 promisc
ifconfig eth1 0.0.0.0 promisc
ifconfig eth2 0.0.0.0 promisc

Promisc(ious) bedeutet, dass alle Pakete am Interface abgehört werden sollen, also auch jene, die eigentlich nicht für das jeweilige Ethernet Device bestimmt sind.

Anschließend werden die physikalischen Ethernet Devices zur "bridge" hinzugefügt:

brctl addif bridge eth0
brctl addif bridge eth1
brctl addif bridge eth2

Um die Bridge hochzufahren, genügt folgender Befehl:

ifconfig bridge up

Wenn Computer A auch eine IP bekommen soll reicht z.B.: ein "pump -i bridge" oder z.B.: "ifconfig bridge 192.168.0.1"

Anschließend kann man von Computer B und C aus, so als ob sie direkt im Netzwerk hängen würden, IPs vom zentralen DHCP im Netzwerk empfangen.

Weitere Bridges sind z.B. Kabelmodems.

Ich hoffe wiedermal, dass es verständlich erklärt wurde :) MarkusRechberger

siehe auch Deutsches Ethernet-Bridging HowTo

EthernetBridge (zuletzt geändert am 2011-01-02 11:15:03 durch essn-4d09f4b0)