Wi-Fi

توضّح هذه الصفحة كيفية التحكّم في شبكة Wi-Fi على جهاز Cuttlefish.

استخدام Wmediumd

تستخدم ميزة Cuttlefish Wi-Fi أداة المحاكاة Wmediumd لمحاكاة الوسيط اللاسلكي. يدير Wmediumd عملية إرسال حزم Wi-Fi بين مثيلَي Cuttlefish أو بين مثيل Cuttlefish ومثيل OpenWRT. تم تنفيذ Wmedium لتطبيق Cuttlefish في /platform/external/wmediumd/.

للتحكّم في واجهة Wmediumd، استخدِم أداة WmediumdService (Android 14 أو إصدار أحدث) أو wmedium_control (Android 13 أو إصدار أقدم).

WmediumdService

بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من Android أو إصدار أحدث، استخدِم 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

على الأجهزة التي تعمل بنظام التشغيل Android 13 أو الإصدارات الأقدم، استخدِم أداة wmediumd_control للتحكّم في الوسيط اللاسلكي على أجهزة حبَّار. يسرد الجدول التالي الأوامر الفرعية في 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 لمحاكاة نقاط وصول Wi-Fi (APs). تم تنفيذ OpenWRT لنظام Cuttlefish في الإصدار platform/external/openwrt-prebuilts/.

للاتصال بـ OpenWRT، استخدِم المعلومات الواردة في الجدول التالي. إذا لم تُرفِق أي خيارات عند تشغيل Cuttlefish، يكون معرّف الجهاز هو cvd-1، وعنوان IP لشبكة OpenWRT WAN هو 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

OpenwrtControlService

بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو إصدار أحدث، يمكنك استخدام خدمة OpenwrtControlService للتحكّم في نقاط اتصال Wi-Fi الافتراضية وضبطها. للحصول على تفاصيل حول طريقة التحكّم في هذه الخدمة باستخدام واجهة برمجة تطبيقات REST أو واجهة سطر الأوامر، يمكنك الاطّلاع على Cuttlefish: Environment Control.

يسرد الجدول التالي الطرق الواردة في OpenwrtControlService. للحصول على معلومات تفصيلية عن الطرق، يُرجى الاطّلاع على openwrt_control.proto.

الطرق الوصف
LuciRpc أرسِل طلب RPC إلى واجهة الويب Luci في OpenWRT.
OpenwrtIpAddr الحصول على عنوان IP لشبكة WAN في OpenWRT استخدِم هذا العنوان لربط مثيل OpenWRT من خلال SSH أو واجهة ويب.