배경
다음 명령어를 실행하여 여러 Cuttlefish 가상 기기를 실행할 수 있습니다.
launch_cvd --num_instances=n
--num_instances
플래그를 사용하여 두 개 이상의 인스턴스를 실행하는 경우 인스턴스는 Wi-Fi 및 블루투스에서 연결 매체를 공유합니다. 이 설정을 사용하면 Cuttlefish 인스턴스에서 추가 작업 없이 블루투스와 Wi-Fi를 통해 서로 찾고 연결할 수 있습니다.
하지만, --base_instance_num
플래그와 여러 launch_cvd
호출을 사용하여 여러 개의 인스턴스를 실행하고 있다면 wmediumd
의 vhost 서버 경로를 지정하여 Wi-Fi 매체를 공유하고 AP의 여러 VM 인스턴스 실행도 방지해야 합니다.
멀티 디바이스 실행 예
다음 명령어는 launch_cvd
직렬 실행을 사용하여 Wi-Fi 매체를 공유하는 두 개의 Cuttlefish 인스턴스를 실행하는 방법을 보여줍니다.
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에서 지원하며 웹 UI 명령줄 콘솔로 제어할 수 있습니다.
콘솔에는 게스트 기기의 블루투스를 제어할 수 있는 몇 가지 명령어가 있습니다.
명령어 | 설명 |
---|---|
list |
현재 기기 및 phy 목록 |
add DEVICE_TYPE [ARGS] |
DEVICE_TYPE 유형의 새 기기 만들기 |
del DEVICE_INDEX |
기기 삭제 |
add_phy PHY_TYPE |
PHY_TYPE의 새 phy 추가 |
del_phy PHY_INDEX |
phy 삭제 |
add_device_to_phy DEVICE_INDEX PHY_INDEX |
phy에 기기 추가 |
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 |
Wi-Fi
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]
|
CONFIG_FILE_PATH의 wmediumd 구성 새로고침(CONFIG_FILE_PATH가 생략된 경우에는 현재 로드된 구성 파일을 새로고침) |
set_position MAC_ADDR
X_POSITION
Y_POSITION |
2차원 공간에서 스테이션 위치 설정 |
OpenWRT
OpenWRT(액세스 포인트)에 연결하려면 ssh
나 관리자 웹페이지 중 하나를 사용하면 됩니다.
연결 유형 | 메서드 |
---|---|
ssh | ssh root@192.168.96.2 |
관리 웹페이지 | https://192.168.96.2 |