Windows XP 이미지를 생성했고 이를 qemu로 부팅합니다. 를 통해 "사용자 모드 네트워킹"을 사용할 때 -net user
내 게스트 OS(Windows XP)는 10.0.2.15 IP를 할당받고 10.0.2.2에 ping을 보내 Windows 드라이버가 올바르게 설치되도록 할 수 있습니다.
불행하게도 다른 어떤 것에도 접근할 수 없습니다. 튜토리얼을 읽었는데 "사용자 모드 네트워킹"이 인터넷 연결을 전달하지 않으며 TAP 장치나 브리지 장치를 사용해야 한다는 것을 알았습니다.
저는 이러한 장치에 익숙하지 않으며 튜토리얼이 매우 혼란스럽고 복잡합니다.
튜토리얼 중 하나에서는 qemu-bridge-helper를 사용하라고 제안했습니다. br0 브리지 장치를 허용하도록 /etc/qemu/bridge.conf를 구성하고 brctl addbr br0
.
나는 튜토리얼을 따르고 다음과 같이 winxp를 부팅했습니다.
qemu-system-x86_64 --enable-kvm -m 2048 \
-drive file=winxp.img,if=virtio \
-net nic,model=virtio \
-net bridge,br=br0
이미지는 제대로 부팅되지만 IP 주소를 얻지 못합니다. 그 이유는 Windows가 DHCP를 사용하도록 구성되어 있지만 "br0"은 단지 브리지 인터페이스이기 때문에 DHCP 주소를 제공하지 않기 때문입니다(어떻게든 tap0과 연결되어 있지만 그게 무슨 뜻인지 잘 모르겠습니다).
내 질문은 - DHCP를 통해 winxp에 주소를 제공하도록 "br0"을 어떻게 구성합니까? tap0 인터페이스에서 DHCP 서버를 실행해야 합니까? br0, tap0, eth0은 어떤 관련이 있나요? (eth0은 내 고정 IP 인터페이스이며 유일한 인터넷 인터페이스입니다.)
두 번째 질문은 - 게스트 OS에 대한 간단한 인터넷 액세스를 허용하도록 이 모든 것을 구성하는 더 쉬운 방법이 있습니까?
답변1
두 번째 질문은 - 게스트 OS에 대한 간단한 인터넷 액세스를 허용하도록 이 모든 것을 구성하는 더 쉬운 방법이 있습니까?
간단한 인터넷 액세스를 위해 수동으로 구성할 필요는 없습니다(또는 적어도 그렇게 해서도 안 됩니다). QEMU가 자동으로 처리합니다. (에서 사용하는) ICMP 프로토콜을 지원하지 않거나 ping
, 외부 네트워크에 표시되지 않거나, 다른 가상 머신과 통신할 수 없는 등 몇 가지 제한 사항이 있지만 동일한 방식으로 실행되지만 간단한 사용에는 잘 작동합니다. 참조아치 위키자세한 내용은.
답변2
명령을 내린 후에는 brctl addbr br0
새 브리지를 실제 네트워크 인터페이스에 연결해야 합니다. 예를 들어 eth0
마녀는 인터넷에 연결되어 있습니다. 다음 명령에 사용하십시오 brctl addif br0 eth0
.