WLAN

Auf dieser Seite wird beschrieben, wie Sie WLAN auf einem Cuttlefish-Gerät steuern.

Wmediumd verwenden

Die Cuttlefish-WLAN-Funktion verwendet Wmediumd, ein Simulationstool, um das drahtlose Medium zu simulieren. „wmediumd“ verwaltet die Übermittlung von WLAN-Paketen zwischen zwei Cuttlefish-Instanzen oder zwischen einer Cuttlefish-Instanz und einer OpenWRT-Instanz. Wmedium für Cuttlefish wird in /platform/external/wmediumd/ implementiert.

Verwenden Sie zum Steuern der Wmediumd-Schnittstelle das Tool WmediumdService (Android 14 oder höher) oder wmedium_control (Android 13 oder niedriger).

WmediumdService

Auf Geräten mit Android 14 oder höher können Sie das Wmedium-Tool mit WmediumdService steuern. Weitere Informationen dazu, wie Sie diesen Dienst über die REST API oder die Befehlszeilenschnittstelle (CLI) steuern, finden Sie unter Cuttlefish: Environment Control.

In der folgenden Tabelle sind die Methoden in WmediumdService aufgeführt. Ausführliche Informationen zu den Methoden finden Sie unter wmediumd.proto.

Methoden Beschreibung
ListStations Listet alle Sender auf, die mit Wmediumd verbunden sind.
LoadConfig Lädt die Wmediumd-Konfiguration mit einer bestimmten Datei.
ReloadConfig Laden Sie die aktuell geladene Wmediumd-Konfigurationsdatei neu.
SetCivicloc Legen Sie den Standort (z. B. die Postanschrift) der jeweiligen Station fest.
SetLci LCI (Breitengrad, Längengrad, Höhe) der jeweiligen Station festlegen.
SetPosition Legen Sie die Position der Station in einem zweidimensionalen Raum fest.
SetSnr Legen Sie den Signal-Rausch-Verhältnis-Wert (SNR) zwischen zwei Sendern fest (0–255).
SetTxpower Hiermit wird die Sendeleistung (TX-Leistung) der jeweiligen Station festgelegt.
StartPcap Beginnen Sie mit der Erfassung aller Frames, die an die Luft übertragen werden, und speichern Sie sie in einer .pcap-Datei.
StopPcap Beenden Sie die aktuelle Paketerfassung.

wmediumd_control

Auf Geräten mit Android 13 oder niedriger können Sie das wmediumd_control-Tool verwenden, um das drahtlose Medium auf Cuttlefish-Geräten zu steuern. In der folgenden Tabelle sind die Unterbefehle in wmediumd_control aufgeführt.

Unterbefehle Beschreibung
list_stations Listet alle Sender auf, die mit Wmediumd verbunden sind.
reload_config [CONFIG_FILE_PATH] Laden Sie die Wmediumd-Konfiguration mit CONFIG_FILE_PATH neu. Wenn CONFIG_FILE_PATH ausgelassen wird, wird die aktuell geladene Konfigurationsdatei neu geladen.
set_civicloc MAC_ADDR CIVICLOC Legen Sie den Standort (z. B. die Postanschrift) der jeweiligen Station fest.
set_lci MAC_ADDR LCI LCI (Breitengrad, Längengrad, Höhe) der jeweiligen Station festlegen.
set_position MAC_ADDR X_POSITION Y_POSITION Legt die Position der Station im zweidimensionalen Raum fest.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Legen Sie den Signal-Rausch-Verhältnis-Wert (SNR) (0–255) zwischen zwei Sendern fest.
start_pcap PCAP_FILE_PATH Beginne mit der Aufzeichnung aller Frames, die gesendet werden, und speichere sie in einer .pcap-Datei.
stop_pcap Beenden Sie die aktuelle Paketerfassung und schließen Sie sie ab.

OpenWRT verwenden

Die Cuttlefish-WLAN-Funktion unterstützt die Verwendung von OpenWRT zur Virtualisierung von WLAN-Zugangspunkten. Die OpenWRT-Implementierung für Cuttlefish finden Sie unter platform/external/openwrt-prebuilts/.

Verwenden Sie die Informationen in der folgenden Tabelle, um eine Verbindung zu OpenWRT herzustellen. Wenn Sie beim Starten von Cuttlefish keine Optionen anhängen, ist die Geräte-ID cvd-1 und die OpenWRT-WAN-IP-Adresse 192.168.94.2 oder 192.168.96.2.

Verbindungstyp Ziel
SSH root@OPENWRT_WAN_IP_ADDRESS
Webseite https://localhost:1443/devices/DEVICE_ID/openwrt
Webseite (Legacy) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Auf Geräten mit Android 14 oder höher können Sie virtualisierte WLAN-APs mit dem OpenwrtControlService-Dienst steuern und konfigurieren. Weitere Informationen dazu, wie Sie diesen Dienst über die REST API oder die Befehlszeile steuern, finden Sie unter Cuttlefish: Environment Control.

In der folgenden Tabelle sind die Methoden in OpenwrtControlService aufgeführt. Ausführliche Informationen zu den Methoden finden Sie unter openwrt_control.proto.

Methoden Beschreibung
LuciRpc Senden Sie einen RPC-Aufruf an die Luci-Weboberfläche in OpenWRT.
OpenwrtIpAddr Rufen Sie die OpenWRT-WAN-IP-Adresse ab. Verwenden Sie diese Adresse, um eine OpenWRT-Instanz über SSH oder eine Weboberfläche zu verbinden.