این صفحه نحوه کنترل وایفای در دستگاه Cuttlefish را شرح میدهد.
از Wmediumd استفاده کنید
ویژگی Wi-Fi Cuttlefish از Wmediumd، یک ابزار شبیهسازی، برای شبیهسازی محیط بیسیم استفاده میکند. Wmediumd تحویل بستههای Wi-Fi را بین دو نمونه Cuttlefish یا بین یک نمونه Cuttlefish و یک نمونه OpenWRT مدیریت میکند. Wmedium برای Cuttlefish در /platform/external/wmediumd/ پیادهسازی شده است.
برای کنترل رابط Wmediumd، از ابزار WmediumdService (اندروید ۱۴ یا بالاتر) یا wmedium_control (اندروید ۱۳ یا پایینتر) استفاده کنید.
خدمات متوسط
برای دستگاههایی که اندروید ۱۴ یا بالاتر دارند، 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
برای دستگاههایی که اندروید ۱۳ یا پایینتر دارند، از ابزار 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) وایفای پشتیبانی میکند. پیادهسازی OpenWRT برای Cuttlefish در platform/external/openwrt-prebuilts/ قرار دارد.
برای اتصال به OpenWRT، از اطلاعات جدول زیر استفاده کنید. اگر هنگام اجرای Cuttlefish هیچ گزینهای اضافه نکنید، شناسه دستگاه cvd-1 و آدرس IP شبکه گسترده OpenWRT برابر با 192.168.94.2 یا 192.168.96.2 خواهد بود.
| نوع اتصال | مقصد |
|---|---|
| اساساچ | root@ OPENWRT_WAN_IP_ADDRESS |
| صفحه وب | https://localhost:1443/devices/ DEVICE_ID /openwrt |
| صفحه وب (قدیمی) | https:// OPENWRT_WAN_IP_ADDRESS |
سرویس کنترل Openwrt
برای دستگاههایی که اندروید ۱۴ یا بالاتر دارند، برای کنترل و پیکربندی نقاط دسترسی مجازی Wi-Fi، از سرویس OpenwrtControlService استفاده کنید. برای جزئیات بیشتر در مورد نحوه کنترل این سرویس با استفاده از REST API یا CLI، به Cuttlefish: Environment Control مراجعه کنید.
جدول زیر متدهای موجود در OpenwrtControlService را فهرست میکند. برای اطلاعات بیشتر در مورد متدها، به openwrt_control.proto مراجعه کنید.
| روشها | توضیحات |
|---|---|
LuciRpc | ارسال فراخوانی RPC به رابط وب Luci در OpenWRT. |
OpenwrtIpAddr | دریافت آدرس IP شبکه WAN مربوط به OpenWRT. از این آدرس برای اتصال به یک نمونه OpenWRT از طریق SSH یا رابط وب استفاده کنید. |