本頁介紹如何控制 Cuttlefish 裝置上的 Wi-Fi。
使用Wmediumd
Cuttlefish Wi-Fi 功能使用模擬工具 Wmediumd 來模擬無線介質。 Wmediumd 管理兩個 Cuttlefish 實例之間或 Cuttlefish 實例與 OpenWRT 實例之間的 Wi-Fi 封包的傳遞。 Cuttlefish 的 Wmedium 在/platform/external/wmediumd/
中實現。
若要控制 Wmediumd 接口,請使用WmediumdService
(Android 14 或更高版本)或wmedium_control
(Android 13 或更低版本)工具。
中型服務
對於運行 Android 14 或更高版本的設備,請使用WmediumdService
來控制 Wmedium 工具。有關如何使用 REST API 或命令列介面 (CLI) 控制此服務的詳細信息,請參閱Cuttlefish:環境控制。
下表列出了WmediumdService
中的方法。有關這些方法的詳細信息,請參閱wmediumd.proto
。
方法 | 描述 |
---|---|
ListStations | 列出連接到 Wmediumd 的所有電台。 |
LoadConfig | 使用給定檔案載入 Wmediumd 配置。 |
ReloadConfig | 重新載入目前載入的 Wmediumd 設定檔。 |
SetCivicloc | 設定特定車站的城市位置(例如郵政地址)。 |
SetLci | 設定特定電台的 LCI(緯度、經度、海拔)。 |
SetPosition | 設定站點在二維空間中的位置。 |
SetSnr | 設定兩個站之間的訊號雜訊比 (SNR) 值 (0-255)。 |
SetTxpower | 設定特定站點的發射功率(TX power)。 |
StartPcap | 開始捕捉傳輸到空中的所有幀並將其儲存到.pcap 檔案中。 |
StopPcap | 停止並完成當前資料包捕獲。 |
wmediumd_control
對於運行 Android 13 或更低版本的設備,請使用wmediumd_control
工具來控制 Cuttlefish 設備中的無線媒體。下表列出了wmediumd_control
中的子命令。
子命令 | 描述 |
---|---|
list_stations | 列出連接到 Wmediumd 的所有電台。 |
reload_config [ CONFIG_FILE_PATH ] | 使用CONFIG_FILE_PATH重新載入 Wmediumd 設定。如果省略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)。 Cuttlefish 的 OpenWRT 實作位於platform/external/openwrt-prebuilts/
。
若要連線到 OpenWRT,請使用下表中的資訊。如果啟動 Cuttlefish 時不附加任何選項,則設備 ID 為cvd-1
,OpenWRT WAN IP 位址為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 |
Openwrt控制服務
對於運行 Android 14 或更高版本的設備,要控制和配置虛擬化 Wi-Fi AP,請使用OpenwrtControlService
服務。有關如何使用 REST API 或 CLI 控制此服務的詳細信息,請參閱Cuttlefish:環境控制。
下表列出了OpenwrtControlService
中的方法。有關這些方法的詳細信息,請參閱openwrt_control.proto
。
方法 | 描述 |
---|---|
LuciRpc | 向 OpenWRT 中的 Luci Web 介面發送 RPC 呼叫。 |
OpenwrtIpAddr | 取得 OpenWRT WAN IP 位址。使用此位址透過 SSH 或 Web 介面連線 OpenWRT 執行個體。 |