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 |