Wi-Fi

На этой странице описывается, как управлять Wi-Fi на устройстве Cuttlefish.

Использовать Wmediumd

Функция Cuttlefish Wi-Fi использует Wmediumd, инструмент моделирования, для моделирования беспроводной среды. Wmediumd управляет доставкой пакетов Wi-Fi между двумя экземплярами Cuttlefish или между экземпляром Cuttlefish и экземпляром OpenWRT. Wmedium для Cuttlefish реализован в /platform/external/wmediumd/ .

Для управления интерфейсом Wmediumd используйте инструмент WmediumdService (Android 14 или выше) или wmedium_control (Android 13 или ниже).

WmediumdService

Для устройств под управлением Android 14 или выше используйте WmediumdService для управления инструментом Wmedium. Подробную информацию о том, как управлять этой службой с помощью REST API или интерфейса командной строки (CLI), см. в Cuttlefish: Environment Control .

В следующей таблице перечислены методы в WmediumdService . Подробную информацию о методах см. wmediumd.proto .

Методы Описание
ListStations Список всех станций, подключенных к Wmediumd.
LoadConfig Загрузить конфигурацию Wmediumd с указанным файлом.
ReloadConfig Перезагрузите текущий загруженный файл конфигурации Wmediumd.
SetCivicloc Укажите местоположение (например, почтовый адрес) конкретной станции.
SetLci Установите LCI (широту, долготу, высоту) конкретной станции.
SetPosition Установите положение станции в двухмерном пространстве.
SetSnr Установите значение отношения сигнал/шум (SNR) (0-255) между двумя станциями.
SetTxpower Установите мощность передачи (TX-мощность) конкретной станции.
StartPcap Начните захват всех кадров, передаваемых в эфир, и сохранение их в файле .pcap .
StopPcap Остановить и завершить текущий захват пакетов.

wmediumd_control

Для устройств под управлением Android 13 или ниже используйте инструмент wmediumd_control для управления беспроводной средой в устройствах Cuttlefish. В следующей таблице перечислены подкоманды в wmediumd_control .

Подкоманды Описание
list_stations Список всех станций, подключенных к Wmediumd.
reload_config [ CONFIG_FILE_PATH ] Перезагрузить конфигурацию Wmediumd с CONFIG_FILE_PATH . Если CONFIG_FILE_PATH пропущен, перезагрузить текущий загруженный файл конфигурации.
set_civicloc MAC_ADDR CIVICLOC Укажите местоположение (например, почтовый адрес) конкретной станции.
set_lci MAC_ADDR LCI Установите LCI (широту, долготу, высоту) конкретной станции.
set_position MAC_ADDR X_POSITION Y_POSITION Установите положение станции в двухмерном пространстве.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Установите значение отношения сигнал/шум (SNR) (0-255) между двумя станциями.
start_pcap PCAP_FILE_PATH Начните захват всех кадров, передаваемых в эфир, и сохранение их в файле .pcap .
stop_pcap Остановить и завершить текущий захват пакетов.

Использовать OpenWRT

Функция Cuttlefish Wi-Fi поддерживает использование OpenWRT для виртуализации точек доступа Wi-Fi (AP). Реализация OpenWRT для Cuttlefish находится в platform/external/openwrt-prebuilts/ .

Для подключения к OpenWRT используйте информацию в следующей таблице. Если вы не добавляете никаких опций при запуске Cuttlefish, идентификатор устройства — cvd-1 , а IP-адрес OpenWRT WAN — 192.168.94.2 или 192.168.96.2 .

Тип соединения Место назначения
SSH root@ OPENWRT_WAN_IP_ADDRESS
Веб-страница https://localhost:1443/devices/ DEVICE_ID /openwrt
Веб-страница (устаревшая) https:// OPENWRT_WAN_IP_ADDRESS

OpenWRTControlService

Для устройств под управлением Android 14 или выше для управления и настройки виртуализированных точек доступа Wi-Fi используйте службу OpenwrtControlService . Подробнее об управлении этой службой с помощью REST API или CLI см. Cuttlefish: Environment Control .

В следующей таблице перечислены методы OpenwrtControlService . Подробную информацию о методах см. в openwrt_control.proto .

Методы Описание
LuciRpc Отправка RPC-вызова на веб-интерфейс Luci в OpenWRT.
OpenwrtIpAddr Получить IP-адрес OpenWRT WAN. Используйте этот адрес для подключения экземпляра OpenWRT через SSH или веб-интерфейс.