Wi-Fi

Na tej stronie opisujemy, jak sterować Wi-Fi na urządzeniu Cuttlefish.

Używanie Wmediumd

Funkcja Wi-Fi Cuttlefish korzysta z narzędzia symulacyjnego Wmediumd, aby symulować medium bezprzewodowe. Usługa wmediumd zarządza dostarczaniem pakietów Wi-Fi między dwiema instancjami Cuttlefish lub między instancją Cuttlefish a instancją OpenWRT. Wmedium dla Cuttlefish jest zaimplementowany 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

W przypadku urządzeń z Androidem 14 lub nowszym używaj WmediumdService do sterowania narzędziem Wmedium. Szczegółowe informacje o tym, jak sterować tą usługą za pomocą interfejsu API REST lub interfejsu wiersza poleceń, znajdziesz w sekcji Cuttlefish: sterowanie środowiskiem.

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

Metody Opis
ListStations Wyświetl wszystkie stacje podłączone do Wmediumd.
LoadConfig Wczytaj konfigurację Wmediumd z danego pliku.
ReloadConfig Ponownie załaduj aktualnie załadowany plik konfiguracji Wmediumd.
SetCivicloc Ustaw lokalizację administracyjną (np. adres pocztowy) konkretnej stacji.
SetLci Ustaw LCI (szerokość geograficzna, długość geograficzna, wysokość) konkretnej stacji.
SetPosition Ustaw położenie stacji w przestrzeni dwuwymiarowej.
SetSnr Ustaw wartość stosunku sygnału do szumu (SNR) (0–255) między dwiema stacjami.
SetTxpower Ustaw moc nadawania (TX power) konkretnej stacji.
StartPcap Rozpocznij rejestrowanie wszystkich ramek przesyłanych drogą radiową i zapisywanie ich 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ć nośnikiem bezprzewodowym na urządzeniach Cuttlefish. W tabeli poniżej znajdziesz listę poleceń podrzędnych w wmediumd_control.

Podpolecenia Opis
list_stations Wyświetl wszystkie stacje podłączone do Wmediumd.
reload_config [CONFIG_FILE_PATH] Ponownie załaduj konfigurację Wmediumd za pomocą polecenia CONFIG_FILE_PATH . Jeśli znak CONFIG_FILE_PATH zostanie pominięty, ponownie załaduj aktualnie załadowany plik konfiguracyjny.
set_civicloc MAC_ADDR CIVICLOC Ustaw lokalizację cywilną (np. adres pocztowy) konkretnej stacji.
set_lci MAC_ADDR LCI Ustaw LCI (szerokość geograficzna, długość geograficzna, wysokość) konkretnej stacji.
set_position MAC_ADDR X_POSITION Y_POSITION Ustaw pozycję stacji w przestrzeni dwuwymiarowej.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Ustaw wartość stosunku sygnału do szumu (SNR) (0–255) między dwiema stacjami.
start_pcap PCAP_FILE_PATH Zacznij przechwytywać wszystkie klatki przesyłane drogą radiową i zapisywać je w pliku .pcap.
stop_pcap Zatrzymaj i zakończ bieżące przechwytywanie pakietów.

Korzystanie z OpenWRT

Funkcja Wi-Fi w Cuttlefish obsługuje używanie OpenWRT do wirtualizacji punktów dostępu Wi-Fi. Implementacja OpenWRT dla Cuttlefish znajduje się pod adresem platform/external/openwrt-prebuilts/.

Aby połączyć się z OpenWRT, skorzystaj z informacji w tej tabeli. Jeśli podczas uruchamiania Cuttlefish nie dołączysz żadnych opcji, identyfikator urządzenia to cvd-1, a adres IP sieci WAN OpenWRT to 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

W przypadku urządzeń z Androidem 14 lub nowszym do sterowania i konfigurowania zwirtualizowanych punktów dostępu Wi-Fi używaj usługi OpenwrtControlService. Szczegółowe informacje o tym, jak kontrolować 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 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.