پیشینه
اجرای چندین دستگاه مجازی Cuttlefish را میتوان با اجرای دستور زیر انجام داد:
launch_cvd --num_instances=n
وقتی دو یا چند نمونه را با استفاده از پرچم --num_instances اجرا میکنید، نمونهها رسانه اتصال برای Wi-Fi و Bluetooth را به اشتراک میگذارند. این تنظیم به نمونههای Cuttlefish اجازه میدهد تا بدون اقدام اضافی، یکدیگر را از طریق بلوتوث و Wi-Fi کشف و به هم متصل شوند.
با این حال، اگر چندین نمونه را با استفاده از پرچم --base_instance_num و چندین فراخوانی launch_cvd اجرا میکنید، باید مسیر سرور vhost مربوط به wmediumd را برای اشتراکگذاری رسانه Wi-Fi مشخص کنید و همچنین از اجرای چندین نمونه ماشین مجازی برای AP جلوگیری کنید.
مثال راهاندازی چند دستگاهی
دستورات زیر نحوهی راهاندازی دو نمونهی Cuttlefish که رسانهی وایفای را به اشتراک میگذارند را با استفاده از اجرای سریال launch_cvd نشان میدهند.
launch_cvd
launch_cvd --base_instance_num=2 \ --vhost_user_mac80211_hwsim=$HOME/cuttlefish_runtime.1/internal/vhost_user_mac80211 \ --ap_kernel_image="" --ap_rootfs_image="" #Prevent launching multiple VM instances for AP
بلوتوث
پیادهسازی بلوتوث Cuttlefish توسط rootcanal پشتیبانی میشود و میتوان آن را با کنسول خط فرمان رابط کاربری وب کنترل کرد.
در کنسول، چندین دستور وجود دارد که امکان کنترل بلوتوث روی دستگاه مهمان را فراهم میکند:
| فرمان | توضیحات |
|---|---|
list | فهرست دستگاهها و فیزیکهای فعلی |
add DEVICE_TYPE [ARGS] | ایجاد دستگاه جدید از نوع DEVICE_TYPE |
del DEVICE_INDEX | حذف یک دستگاه |
PHY_TYPE add_phy | اضافه کردن phy جدید با PHY_TYPE |
del_phy PHY_INDEX | حذف یک phy |
add_device_to_phy DEVICE_INDEX PHY_INDEX | یک دستگاه به فی اضافه کنید |
del_device_from_phy DEVICE_INDEX PHY_INDEX | حذف یک دستگاه از phy |
add_remote HOSTNAME PORT PHY_TYPE | یک دستگاه Rootcanal از راه دور اضافه کنید و آن را در phy ثبت کنید |
| نوع دستگاه و آرگومانها |
|---|
beacon [MAC_ADDRESS] [ADVERTISE_INTERVAL] |
scripted_beacon [MAC_ADDRESS] [CONFIG_PATH] [EVENTS_PATH] |
keyboard [MAC_ADDRESS] [ADVERTISE_INTERVAL] |
loopback [MAC_ADDRESS] [ADVERTISE_INTERVAL] |
sniffer |
وایفای
wmediumd_control
wmediumd_control یک ابزار خط فرمان است که رسانه اتصال Wi-Fi را کنترل میکند. این ابزار دستورات زیر را برای دستکاری Wi-Fi دارد:
| فرمان | توضیحات |
|---|---|
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE | تنظیم مقدار SNR (0~255) بین دو ایستگاه |
start_pcap PCAP_FILE_PATH | شروع به ضبط تمام فریمهای ارسالی به هوا و ذخیره آنها در فایل .pcap میکند. |
stop_pcap | ضبط بسته فعلی را متوقف و نهایی کنید |
list_stations | فهرست تمام ایستگاههای متصل به wmediumd |
reload_config [CONFIG_FILE_PATH] | پیکربندی wmediumd را با CONFIG_FILE_PATH مجدداً بارگذاری کنید، اگر CONFIG_FILE_PATH حذف شده باشد، فایل پیکربندی بارگذاری شده فعلی را مجدداً بارگذاری کنید |
set_position MAC_ADDR X_POSITION Y_POSITION | موقعیت ایستگاه را در فضای دو بعدی تنظیم کنید |
OpenWRT
اگر میخواهید به OpenWRT (Access Point) متصل شوید، میتوانید از ssh یا صفحه وب ادمین استفاده کنید.
| نوع اتصال | روش |
|---|---|
| اساساچ | ssh root@192.168.96.2 |
| صفحه وب مدیریت | https://192.168.96.2 |