وای فای

این صفحه نحوه کنترل وای‌فای در دستگاه 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 یا رابط وب استفاده کنید.