qemu에서 게스트 운영 체제의 IP 주소를 확인하는 방법은 무엇입니까?

qemu에서 게스트 운영 체제의 IP 주소를 확인하는 방법은 무엇입니까?

qemu에서 Windows XP를 부팅하면 DHCP 서버에서 IP가 할당됩니다. 내 질문은 - Windows XP에 연결할 수 있도록 Windows XP에 할당된 IP를 어떻게 확인합니까?

내 설정에 대한 자세한 내용은 다음과 같습니다.

dnsmasqtun0 인터페이스에서 실행됩니다 . 10.10.10.0/24 범위의 IP를 제공하도록 설정했습니다. 나는 -net tunqemu에 사용합니다. 여러 Windows XP 게스트 설치를 실행하므로 고정 IP 주소를 사용할 수 없습니다.

답변1

일반적인 접근 방식은Qemu 게스트 에이전트특정 명령을 실행하고,게스트 네트워크 가져오기 인터페이스네트워크 설정을 얻으려면.

이 작업을 수행하려면 먼저 VM 구성에 게스트 에이전트 소켓을 추가해야 합니다. Qemu는 다음과 유사한 방식으로 실행되어야 합니다.

qemu-system-x86_64 ... \
 -device virtio-serial,id=qga0 \
 -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 \
 -chardev socket,path=base.qga,server=on,wait=off,id=qga0 \
...

base.qga그러면 현재 디렉터리에 소켓 파일이 생성됩니다 . 그런 다음 를 사용하여 이 소켓에 연결할 수 있지만 socat편의상(명령줄 편집 및 기록) 다음으로 래핑하는 것이 좋습니다 rlwrap.

rlwrap socat STDIO UNIX:base.qga

게스트 OS에서는 직렬 VirtIO(반가상화) 드라이버와 게스트 에이전트 서비스를 설치해야 하며, 둘 다 virtio 드라이버 ISO 이미지 형식으로 제공됩니다. Fedora VirtIO Windows 드라이버 프로젝트에서 얻을 수 있습니다. Linux OS에서는 모든 주요 배포판의 배포 저장소에서 사용할 수 있거나 Qemu 소스에서 직접 빌드할 수 있습니다.

게스트 에이전트는 호스트(하이퍼바이저)와 VM 간 통신을 위한 강력한 방법이며, 다른 가상화 기술도 유사한 통합 기능(예: VMWare 추가, VirtualBox 추가)을 위한 에이전트를 제공합니다. Qemu 게스트 에이전트를 사용하면 게스트에 대한 다양한 정보를 얻을 수 있을 뿐만 아니라 일부 명령을 실행하고 게스트 내부에서 설정할 수도 있습니다. Debian 및 Qemu를 기반으로 하는 Proxmox VE는 게스트 에이전트를 사용하여 백업 및 기타 엔터프라이즈급 기능을 수행하기 전에 디스크를 정지시킵니다.

답변2

dnsmasq의 임대 목록은 구성 옵션에 지정된 파일에 저장됩니다 dhcp-leasefile. 업스트림 버전의 경우 기본 위치는 입니다 /var/lib/misc/dnsmasq.leases.

답변3

시작하면 호스트 이름을 알 수 있습니다. 이를 통해 (물론 올바르게 구성된) DNS를 쿼리합니다. 결국 DNSmasq입니다.

관련 정보