[Selbsttest] FreeBSD – WLAN einrichten mit Wifibox

Updated 16.01.2023

Ein häufiges Problem unter FreeBSD sind die verfügbaren Treiber und damit die Einrichtung der Hardware. Ich habe mich aktuell dazu entschlossen, neben Windows 11, eine weitere Partition mit FreeBSD 13.1 zu installieren. In meinem Laptop kommt ein Qualcomm Atheros QCA6174 als WLAN-Adapter zum Einsatz, der allerdings von FreeBSD nicht unterstützt wird. Also musste zum Einrichten des Betriebssystem erstmal ein Ethernet-Kabel herhalten. Parallel bin ich in meiner Recherche auf Github auf ein Tool namens Wifibox gestoßen. Wifibox erstellt eine schlanke Linux-VM, von dem mein WLAN Adapter automatisch erkannt wird, und stellt sie dem Host-System, also FreeBSD zur Nutzung bereit. Unter den aktuell von Wifibox unterstützen WLAN-Adaptern taucht auch mein Qualcomm Atheros QCA6174 auf, sodass meine Hoffnung stieg. Später gibts auch mein Fazit zu Wifibox, aber jetzt erstmal ran an die Konsole und viel Spaß!

Wifibox installieren und konfigurieren

1. Mit einem simplen Kommando installiert sich Wifibox auf dem System

pkg install wifibox

Danach hat man Zugriff auf die zugehörige manpage, welche mich gut durch den Konfigurationsprozess geführt hat.

man wifibox

2. Falls du eine Intel CPU nutzt, kannst du diesen Schritt überspringen. Als erstes musste ich die Datei /boot/loader.conf bearbeiten, da AMD-Hardware standardmäßig der PCI-Passthrough deaktiviert ist. Mit folgender Ergänzung ist es dann doch möglich:

kldload vmm.ko
hw.vmm.amdvi.enable=1

3. Danach musste ich mittels

pciconf -lv

meinen WLAN-Adapter herausfinden. Hier erkennt man ganz gut, welche Hardware nicht automatisch mit einem passenden Treiber installiert wurde. In diesem Falle none1:

pciconf_wifibox

4. Um den betroffenen Adapter von der Linux-VM entsprechend zum FBSD durchzuschleusen ist es wichtig, den Ort auf dem PCI-BUS (hier 0:4:0:0) unter /usr/local/etc/wifibox/bhyve.conf einzutragen. In der Datei wird es aber statt 0:4:0:0 als 4/0/0 eingetragen. Also:

passthru=4/0/0

5. Unter /etc/rc.conf werden folgende Ergänzungen gemacht:

wifibox_enable="YES"
devmatch_enable="YES"
devmatch_blocklist="if_iwm if_iwlwifi"
ifconfig_wifibox0="SYNCDHCP"
background_dhclient_wifibox0="YES"
defaultroute_delay="0"

6. Zum Schluss muss nur noch eine wpa_supplicant.conf für die Linux VM erstellt werden, damit diese sich mit dem WLAN zuhause verbindet. Legt dazu die Datei unter /usr/local/etc/wifibox/wpa_supplicant/wpa_supplicant.conf an und tragt entsprechend die Informationen ein:

network={
          ssid="DEINE SSID"
          scan_ssid=1
          key_mgmt=WPA-PSK
          psk="DEIN WLAN-PASSWORT"
}

Natürlich kann die Verschlüsselungsmethode (key_mgmt) abweichen, aber ich denke bzw. hoffe, dass mit Masse WPA bzw. WPA2 in Nutzung ist.

7. Als root anmelden und Wifibox starten

wifibox start

Nach einem Moment stellte ich fest, dass sich ein weiteres Gerät mit meinem WLAN-Router verbunden hat. Auch mein wifibox0 hat eine IP-Adresse bezogen. Auch ein Ping-Test zu Google war erfolgreich.

ifconfig_wifibox
wifibox0 hat eine IP-Adresse bezogen

Mein Fazit

Prinzipiell finde ich es eine tolle Übergangslöung anstatt ewig auf verfügbare Treiber zu warten, um 802.11ac konform mit FreeBSD WLAN zu nutzen. Es ist natürlich keine optimale Lösung. Ein entsprechender Treiber wäre mir lieber und vor allem weitaus komfortabler, als erst ein Tool zu konfigurieren.

Während ich ein paar Pakete installieren konnte und mich doch auch gefreut habe, so wirklich weit bin ich dann allerdings doch nicht gekommen. Plötzlich war die Verbindung weg und ich weiß bisher noch nicht woran es lag. Auch ein Neustarten brachte bisher keine Veränderung. Außerdem stellte ich fest, dass Firefox in den ersten Minuten meiner WLAN-Verbindung auch nicht funktionierte, allerdings der vorinstallierte Browser unter FreeBSD schon. Das ist natürlich etwas ärgerlich und bedeutet voraussichtlich eine Menge Troubleshooting.

Wer sich auskennt und oder es für sich selbst gerne mal ausprobieren möchte, lasst mich wissen, wie es gelaufen ist und welche Hürden ihr überwinden musstet. Falls ihr natürlich wisst, woran ich gescheitert bin, lasst es mich unbedingt wissen. Wifibox ist für mich eine spannende Übergangslösung und ich werde es definitiv im Auge behalten, während ich erstmal weiterhin mit Kabel surfe. Viel Erfolg und bis bald!

Edit:

Wie Gabor Pali, der Autor von Wifibox in den Kommentaren geschrieben hat, sind alle meine Probleme mit dem Update auf Version 1.1.1 tatsächlich verschwunden. So hatte mein Laptop mit FreeBSD 13 eine dauerhafte und mehr als ausreichende Internetverbindung. Vielen Dank an der Stelle an Gabor für den Input!

Show comments

Join the discussion

5 replies to “[Selbsttest] FreeBSD – WLAN einrichten mit Wifibox”

  1. Gabor Pali says:

    The crashes are due to the strict memory settings of the VM. This has been fixed in the recent version, 1.1.1, please try it with this one if you have the chance.

    1. Mitarbyter says:Author

      Thanks for the info, Gabor! I will try that and update my blog post!

    2. Mitarbyter says:Author

      After a long time, I’ve tested version 1.1.1 and all my issues disappeared. Thank you, my blog post is now updated!

  2. Robert Palm says:

    Vielen Dank für die super Anleitung.

    Ein kleiner Typo hier (es fehlt das „C“) 🙂

    ifconfig_wifibox0=“SYNCDHCP“

    Am besten für die Datei bhyve.conf noch den vollen Pfad nennen:

    /usr/local/etc/wifibox/bhyve.conf

    Bei mir läuft es nun auch mit 5GhZ viiiel schneller…

    1. Dennis says:Author

      Freut mich, dass es Dir geholfen hat und danke für die nützlichen Anmerkungen!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert