Host AP mit OpenBSD 5.7 funktioniert nicht

hal9000

Member
Hallo,

folgende Komponenten sind im Einsatz:
- apu1d4 Board von pc engines
- wle200nx WLAN Karte, ebenfalls von pc engines

Instaliiert ist OpenBSD 5.7 (amd64). In /etc/hostname.athn0 sind folgende Eintraege:

inet alias 192.168.10.1 255.255.255.0 NONE
inet alias 192.168.10.2 255.255.255.255 NONE
mediaopt hostap
nwid Halls_of_Moria
wpakey xxxxxxxxxxxxxxxxxxxx

ifconfig athn0
athn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 04:f0:21:17:3a:f0
priority: 4
groups: wlan
media: IEEE802.11 autoselect mode 11g hostap
status: active
ieee80211: nwid Halls_of_Moria chan 2 bssid 04:f0:21:17:3a:f0 wpakey 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx wpaprotos wpa2 wpaakms psk wpaciphers tkip,ccmp wpagroupcipher tkip
inet 192.168.10.1 netmask 0xffffff00 broadcast 192.168.10.255
inet 192.168.10.2 netmask 0xffffffff

Auf saemtlichen WLAN Geraeten im Haushalt ist das WLAN sichtbar. wenn ich versuche mich mit diesem WLAN zu verbinden, erhalte ich entweder die Meldung dass das Kennwort nicht stimmt oder dass die Verbindung fehlgeschlagen ist. Ich habe schon einiges durchprobiert. Z.B. ein sehr einfaches Kennwort (nur Kleinbuchstaben, 10 Zeichen, Das Kennwort in einfache oder doppelte Anfuehrungszeichen setzen. Nichts hat geholfen. Nach jeder Aenderung der Datei hostname.athn0 das "sh /etc/netstart athn0" ausgefuehrt. In den Logdateien in /var/log konnte ich nichts dazu finden.

dmesg|grep -Ei athn0
athn0 at pci5 dev 0 function 0 "Atheros AR9281" rev 0x01: apic 2 int 16
athn0: AR9280 rev 2 (2T2R), ROM rev 22, address 04:f0:21:17:3a:f0

Firmware in /etc/firmware:

ls -al /etc/firmware/ath*
-r--r--r-- 1 root bin 70624 Jan 5 2015 /etc/firmware/athn-ar7010
-r--r--r-- 1 root bin 70624 Jan 5 2015 /etc/firmware/athn-ar7010-11
-r--r--r-- 1 root bin 51280 Jan 5 2015 /etc/firmware/athn-ar9271
-r--r--r-- 1 root bin 2221 Jan 5 2015 /etc/firmware/athn-license

Soweit ich nach dem Chipsatz recherchiert habe (AR2980) sollte OpenBSD mit dieser Karte einen Host AP ermoeglichen. Ich habe bestimmt etwas uebersehen oder einen Fehler gemacht.
Falls mir jemand eiterhelfen oder einen Tipp geben kann, danke ich schon mal im voraus.
 
Hallo,

habe ebenfalls ein APU-Board im Einsatz mit OpenBSD 5.7-stable inklusive athn-Treiber (Atheros AR9281).

Ich nehme jetzt einfach mal an, dass kein Hardwareproblem vorliegt. Hast du diesbezüglich mal ein anderes OS ausprobiert?

Bei meiner Karte musste ich in der /etc/hostname.athn0 ein wenig expliziter werden:
Code:
media autoselect mode 11g mediaopt hostap

Beim wpakey gibst du in der Konfiguration auch ein Klartextpasswort an, richtig? ;)

  • Um sicherzugehen, dass es keinen IP-Konflikt gibt, solltest du testweise die zweite IP-Adresse entfernen.
  • Hast du PF aktiviert?
  • Hast du einen DHCP-Server für die Clients aktiviert und kannst du Requests sehen?

Diese Punkte sind selbstverständlich nur relevant, wenn die Clients sich authentifizieren konnten. Jenachdem was du für Clients hast, können die dir noch mehr Ausgaben fürs Debugging geben.
 
Hallo Paldium,

