bridge, irgendwie verstehe ich es nicht

pbtraveller

Well-Known Member
hi,

nachdem ich jetzt auf meinem Router unter freebsd endlich meine bridge hinbekommen habe, muss ich auf einem openbsd wrap1 (pc-engine) eine bridge bauen.

Die bridge soll alle Netzwerkschnittstellen umfassen, das sind sis0, sis1 und ath0.

ath0 ist die wlan-Schnittstelle, die per wpa an dem Router hängt, das wrap1 bindet sozusagen weitere Geräte über wlan an die Station an, die in einem anderen Zimmer stehen und die nicht selbst wlan-fähig sind.

Meine configs haben folgende Einträge:

/etc/bridgename.bridge0:

add ath0
add sis0
add sis1
up

/etc/hostname.sis0
up NONE NONE

/etc/hostname.sis1:
inet 192.168.1.2 255.255.255.0

/etc/hostname.ath0:

nwid mein-wifi-ssid wpa wpapsk \
`wpa-psk mein-wifi-ssid mein-password`

Beim Booten wird bridge überhaupt nicht eingerichtet.
Einzig sis1 funktioniert und, sofern ich folgendes in /etc/hostname.ath0 verwende, (oder eine feste IP vergebe) dann funktioniert auch ath0:

dhcp nwid mein-wifi-ssid wpa wpapsk \
`wpa-psk mein-wifi-ssid mein-password`

Meine Fragen:
1. Wie muss ich denn die einzelnen Netzwerkschnittstellen konfigurieren, um die oben genannte bridge hinzubekommen. Diese wird bei einem sh /etc/netstart bzw. einem Neustart nicht eingerichtet.

2. Muss ich die IP-Adresse der bridge nicht bei /etc/bridgename.bridge0 eintragen oder wird die von einer der gebridgten Schnittstellen übernommen (was aber passiert wenn man den einzelnen Schnittstellen verschiedene Adressen zuweist)?

Danke und Gruß

pbtraveller
 
Zu 1)

Wenn du OpenBSD 4.7 oder Current benutzt, dann musst du bridgename.bridge0 in hostname.bridge0 umbenennen. Leider wurde die entsprechende Stelle im Handbuch noch nicht aktualisiert.
http://www.openbsd.org/faq/upgrade47.html#bridge

hostname.sis0
Ich glaube None None gehoert dort nicht rein. Up reicht aus.

Zu hostname.ath0 kann ich dir leider nichts sagen. Ich kenne mich mit wlan unter OpenBSD nicht aus.

Zu 2)
IP-Adressen werden einem Interface und nicht der Bridge zugewiesen, da die Bridge ein Layer-2-Device ist und IP nicht kennt. Wenn du mehreren Bridge-Interfaces unterschiedliche IPs zuweist, hat das erst mal keinen besonderen Nutzen. Dann ist deine Bridge mit verschiedenen IPs erreichbar. In den meisten Faellen brauchst du das nicht.

Viel Erfolg!

Gruss
Florian
 
Vielen Dank erst einmal. Das mit der Bridge scheint jetzt größtenteils zu funktionieren, jedenfalls wenn ich jedem Interface dezidiert die gleiche IP zuweise und diese in dem einzelnen /etc/hostname.netwerkkarte zuweise.

Was aber seltsamerweise nicht mehr geht ist der Eintrag in /etc/hostname.ath0

dort steht jetzt

inet 192.168.2.1 255.255.255.0 nwid mein-wifi-ssid wpa wpapsk \
`wpa-psk mein-wifi-ssid mein-password`

Wenn ich die Kiste jetzt boote bzw. wenn ich sh /etc/netstart ausführe, erhalte ich

ifconfig: nwid bad value

Jemand ne Idee?

Vielen Dank und Gruß

pbtraveller
 
Vielen Dank erst einmal. Das mit der Bridge scheint jetzt größtenteils zu funktionieren, jedenfalls wenn ich jedem Interface dezidiert die gleiche IP zuweise und diese in dem einzelnen /etc/hostname.netwerkkarte zuweise.

