Verbindung mehrerer Geräte testen

Hintergrund

Mehrere virtuelle Cuttlefish-Geräte können mit dem folgenden Befehl ausgeführt werden:

launch_cvd --num_instances=n

Wenn Sie mit dem Flag --num_instances zwei oder mehr Instanzen ausführen, verwenden die Instanzen das gleiche Verbindungsmedium für WLAN und Bluetooth. Mit dieser Einstellung können die Cuttlefish-Instanzen sich ohne zusätzliche Maßnahmen über Bluetooth und WLAN gegenseitig erkennen und eine Verbindung herstellen.

Wenn Sie jedoch mehrere Instanzen mit dem Flag --base_instance_num und mehreren launch_cvd-Aufrufen ausführen, müssen Sie den vhost-Serverpfad von wmediumd angeben, um das WLAN-Medium freizugeben und zu verhindern, dass mehrere VM-Instanzen für den ZP gestartet werden.

Beispiel für den Start für verschiedene Geräte

Die folgenden Befehle zeigen, wie Sie zwei Cuttlefish-Instanzen starten, die das WLAN-Medium gemeinsam nutzen, indem Sie launch_cvd seriell ausführen.

launch_cvd
launch_cvd --base_instance_num=2 \
  --vhost_user_mac80211_hwsim=$HOME/cuttlefish_runtime.1/internal/vhost_user_mac80211 \
  --ap_kernel_image="" --ap_rootfs_image="" #Prevent launching multiple VM instances for AP

Bluetooth

Die Cuttlefish-Bluetooth-Implementierung wird von rootcanal unterstützt und kann über die Befehlszeilenkonsole der Web-UI gesteuert werden.

In der Konsole gibt es mehrere Befehle, mit denen Sie Bluetooth auf dem Gastgerät steuern können:

Befehl Beschreibung
list Aktuelle Geräte und phys auflisten
add DEVICE_TYPE [ARGS] Neues Gerät vom Typ DEVICE_TYPE erstellen
del DEVICE_INDEX Gerät löschen
add_phy PHY_TYPE Neues phy mit PHY_TYPE hinzufügen
del_phy PHY_INDEX phy löschen
add_device_to_phy DEVICE_INDEX PHY_INDEX Gerät zu phy hinzufügen
del_device_from_phy DEVICE_INDEX PHY_INDEX Gerät aus phy löschen
add_remote HOSTNAME PORT PHY_TYPE Remote-Rootcanal als Gerät hinzufügen und bei phy registrieren
Gerätetyp und Argumente
beacon [MAC_ADDRESS] [ADVERTISE_INTERVAL]
scripted_beacon [MAC_ADDRESS] [CONFIG_PATH] [EVENTS_PATH]
keyboard [MAC_ADDRESS] [ADVERTISE_INTERVAL]
loopback [MAC_ADDRESS] [ADVERTISE_INTERVAL]
sniffer

WLAN

wmediumd_control

wmediumd_control ist ein Befehlszeilentool, mit dem das WLAN-Verbindungsmedium gesteuert wird. Das Tool bietet die folgenden Befehle zum Bearbeiten von WLAN:

Befehl Beschreibung
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE SNR-Wert (0–255) zwischen zwei Stationen festlegen
start_pcap PCAP_FILE_PATH Alle an die Luft übertragenen Frames erfassen und in einer .pcap-Datei speichern
stop_pcap Aktuelle Paketerfassung beenden und abschließen
list_stations Alle an wmediumd angehängten Stationen auflisten
reload_config [CONFIG_FILE_PATH] wmediumd-Konfiguration mit CONFIG_FILE_PATH neu laden. Wenn CONFIG_FILE_PATH nicht angegeben ist, wird die aktuell geladene Konfigurationsdatei neu geladen.
set_position MAC_ADDR X_POSITION Y_POSITION Position der Station im zweidimensionalen Raum festlegen

OpenWRT

Wenn Sie eine Verbindung zu OpenWRT (Access Point) herstellen möchten, können Sie entweder ssh oder die Verwaltungswebseite verwenden.

Verbindungstyp Methode
ssh
ssh root@192.168.96.2
Verwaltungswebseite https://192.168.96.2