Wi-Fi

בדף הזה מוסבר איך לשלוט ב-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 או ממשק אינטרנט.