Wenn du mehreren Interfaces die gleiche IP gibst, kann das (bei IPv4) zu "komischem Verhalten" fuehren, wenn du nicht sehr genau weisst, was du tust. Normalerweise sollte, wenn du einem Interface der Bridge eine IP gibst, die IP von allen Bridge-Interfaces erreichbar sein. Alle anderen Interfaces setzt du einfach nur "Up".

Noch ein Hinweis zur Konfiguration von IP-Adressen in Hostname.if:
Du vergisst die Broadcast-Adresse zu konfigurieren:
Es muss heissen
inet 192.168.2.1 255.255.255.0 None
oder
inet 192.168.2.1 255.255.255.0 192.168.2.255

In hostname.ath0 kannst du auch mal folgendes versuchen:
Code:
[B]up[/B] nwid mein-wifi-ssid wpa wpapsk \
`wpa-psk mein-wifi-ssid mein-password`
Ich kann das leider gerade nicht ausprobieren, da ich kein OpenBSD Router mit WLAN hier habe.
 
Vielen Dank erst einmal. Das mit der Bridge scheint jetzt größtenteils zu funktionieren, jedenfalls wenn ich jedem Interface dezidiert die gleiche IP zuweise und diese in dem einzelnen /etc/hostname.netwerkkarte zuweise.

Was aber seltsamerweise nicht mehr geht ist der Eintrag in /etc/hostname.ath0

dort steht jetzt

inet 192.168.2.1 255.255.255.0 nwid mein-wifi-ssid wpa wpapsk \
`wpa-psk mein-wifi-ssid mein-password`

Wenn ich die Kiste jetzt boote bzw. wenn ich sh /etc/netstart ausführe, erhalte ich

ifconfig: nwid bad value

Jemand ne Idee?

Vielen Dank und Gruß

pbtraveller

sicher das die wlan karte wpa unterstuetzt ? schau mal in der man page nach

holger
 
@florian88 leider funktioniert es auch so nicht mit den oben vorschlagenen Einstellungen. ifconfig ath0 zeigt mir zwar die Netzwerkkarte und als status active, allerdings ist sie nicht connected. die bridge bündelt auch alle drei interfaces und gibt folgendes aus:

groups: bridge
priority 32768 hellotime 2 fwddelay 15 maxage 20 holdcnt 6 proto rstp
designated: id 00:00:00:00:00:00 priority 0
sis1 flags=3<LEARNING,DISCOVER>
port 3 ifpriority 0 ifcost 0
sis0 flags=3<LEARNING,DISCOVER>
port 2 ifpriority 0 ifcost 0
ath0 flags=3<LEARNING,DISCOVER>
port 1 ifpriority 0 ifcost 0
Addresses (max cache: 100, timeout: 240):

das wifi-interface oder die andere ethernet-Karte haben aber keine IP zugewiesen, pingen kann ich bspw. über das wlan dementsprechend nicht.

trunk muss ich mir mal in Ruhe anschauen, was der Unterschied zur bridge ist. Ich hatte an die bridge gedacht, da ich beim Router eine solche unter freebsd ziemlich problemlos einrichten konnte und sie genau das macht, was ich wollte.

@mark05: Die Karte unterstützt wpa. wenn ich es per dhcp mache, verbindet sie sich problemlos mit dem router (siehe erster Post oben).

Gruß

pbtraveller
 
@florian88 leider funktioniert es auch so nicht mit den oben vorschlagenen Einstellungen. ifconfig ath0 zeigt mir zwar die Netzwerkkarte und als status active, allerdings ist sie nicht connected. die bridge bündelt auch alle drei interfaces und gibt folgendes aus:

