Hintergrund
Das Ausführen mehrerer virtueller Cuttlefish-Geräte kann durch Ausführen des folgenden Befehls erfolgen:
launch_cvd --num_instances=n
Wenn Sie zwei oder mehr Instanzen mit dem Flag --num_instances
ausführen, teilen sich die Instanzen das Konnektivitätsmedium für Wi-Fi und Bluetooth. Mit dieser Einstellung können die Cuttlefish-Instanzen ohne zusätzliche Maßnahmen einander über Bluetooth und WLAN erkennen und eine Verbindung herstellen.
Wenn Sie jedoch mehrere Instanzen mithilfe des Flags --base_instance_num
und mehrerer launch_cvd
Aufrufe ausführen, müssen Sie den vhost-Serverpfad von wmediumd
angeben, um das Wi-Fi-Medium freizugeben, und außerdem verhindern, dass mehrere VM-Instanzen für AP gestartet werden.
Beispiel für den Start mehrerer Geräte
Die folgenden Befehle zeigen, wie zwei Cuttlefish-Instanzen, die das Wi-Fi-Medium gemeinsam nutzen, mithilfe der seriellen Ausführung von launch_cvd
gestartet werden.
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 mit der Web-UI-Befehlszeilenkonsole gesteuert werden.
In der Konsole gibt es mehrere Befehle, die die Steuerung von Bluetooth auf dem Gastgerät ermöglichen:
Befehl | Beschreibung |
---|---|
list | Aktuelle Geräte und physische Daten auflisten |
DEVICE_TYPE [ARGS] add | Erstellen Sie ein neues Gerät vom Typ DEVICE_TYPE |
del DEVICE_INDEX | Ein Gerät löschen |
add_phy PHY_TYPE | Fügen Sie mit PHY_TYPE eine neue Phy hinzu |
del_phy PHY_INDEX | Löschen Sie eine Phy |
add_device_to_phy DEVICE_INDEX PHY_INDEX | Fügen Sie ein Gerät zu Phy hinzu |
del_device_from_phy DEVICE_INDEX PHY_INDEX | Löschen Sie ein Gerät aus der Phy |
add_remote HOSTNAME PORT PHY_TYPE | Fügen Sie einen Remote-Rootcanal als Gerät hinzu und registrieren Sie es bei Phy |
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 |
W-lan
wmediumd_control
wmediumd_control
ist ein Befehlszeilentool, das das WLAN-Konnektivitätsmedium steuert. Das Tool verfügt über die folgenden Befehle zum Manipulieren von WLAN:
Befehl | Beschreibung |
---|---|
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE | Stellen Sie den SNR-Wert (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 |
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_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 Admin-Webseite verwenden.
Verbindungstyp | Methode |
---|---|
ssh | ssh root@192.168.96.2 |
Admin-Webseite | https://192.168.96.2 |