WLAN

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

Verwenden Sie Wmediumd

Die Cuttlefish Wi-Fi-Funktion verwendet Wmediumd, ein Simulationstool, um das drahtlose Medium zu simulieren. Wmediumd verwaltet die Zustellung von Wi-Fi-Paketen zwischen zwei Cuttlefish-Instanzen oder zwischen einer Cuttlefish-Instanz und einer OpenWRT-Instanz. Wmedium für Tintenfisch ist in /platform/external/wmediumd/ implementiert.

Um die Wmediumd-Schnittstelle zu steuern, verwenden Sie das Tool WmediumdService (Android 14 oder höher) oder wmedium_control (Android 13 oder niedriger).

WmediumdService

Für Geräte mit Android 14 oder höher verwenden Sie WmediumdService , um das Wmedium-Tool zu steuern. Einzelheiten zur Steuerung dieses Dienstes mithilfe der REST-API oder der Befehlszeilenschnittstelle (CLI) 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 Listen Sie alle an Wmediumd angeschlossenen Stationen auf.
LoadConfig Laden Sie die Wmediumd-Konfiguration mit einer bestimmten Datei.
ReloadConfig Laden Sie die aktuell geladene Wmediumd-Konfigurationsdatei neu.
SetCivicloc Legen Sie den öffentlichen Standort (z. B. die Postanschrift) der jeweiligen Station fest.
SetLci Legen Sie den LCI (Breitengrad, Längengrad, Höhe) der jeweiligen Station fest.
SetPosition Position der Station im zweidimensionalen Raum festlegen.
SetSnr Stellen Sie den Wert des Signal-Rausch-Verhältnisses (SNR) (0-255) zwischen zwei Stationen ein.
SetTxpower Sendeleistung (TX-Leistung) der jeweiligen Station einstellen.
StartPcap Beginnen Sie mit der Erfassung aller übertragenen Frames und speichern Sie sie in einer .pcap Datei.
StopPcap Stoppen Sie die aktuelle Paketerfassung und schließen Sie sie ab.

wmediumd_control

Verwenden Sie für Geräte mit Android 13 oder niedriger das Tool wmediumd_control , um das drahtlose Medium in Cuttlefish-Geräten zu steuern. In der folgenden Tabelle sind Unterbefehle in wmediumd_control aufgeführt.

Unterbefehle Beschreibung
list_stations Listen Sie alle an Wmediumd angeschlossenen Stationen auf.
reload_config [ CONFIG_FILE_PATH ] Laden Sie die Wmediumd-Konfiguration mit CONFIG_FILE_PATH neu. Wenn CONFIG_FILE_PATH weggelassen wird, laden Sie die aktuell geladene Konfigurationsdatei neu.
set_civicloc MAC_ADDR CIVICLOC Legen Sie den öffentlichen Standort (z. B. die Postanschrift) der jeweiligen Station fest.
set_lci MAC_ADDR LCI Legen Sie den LCI (Breitengrad, Längengrad, Höhe) der jeweiligen Station fest.
set_position MAC_ADDR X_POSITION Y_POSITION Position der Station im zweidimensionalen Raum festlegen.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Stellen Sie den Wert des Signal-Rausch-Verhältnisses (SNR) (0-255) zwischen zwei Stationen ein.
start_pcap PCAP_FILE_PATH Beginnen Sie mit der Erfassung aller übertragenen Frames und speichern Sie sie in einer .pcap Datei.
stop_pcap Stoppen Sie die aktuelle Paketerfassung und schließen Sie sie ab.

Verwenden Sie OpenWRT

Die Cuttlefish Wi-Fi-Funktion unterstützt die Verwendung von OpenWRT zur Virtualisierung von Wi-Fi-Zugangspunkten (APs). Die OpenWRT-Implementierung für Cuttlefish befindet sich unter platform/external/openwrt-prebuilts/ .

Um eine Verbindung zu OpenWRT herzustellen, verwenden Sie die Informationen in der folgenden Tabelle. Wenn Sie beim Starten von Cuttlefish keine Optionen anhängen, lautet 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
Website https://localhost:1443/devices/ DEVICE_ID /openwrt
Webseite (alt) https:// OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Für Geräte mit Android 14 oder höher verwenden Sie zum Steuern und Konfigurieren virtualisierter WLAN-APs den OpenwrtControlService Dienst. Einzelheiten zur Steuerung dieses Dienstes mithilfe der REST-API oder der CLI 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 Holen Sie sich die OpenWRT-WAN-IP-Adresse. Verwenden Sie diese Adresse, um eine OpenWRT-Instanz über SSH oder eine Webschnittstelle zu verbinden.