Die Version 0.17 des Wifibox-Projekts ist verfügbar, das sich der Herausforderung stellt, dass es für bestimmte WLAN-Adapter in FreeBSD keine benötigten Treiber gibt. Die problematischen WLAN-Adapter für FreeBSD werden in Wifibox durch die Ausführung eines Gastbetriebssystems mit Linux unterstützt, in dem die nativen Linux-Treiber für die drahtlosen Geräte geladen werden. Diese Umgebung kann potenziell für alle WLAN-Karten verwendet werden, die in Linux unterstützt werden, und wurde mit Chips von Intel, AMD/MediaTek, Realtek, Qualcomm und Broadcom getestet.
Die Installation des Gastbetriebssystems mit Treibern ist automatisiert, und alle erforderlichen Komponenten sind in einem bereitgestellten Paket namens wifibox organisiert, das beim Booten mithilfe des mitgelieferten rc-Dienstes gestartet wird. Das Gastbetriebssystem wird mit dem Hypervisor Bhyve gestartet, der den Zugriff auf die WLAN-Karte ermöglicht. Es wird ein System benötigt, das hardware-basierte Virtualisierung (AMD-Vi oder Intel VT-d) unterstützt. Die Grundlage des Gastbetriebssystems basiert auf der Alpine Linux-Distribution, die auf der Systembibliothek Musl und einer Sammlung von BusyBox-Dienstprogrammen basiert.
Für die Verbindung mit dem WLAN wird das Paket wpa_supplicant verwendet, dessen Konfigurationsdateien mit den Einstellungen der Hauptumgebung FreeBSD synchronisiert werden. Der für wpa_supplicant erstellte Unix-Socket wird in die Host-Umgebung weitergeleitet, sodass die nativen FreeBSD-Dienstprogramme für die Verbindung und Arbeit mit dem WLAN, wie wpa_cli und wpa_gui (net/wpa_supplicant_gui), verwendet werden können.
In der neuen Version wird die Verwendung von grub-bhyve zum Booten eingestellt; es bleibt nur die Möglichkeit, Gastbetriebssysteme mit UEFI-Unterstützung zu starten. Die Verwendung von Netzwerkbrücken wird eingestellt (zur ordnungsgemäßen Nutzung in FreeBSD 15 wird das Netzwerk-Interface tap jetzt direkt verwendet, ohne durch das Interface bridge gewickelt zu werden). Die Unterstützung für die FreeBSD 13-Version wurde eingestellt. Es wird sichergestellt, dass der Verwaltungsprozess im Falle des Abschlusses des Gastbetriebssystems beendet wird.
Quelle: opennet.ru
