Wi-Fi

Questa pagina descrive come controllare il Wi-Fi su un dispositivo Cuttlefish.

Utilizzare Wmediumd

La funzionalità Wi-Fi Cuttlefish utilizza Wmediumd, uno strumento di simulazione, per simulare il mezzo wireless. Wmediumd gestisce l'invio di pacchetti Wi-Fi tra due istanze Cuttlefish o tra un'istanza Cuttlefish e un'istanza OpenWRT. Wmedium per Cuttlefish è implementato in /platform/external/wmediumd/.

Per controllare l'interfaccia Wmediumd, utilizza lo strumento WmediumdService (Android 14 o versioni successive) o wmedium_control (Android 13 o versioni precedenti).

WmediumdService

Per i dispositivi con Android 14 o versioni successive, usa WmediumdService per controllare lo strumento Wmedium. Per maggiori dettagli su come controllare questo servizio utilizzando l'API REST o l'interfaccia a riga di comando (CLI), consulta Cuttlefish: controllo dell'ambiente.

La tabella seguente elenca i metodi in WmediumdService. Per informazioni dettagliate sui metodi, consulta wmediumd.proto.

Metodi Descrizione
ListStations Elenca tutte le stazioni collegate a Wmediumd.
LoadConfig Carica la configurazione di Wmediumd con un determinato file.
ReloadConfig Ricarica il file di configurazione Wmediumd attualmente caricato.
SetCivicloc Imposta la posizione civica (ad esempio l'indirizzo postale) della stazione specifica.
SetLci Imposta LCI (latitudine, longitudine, altitudine) della stazione specifica.
SetPosition Imposta la posizione della stazione nello spazio bidimensionale.
SetSnr Imposta il valore del rapporto segnale/rumore (SNR) (0-255) tra due stazioni.
SetTxpower Imposta la potenza di trasmissione (potenza trasmissione) della stazione specifica.
StartPcap Inizia a acquisire tutti i frame trasmessi e archiviali in un file .pcap.
StopPcap Arresta e finalizza l'acquisizione dei pacchetti in corso.

wmediumd_control

Per i dispositivi con Android 13 o versioni precedenti, utilizza lo strumentowmediumd_control per controllare il mezzo wireless nei dispositivi Cuttlefish. La tabella seguente elenca i sottocomandi in wmediumd_control.

Sottocomandi Descrizione
list_stations Elenca tutte le stazioni collegate a Wmediumd.
reload_config [CONFIG_FILE_PATH] Ricarica la configurazione di Wmediumd con CONFIG_FILE_PATH . Se CONFIG_FILE_PATH viene omesso, ricarica il file di configurazione attualmente caricato.
set_civicloc MAC_ADDR CIVICLOC Imposta la posizione civica (ad esempio, l'indirizzo postale) della stazione specifica.
set_lci MAC_ADDR LCI Imposta LCI (latitudine, longitudine, altitudine) della stazione specifica.
set_position MAC_ADDR X_POSITION Y_POSITION Imposta la posizione della stazione nello spazio bidimensionale.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Imposta il valore (0-255) del rapporto segnale/rumore (SNR) tra due stazioni.
start_pcap PCAP_FILE_PATH Inizia a acquisire tutti i frame trasmessi e salvali in un file .pcap.
stop_pcap Arresta e finalizza l'acquisizione dei pacchetti attuale.

Utilizza OpenWRT

La funzionalità Cuttlefish Wi-Fi supporta l'utilizzo di OpenWRT per la virtualizzazione dei punti di accesso Wi-Fi (AP). L'implementazione di OpenWRT per Cuttlefish è in fase di sviluppo al livello platform/external/openwrt-prebuilts/.

Per connetterti a OpenWRT, utilizza le informazioni nella tabella seguente. Se non aggiungi opzioni quando avvii Cuttlefish, l'ID dispositivo è cvd-1 e l'indirizzo IP WAN di OpenWRT è 192.168.94.2 o 192.168.96.2.

Tipo di connessione Destinazione
SSH root@OPENWRT_WAN_IP_ADDRESS
Pagina web https://localhost:1443/devices/DEVICE_ID/openwrt
Pagina web (legacy) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Per i dispositivi con Android 14 o versioni successive, per controllare e configurare gli AP Wi-Fi virtualizzati, utilizza il servizio OpenwrtControlService. Per informazioni dettagliate su come controllare questo servizio utilizzando l'API REST o l'interfaccia a riga di comando, consulta Cuttlefish: controllo dell'ambiente.

La tabella seguente elenca i metodi in OpenwrtControlService. Per informazioni dettagliate sui metodi, consulta openwrt_control.proto.

Metodi Descrizione
LuciRpc Invia la chiamata RPC all'interfaccia web di Luci in OpenWRT.
OpenwrtIpAddr Ottieni l'indirizzo IP WAN di OpenWRT. Usa questo indirizzo per connettere un'istanza OpenWRT mediante SSH o un'interfaccia web.