groups: bridge
priority 32768 hellotime 2 fwddelay 15 maxage 20 holdcnt 6 proto rstp
designated: id 00:00:00:00:00:00 priority 0
sis1 flags=3<LEARNING,DISCOVER>
port 3 ifpriority 0 ifcost 0
sis0 flags=3<LEARNING,DISCOVER>
port 2 ifpriority 0 ifcost 0
ath0 flags=3<LEARNING,DISCOVER>
port 1 ifpriority 0 ifcost 0
Addresses (max cache: 100, timeout: 240):

das wifi-interface oder die andere ethernet-Karte haben aber keine IP zugewiesen, pingen kann ich bspw. über das wlan dementsprechend nicht.

trunk muss ich mir mal in Ruhe anschauen, was der Unterschied zur bridge ist. Ich hatte an die bridge gedacht, da ich beim Router eine solche unter freebsd ziemlich problemlos einrichten konnte und sie genau das macht, was ich wollte.

@mark05: Die Karte unterstützt wpa. wenn ich es per dhcp mache, verbindet sie sich problemlos mit dem router (siehe erster Post oben).

Gruß

pbtraveller

hi
moment einen einzelen interface welches einer bridge angehoert kann man
auch keine ip zu weisen .

normalerweise mach man ja
ifconfig bridge0 up
ifconfig bridge0 add bge0 up
ifconfig bridge0 add ath0 up
ifconfig bridge0 up

danach sollte z.b. ein dhcclient bridge0 funktionieren

wenn man nun noch ath0 per
ifconfig ath0 nwid mein-wifi-ssid wpa wpapsk \
`wpa-psk mein-wifi-ssid mein-password`

konfiguriert sollte eingetlich es egal sein ob man per wlan oder ethernet kabel
arbeitet man bekommt seine ip bzw ist mit der statischen ip der bridge online.

wie schon gesagt einem member der bridge kann man keine ip geben.

ein trunk mach hier auch keinen da es anders funktionert ( eine bridge ist
layer2 technisch wie ein switch zu sehen mit spanning tree etc )

ein trunk ist das zusammenfassen 1 oder mehrer interfaces zu einem
logischen interface welches dann redundat , oder bandbreiten technisch
besser da steht.


desweiteren sind deine interfaces nicht up !

holger
 
moment einen einzelen interface welches einer bridge angehoert kann man
auch keine ip zu weisen .
Bist du dir da sicher?
War das schon immer so, oder ist das neu in 4.7? Ich bin mir ziemlich sicher, dass ich in der Vergangenheit dem Interface, und nicht der Bridge eine IP zugewiesen habe.
In der FAQ wird das auch so beschrieben:
http://www.openbsd.org/faq/faq6.html#Bridge

Falls mark05 Recht hat, sorry pbtraveller!!!
 
Also ich habe es jetzt mal mit OpenBSD 4.7 ausprobiert:

hostname.em0: dhcp
hostname.em1: up
hostname.bridge0:
add em0
add em1
up

Mit dieser Konfiguration holt sich em0 automatisch eine IP-Adresse, die auch ueber em1 erreichbar ist.
Ich wuerde an deiner Stelle erst mal eine funktionierende Bridge mit einer IP-Adresse und den beiden Ethernet-Schnittstellen erstellen und mich danach um das WLAN kuemmern.

Die Einrichtung einer WLAN Bridge ist treiberabhaengig. Ich hatte da vor ein paar Jahren mal Probleme und bin an der Hardware gescheitert. Deine Karte muss den Hostap-Modus unterstuetzen. Fuege mal "mediaopt hostap" zu hostname.ath0 hinzu.
 
hi

ok ok .... es hat sich einiges geaendert .... da auch die erwaehte faq etwas veraltert ist.
( u.a. gibt es das brconfig nicht mehr das wird alles per ifconfig gamacht )


florian due muesstest
in der hostname.bridge0
add em0
add ath0
up

machen

was die ip betrifft , ja man kann diese pro interface beziehen ( bevor oader nach dem man es in die bridge eingefuegt hat .

aber zu empfehlen ist das nicht .... gerade bei wlan wuerde ich immer seperate ip bereiche nehmen und klassisch forwarden


holger
 
Zurück
Oben