vielen Dank fuer deine Antwort, hat sie mir doch weitergeholfen. Als erstes habe ich die zweite IP Adresse entfernt und saemtliche Verschluesselungsverfahren
abgeschaltet. Also ein offenes WLAN. Damit konnten sich die WiFi Geraete verbinden. Der naechste Schritt war die Verschluesselung wieder einschalten (WPA/WPA2).
Damit hat es wieder nicht funktioniert. Zum Einsatz kamen zwei iOS und ein Android und ein Linux (Debian). Das Passwort fuer den PSK beinhaltete Sonderzeichen (!,$,#).
Beim Versuch mich mit dem WLAN zu verbinden, bekam ich die Meldung "Falschen Kennwort fuer ...". Darauf habe ich alle Sonderzeichen aus dem Kennwort entfernt und
habe sie durch Buchstaben und Ziffern ersetzt. Nach dieser Massnahme koennen sich alle WiFi Geraete mit diesem WLAN verbinden.

Die /etc/hostname.athn0 sieht derzeit so aus:

inet alias 192.168.10.1 255.255.255.0
up
media autoselect mode 11g
mediaopt hostap
nwid MORIA
wpa
wpaakms psk
wpaciphers tkip
wpagroupcipher tkip
wpaprotos wpa1,wpa2
wpakey <PSK_in_Plaintext_eingetragen>

Um deine Fragen konkret zu beantworten: PF ist aktiviert, PSK ist im Klartext eingetragen, DHCP ist fuer dieses Interface eingerichtet und vergibt IP Adressen.
NSD/Unbound sind auch aktiv. Das war der Grund fuer den netzwerk alias. NSD und Unbound sollen auf diesem Rechner laufen. Die Clients fragen Unbound an.
Dieser arbeitet als forwarder. Lokale Adressen holt er beim NSD, externe bei externen DNS (Provider). NSD laeuft aber mittlerweile auf einem anderen Port. Also benoetige ich den Alias nicht. Dass das aber nicht funktioniert haette ich nicht erwartet. Sobald ich die zweite IP eintrage und aktiviere, kann sich keiner der Clients verbinden. Das Logging gibt leider gar nichts dazu her. Das ganze soll als Gast-Wlan dienen. Besucher und Geaeste solen sich ueber dieses WLAN mit dem Internet verbinden koennen
ohne mein Hauslan zu sehen. Einzig was jetzt noch ist, ein Speedtest (speedtest.net) bringt Ping 32 ms, DL 0.12, upload 0.10. Das ganze ist an einem Kabelanschluss
mit 50MBit/5MBit.

Die wichtigen Stellen aus der pf.conf:

lanif = "re0"
wanif = "re1"
dmzif = "athn0"
table <gastlan> persist { 192.168.10.0/24 }

queue rootq on $wanif bandwidth 25M max 25M
queue http parent rootq bandwidth 15M burst 50M for 100ms
queue mail parent rootq bandwidth 2M
queue ftp parent rootq bandwidth 2M
queue dns parent rootq bandwidth 1M
queue ssh parent rootq bandwidth 5M
queue ssh_interactive parent ssh bandwidth 3M min 5M
queue ssh_bulk parent ssh bandwidth 3M
queue std parent rootq bandwidth 5M default

match out on $wanif from { 192.168.10.0/24 } nat-to ($wanif)
pass in log quick on $dmzif from <gastlan> keep state tag outext label pass.wlan.forward.any set queue std


Mittels tcpdump in zwei Fenstern habe ich das beobachtet und konnte keine bockierten Pakete sehen.

Fenster 1: tcpdump -l -n -nn -s 1500 -i athn0 'host 192.168.10.228'
Fenster 2: tcpdump -n -e -s 1500 -ttt -i pflog0 'host 192.168.10.228 and action block'

Hast du eventuell noch eine Idee woran es liegen kann, dass die Geschwindigkeit so niedrig ist. Wenn ich am gleichen Standort
mein "normales" WLAN nutze komme ich auf deutlich bessere Geschwindigkeiten. Allerdings ist das auf 802.11n. Der Mode 11g
sollte brutto 54MBit ermoeglichen.

Bis dahin auf jeden Fall ein herzliches Danke, deine Gedankenanstoesse waren mir sehr hilfreich!
 
Quotest du das Passwort auch artig in ', wenn es Sonderzeichen enthält? /etc/hostname.$if wird quasi von /bin/sh konsumiert, also gelten alle Escape-Regeln von dort. Am besten in Apostrophen setzen.
 
Ansonsten kannst du deinen wpakey auch in hex umwandeln und ihn so angeben. Ich nutze das find_networks.sh von afresh1@ und musste es bei einem Key mit Sonderzeichen ebenfalls umwandeln:
Code:
... wpakey "0xc0f6c61c88..."
 
Hallo,
ja das Kennwort ist in einfache Hochkomma gesetzt. Die Verbindung bleibt nicht stabil. Um zu verbinden muss ich teilweise mehrfach dieses Netzwerk auswaehlen.
Nach dem 5 oder 6 Versuch wird die Verbindung hergestellt, IP Adresse per DHCP vergeben. Geschwindigkeit bleibt aber bei 0.xx up/down und bricht immer
wieder ab. Selbst wenn ich in unmittelbarer Naehe (< 3m) aendert sich nichts an der Situation.

Quotest du das Passwort auch artig in ', wenn es Sonderzeichen enthält? /etc/hostname.$if wird quasi von /bin/sh konsumiert, also gelten alle Escape-Regeln von dort. Am besten in Apostrophen setzen.
 
Mit OpenBSD 5.7(auch amd64) und identischer WLAN-Karte habe ich ebenfalls nur Probleme. Leider aber auch keine Zeit dem weiter auf den Grund zu gehen.
Hat es jemand damit zuverlässig am Laufen?
 
Hat es jemand damit zuverlässig am Laufen?

Code:
05:00.0 Network controller: Qualcomm Atheros AR928X Wireless Network Adapter (PCI-Express) (rev 01)
05:00.0 0280: 168c:002a (rev 01)

Bei mir funktioniert WLAN soweit. Ich habe hier im Thread noch nicht wieder geantwortet, da ich mit den PF-Queues noch nicht viel Erfahrung gesammelt habe (meine Versuche waren da recht erfolglos). Was Verbindung und Verhalten des Routers angeht, so habe ich aber keine Probleme. Es wird aber sicherlich stark vom Chip abhängig sein, daher meine lspci-Ausgabe.
 
Zurück
Oben