Wi-Fi

Na tej stronie opisano, jak zarządzać Wi-Fi na urządzeniu Cuttlefish.

Korzystanie z Wmediumd

Funkcja Wi-Fi w Cuttlefish korzysta z Wmediumd, narzędzia do symulacji, aby symulować medium bezprzewodowe. Wmediumd zarządza dostarczaniem pakietów Wi-Fi między 2 instancjami Cuttlefish lub między instancją Cuttlefish a instancją OpenWRT. Wmedium dla Cuttlefish jest zaimplementowane w /platform/external/wmediumd/.

Aby sterować interfejsem Wmediumd, użyj narzędzia WmediumdService (Android 14 lub nowszy) lub wmedium_control (Android 13 lub starszy).

WmediumdService

Na urządzeniach z Androidem 14 lub nowszym możesz używać klawisza WmediumdService do sterowania narzędziem Wmedium. Szczegółowe informacje o sterowaniu tą usługą za pomocą interfejsu API REST lub interfejsu wiersza poleceń (CLI) znajdziesz w artykule Cuttlefish: kontrola środowiska.

W tabeli poniżej znajdziesz metody w WmediumdService. Szczegółowe informacje o tych metodach znajdziesz w artykule wmediumd.proto.

Metody Opis
ListStations Lista wszystkich stacji dołączonych do Wmediumd.
LoadConfig Załaduj konfigurację Wmediumd za pomocą danego pliku.
ReloadConfig Ponowne załadowanie aktualnie wczytanego pliku konfiguracji Wmediumd.
SetCivicloc Ustaw lokalizację (np. adres pocztowy) konkretnej stacji.
SetLci Ustaw LCI (szerokość geograficzną, długość geograficzną i wysokość) konkretnej stacji.
SetPosition Ustaw położenie stacji w dwudwumiarowej przestrzeni.
SetSnr Ustaw wartość współczynnika sygnału do szumu (SNR) (0–255) między dwoma stacjami.
SetTxpower Ustaw moc nadawania (moc TX) konkretnej stacji.
StartPcap Zacznij rejestrować wszystkie ramki przesyłane do emisji i zapisywać je w pliku .pcap.
StopPcap Zatrzymaj i zakończ bieżące przechwytywanie pakietów.

wmediumd_control

W przypadku urządzeń z Androidem 13 lub starszym użyj narzędzia wmediumd_control, aby sterować medium bezprzewodowym na urządzeniach Cuttlefish. Tabela poniżej zawiera podpolecenia wmediumd_control.

Podpolecenia Opis
list_stations Wymień wszystkie stacje połączone z Wmediumd.
reload_config [CONFIG_FILE_PATH] Ponownie załaduj konfigurację Wmediumd za pomocą CONFIG_FILE_PATH . Jeśli CONFIG_FILE_PATHjest pominięty, ponownie załaduj aktualnie wczytany plik konfiguracji.
set_civicloc MAC_ADDR CIVICLOC Ustaw lokalizację prawną (np. adres pocztowy) konkretnej stacji.
set_lci MAC_ADDR LCI Ustaw LCI (szerokość, długość geograficzna, wysokość) konkretnej stacji.
set_position MAC_ADDR X_POSITION Y_POSITION Ustaw położenie stacji w dwudwumiarowej przestrzeni.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Ustaw wartość współczynnika sygnału do szumu (SNR) (0–255) między dwoma stacjami.
start_pcap PCAP_FILE_PATH Zacznij przechwytywać wszystkie klatki przesyłane do powietrza i zapisywać je w pliku .pcap.
stop_pcap Zatrzymaj i zakończ bieżące przechwytywanie pakietów.

Korzystanie z OpenWRT

Funkcja Wi-Fi Cuttlefish obsługuje używanie OpenWRT do wirtualizacji punktów dostępu Wi-Fi (AP). Implementacja OpenWRT dla Cuttlefish jest dostępna na stronie platform/external/openwrt-prebuilts/.

Aby połączyć się z OpenWRT, użyj informacji z tabeli poniżej. Jeśli podczas uruchamiania Cuttlefish nie dodasz żadnych opcji, identyfikator urządzenia będzie miał wartość cvd-1, a adres IP OpenWRT WAN będzie miał wartość 192.168.94.2 lub 192.168.96.2.

Typ połączenia Miejsce docelowe
SSH root@OPENWRT_WAN_IP_ADDRESS
Strona internetowa https://localhost:1443/devices/DEVICE_ID/openwrt
Strona internetowa (starsza wersja) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Na urządzeniach z Androidem 14 lub nowszym, aby sterować wirtualnymi punktami dostępu Wi-Fi i je konfigurować, użyj usługi OpenwrtControlService. Szczegółowe informacje o sterowaniu tą usługą za pomocą interfejsu API REST lub interfejsu wiersza poleceń znajdziesz w artykule Cuttlefish: kontrola środowiska.

W tabeli poniżej znajdziesz metody w OpenwrtControlService. Szczegółowe informacje o tych metodach znajdziesz w artykule openwrt_control.proto.

Metody Opis
LuciRpc Wysyłanie wywołania RPC do interfejsu internetowego Luci w OpenWRT.
OpenwrtIpAddr Uzyskaj adres IP WAN OpenWRT. Użyj tego adresu, aby połączyć instancję OpenWRT przez SSH lub interfejs internetowy.