123 lines
5.8 KiB
Markdown
123 lines
5.8 KiB
Markdown
---
|
||
title: "OpenWRT bridged Repeater mit relayd"
|
||
date: 2016-02-10T22:00:00+02:00
|
||
draft: false
|
||
author: robert-kaussow
|
||
categories:
|
||
- Hardware
|
||
- Netzwerk
|
||
- Open Source
|
||
---
|
||
|
||
OpenWRT ist eine auf Linux basierende offene Firmware für Router und AccessPoints. [OpenWRT](https://openwrt.org/) wird permanent weiterentwickelt und steht aktuell in der Version Chaos Calmer (15.05) für eine Vielzahl an Geräten unterschiedlicher Hersteller zur Verfügung. Möchte man in einer Mietwohnung nicht meterweise LAN-Kable an der Sockelleiste entlang verlegen, gibt es die Möglichkeit mit zwei AccessPoints einen WLAN-Blücke aufzubauen.
|
||
|
||
OpenWRT bietet zwei Möglichkeiten um eine Bridge einzurichten. WDS (Wireless Distribution System) oder relayd. Grundsätzlich ist WDS zwar einfacher zu konfigurieren, hat aber auch Nachteile. Das Protokoll ist nicht standardisiert was bedeutet, dass es zwischen den Herstellern Unterschiede bei der Implementierung gibt. Dadurch kann es passieren, dass Geräte mit unterschiedlichen WLAN-Chipsätzen (atheros/broadcom) überhaupt nicht kompatibel sind oder es zu einer instabilen Verbindung kommt. Da ich aber selbst bei gleichem Chipsatz immer wieder Probleme mit WDS hatte, empfehle ich persönlich den Weg über relayd.
|
||
|
||
Ich benutze für die Bridge zwei TP-Link WDR4300. Die Bridge-Verbindung wird über das 5 GHz Band aufgebaut, alle weiteren Clients nutzen ausschließlich 2,4 GHz. Grundsätzlich sollte relayd auf allen Geräten mit OpenWRT funktionieren, weiter Informationen findet man im Wiki. Alle Geräte, die mit der Bridge verbunden sind (LAN und WLAN) befinden sich anschließend im selben IP-Adressbereich. Für das Tutorial gehe ich davon aus, dass ihr bereits OpenWRT auf euren Geräten installiert habt.
|
||
|
||
### Vorbereitung AP1
|
||
Die Einstellungen des ersten AccessPoints müssen nicht weiter angepasst werden. Die einzige Voraussetzung ist, dass sich das WLAN Interface, welches ihr für die Bridge benutzen wollt, im Modus AccessPoint befindet und aktiviert ist. Alle weiteren Schritte werden auf dem zweiten Gerät vorgenommen!
|
||
|
||
### Aktualisierung und Installation benötigter Pakete
|
||
Das Paket luci-proto-relay ist optional und wird nur benötigt, wenn ihr später das Bridge-Interface über die Weboberfläche (luci) administrieren wollt.
|
||
|
||
{{< highlight bash "linenos=table" >}}
|
||
opkg update
|
||
opkg list-upgradable
|
||
opkg upgrade <package>
|
||
opkg install relayd luci-proto-relay
|
||
/etc/init.d/relayd enable
|
||
{{< / highlight >}}
|
||
|
||
### WLAN Interface konfigurieren
|
||
Anzupassen ist die Datei /etc/config/wireless. Vorinstalliert ist unter openwrt nur der Editor vi.
|
||
|
||
{{< highlight bash "linenos=table" >}}
|
||
config wifi-device 'radio1'
|
||
option type 'mac80211'
|
||
option hwmode '11a'
|
||
option path 'pci0000:00/0000:00:00.0'
|
||
# selbe Einstellung wie bei AP1 (Channel kann bei 2,4 GHz abweichen)
|
||
option channel '36'
|
||
option htmode 'HT40'
|
||
option txpower '15'
|
||
option country 'DE'
|
||
|
||
config wifi-iface
|
||
option device 'radio1'
|
||
# das Interface wwan wird später erstellt
|
||
option network 'wwan'
|
||
# selbe Einstellung wie bei AP1
|
||
option ssid 'device-relay'
|
||
# bringt das Gerät in den Client-Modus
|
||
option mode 'sta'
|
||
# selbe Einstellung wie bei AP1
|
||
option encryption 'psk2+ccmp'
|
||
# selbe Einstellung wie bei AP1
|
||
option key 'password'
|
||
{{< / highlight >}}
|
||
|
||
### Netzwerkinterface Konfigurieren
|
||
|
||
{{< highlight bash "linenos=table" >}}
|
||
vi /etc/config/network
|
||
|
||
config interface 'lan'
|
||
option ifname 'eth0.1'
|
||
option force_link '1'
|
||
option type 'bridge'
|
||
option proto 'static'
|
||
option ip6assign '60'
|
||
option ipaddr '192.168.10.1' # muss eine IP außerhalbe eures Adressbereichs sein!
|
||
option netmask '255.255.255.0'
|
||
option gateway '192.168.1.1' # IP von AP1 (oder separate Firewall/Router)
|
||
option dns '192.168.1.1' # IP von AP1 (oder separater DNS)
|
||
option stp '1' # Spanning Tree Protokoll aktivieren
|
||
|
||
# wwan und stabridge anlegen
|
||
config interface 'wwan'
|
||
option proto 'static'
|
||
option ipaddr '192.168.1.2' # über diese IP hat man Zugriff auf das Webinterface
|
||
option netmask '255.255.255.0'
|
||
option gateway '192.168.1.1'
|
||
|
||
config interface 'stabridge'
|
||
option proto 'relay'
|
||
option ipaddr '192.168.1.2' # muss die selbe IP wie bei wwan sein
|
||
list network 'lan'
|
||
list network 'wwan'
|
||
{{< / highlight >}}
|
||
|
||
### Optional: DHCP konfigurieren
|
||
Wenn ihr bereits einen DHCP Server in eurem Netzwerk eingerichtet habt, könnt ihr diesen Schritt überspringen. Achtet darauf, dass ihr diese Einstellungen wieder auf dem ersten AccessPoint vornehmt!
|
||
|
||
{{< highlight bash "linenos=table" >}}
|
||
config dhcp 'lan'
|
||
option interface 'lan'
|
||
# Startadresse des DHCP-Adressbereiches, hier also 192.168.1.100
|
||
option start '100'
|
||
option limit '150'
|
||
option leasetime '12h'
|
||
option ignore '1'
|
||
|
||
config dhcp 'wan'
|
||
option interface 'wan'
|
||
option ignore '1'
|
||
{{< / highlight >}}
|
||
|
||
### Nicht benötigte Dienste abschalten
|
||
Da firewall, dhcp und dnsmasq vom AP1 übernommen wird, sollten diese Dienste auf AP2 abgeschaltet werden, um Konflikte zu vermeiden. Benutzt ihr beide Geräte als reine AccessPoints, könnt ihr die Dienste auch auf beiden Geräten deaktivieren.
|
||
|
||
{{< highlight bash "linenos=table" >}}
|
||
/etc/init.d/firewall stop
|
||
/etc/init.d/firewall disable
|
||
/etc/init.d/odhcpd stop
|
||
/etc/init.d/odhcpd disable
|
||
/etc/init.d/dnsmasq stop
|
||
/etc/init.d/dnsmasq disable
|
||
{{< / highlight >}}
|
||
|
||
Abschließend werden beide AccessPoints nochmal neu gestartet – fertig.
|
||
|
||
Wer möchte, kann auf dem zweiten AP noch das 2,4 GHz WLAN aktivieren und einrichten. Alle Geräte die sich mit diesem WLAN verbinden erhalten ebenfalls eine IP aus dem Adressbereich des ersten APs. Wenn euer Gerät nur ein WLAN Interface hat, lässt sich für die Clients auch ein virtueller Zugangspunkt einrichten.
|