בדף הזה מוסבר איך לשלוט ב-Wi-Fi במכשיר Cuttlefish.
שימוש ב-Wmediumd
התכונה Cuttlefish Wi-Fi משתמשת ב-Wmediumd, כלי סימולציה,<0x000A>כדי לדמות את המדיום האלחוטי. השירות 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
תכונת ה-Wi-Fi של Cuttlefish תומכת בשימוש ב-OpenWRT כדי ליצור וירטואליזציה של נקודות גישה (AP) ל-Wi-Fi. ההטמעה של OpenWRT ב-Cuttlefish נמצאת בכתובת platform/external/openwrt-prebuilts/
.
כדי להתחבר ל-OpenWRT, משתמשים במידע שבטבלה הבאה. אם לא מוסיפים אפשרויות כשמפעילים את Cuttlefish, מזהה המכשיר הוא cvd-1
וכתובת ה-IP של ה-WAN של OpenWRT היא 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 ברשת תקשורת מרחבית (WAN) של OpenWRT. אפשר להשתמש בכתובת הזו כדי לחבר מכונת OpenWRT באמצעות SSH או ממשק אינטרנט. |