Kablosuz

Bu sayfada, Cuttlefish cihazda kablosuz bağlantının nasıl kontrol edileceği açıklanmaktadır.

Wmediumd'ı kullanma

Mürekkep Balığı kablosuz özelliği, kablosuz ortamı simüle etmek için bir simülasyon aracı olan Wmediumd'i kullanır. Wmediumd, iki Cuttlefish örneği veya bir Cuttlefish örneği ile OpenWRT örneği arasında kablosuz paketlerin teslimatını yönetir. Cuttlefish için Wmedium, /platform/external/wmediumd/ sürümünde uygulanır.

Wmediumd arayüzünü kontrol etmek için WmediumdService (Android 14 veya sonraki sürümler) ya da wmedium_control (Android 13 veya önceki sürümler) aracını kullanın.

WmediumdService

Android 14 veya sonraki sürümleri çalıştıran cihazlarda Wmedium aracını kontrol etmek için WmediumdService kullanın. Bu hizmeti REST API'yi veya komut satırı arayüzünü (CLI) kullanarak nasıl kontrol edeceğiniz hakkında ayrıntılı bilgi için Mürekkep Balığı: Ortam Kontrolü başlıklı makaleyi inceleyin.

Aşağıdaki tabloda WmediumdService içindeki yöntemler listelenmiştir. Yöntemler hakkında ayrıntılı bilgi için wmediumd.proto başlıklı makaleyi inceleyin.

Yöntemler Açıklama
ListStations Wmediumd'e bağlı tüm istasyonları listeleyin.
LoadConfig Wmediumd yapılandırmasını belirli bir dosyayla yükleyin.
ReloadConfig Şu anda yüklü olan Wmediumd yapılandırma dosyasını yeniden yükleyin.
SetCivicloc Belirli istasyonun resmi konumunu (ör. posta adresi) ayarlayın.
SetLci Belirli istasyonun LCI'sini (enlem, boylam, rakım) ayarlayın.
SetPosition İstasyonun iki boyutlu alandaki konumunu ayarlayın.
SetSnr İki istasyon arasında sinyal-gürültü oranı (SNR) değerini (0-255) ayarlayın.
SetTxpower Belirli istasyonun iletim gücünü (TX gücü) ayarlayın.
StartPcap Yayına aktarılan tüm kareleri yakalamaya başlayın ve bunları bir .pcap dosyasında depolayın.
StopPcap Mevcut paket yakalamayı durdurun ve sonlandırın.

wmediumd_control

Android 13 veya önceki sürümleri çalıştıran cihazlarda Cuttlefish cihazlarda kablosuz ortamı kontrol etmek için wmediumd_control aracını kullanın. Aşağıdaki tabloda wmediumd_control komutundaki alt komutlar listelenmiştir.

Alt komutlar Açıklama
list_stations Wmediumd'ye bağlı tüm istasyonları listeleyin.
reload_config [CONFIG_FILE_PATH] Wmediumd yapılandırmasını CONFIG_FILE_PATH ile yeniden yükleyin. CONFIG_FILE_PATH çıkarılırsa şu anda yüklü olan yapılandırma dosyasını yeniden yükleyin.
set_civicloc MAC_ADDR CIVICLOC Belirli bir istasyonun şehir konumunu (örneğin, posta adresi) belirtin.
set_lci MAC_ADDR LCI Belirli istasyonun LCI'sini (enlem, boylam, yükseklik) ayarlayın.
set_position MAC_ADDR X_POSITION Y_POSITION İstasyonun iki boyutlu alandaki konumunu ayarlayın.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE İki istasyon arasındaki sinyal-gürültü oranı (SNR) değerini (0-255) ayarlayın.
start_pcap PCAP_FILE_PATH Yayınlanan tüm kareleri yakalamaya başlayın ve bunları bir .pcap dosyasına kaydedin.
stop_pcap Mevcut paket yakalamayı durdurun ve sonlandırın.

OpenWRT'yi kullanma

Mürekkep Balığı kablosuz özelliği, kablosuz erişim noktalarını (AP'ler) sanallaştırmak için OpenWRT'nin kullanılmasını destekler. Mürekkep balığı için OpenWRT uygulaması platform/external/openwrt-prebuilts/ adresindedir.

OpenWRT'ye bağlanmak için aşağıdaki tabloda yer alan bilgileri kullanın. Cuttlefish'i başlatırken herhangi bir seçenek eklemezseniz cihaz kimliği cvd-1, OpenWRT WAN IP adresi ise 192.168.94.2 veya 192.168.96.2 olur.

Bağlantı türü Hedef
SSH root@OPENWRT_WAN_IP_ADDRESS
Web sayfası https://localhost:1443/devices/DEVICE_ID/openwrt
Web sayfası (eski) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Android 14 veya sonraki sürümleri çalıştıran cihazlarda sanallaştırılmış kablosuz AP'leri kontrol etmek ve yapılandırmak için OpenwrtControlService hizmetini kullanın. Bu hizmeti REST API veya KSA'yı kullanarak nasıl kontrol edeceğiniz hakkında ayrıntılı bilgi için Mürekkep Balığı: Ortam Kontrolü başlıklı makaleyi inceleyin.

Aşağıdaki tabloda OpenwrtControlService içindeki yöntemler listelenmiştir. Yöntemler hakkında ayrıntılı bilgi için openwrt_control.proto bölümüne bakın.

Yöntemler Açıklama
LuciRpc OpenWRT'teki Luci web arayüzüne RPC çağrısı gönderin.
OpenwrtIpAddr OpenWRT WAN IP adresini alın. OpenWRT örneğini SSH veya web arayüzü üzerinden bağlamak için bu adresi kullanın.