QEMU 가상 머신에는 IP가 없습니다

QEMU 가상 머신에는 IP가 없습니다

QEMU에서 VM 실행을 시도했는데 VM이 시작되었지만 eth0호스트에서 브리지 및 탭 인터페이스를 구성했는데 다음을 볼 수 있습니다.

brctl show bro
bridge name     bridge id               STP enabled     interfaces
bro             8000.bedc8d16e7d8       no              eno1
                                                        tap0

인터페이스가 좋아 보입니다.

ip addr show bro
3: bro: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether be:dc:8d:16:e7:d8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.112/24 brd 192.168.100.255 scope global dynamic bro
       valid_lft 540129sec preferred_lft 540129sec
    inet6 fe80::bcdc:8dff:fe16:e7d8/64 scope link
       valid_lft forever preferred_lft forever

ip addr show eno1
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master bro state UP group default qlen 1000
        link/ether 98:90:96:9d:d9:83 brd ff:ff:ff:ff:ff:ff

ip addr show tap0
8: tap0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel master bro state DOWN group default qlen 1000
    link/ether d2:74:5b:04:81:f8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.222/24 brd 192.168.100.255 scope global tap0
       valid_lft forever preferred_lft forever

다음은 가상 머신을 실행하는 데 사용하는 명령입니다.

sudo qemu-system-aarch64 -m 1024 -cpu cortex-a57 -M virt -nographic -pflash flash0.img -pflash flash1.img -drive if=none,file=CentOS-7-aarch64-Minimal-1810.iso,id=hd0 -device virtio-blk-device,drive=hd0 -netdev type=tap,id=net0 -device virtio-net-device,netdev=net0,mac=bc:dc:8d:16:e7:d8, -hda centos7-arm.img

게스트에는 IP가 없으며 DHCP도 다음을 수행하지 않습니다.

[root@localhost ~]# ip link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether bc:dc:8d:16:e7:d8 brd ff:ff:ff:ff:ff:ff

CentOS에서 구성하려고 하면 nmtui실패 service network restart합니다. 로그에서 발견됨:

localhost.localdomain network[4058]: Bringing up interface eth0: Error: Connection activation failed: IP configuration could not be reserved (no available address, timeout, etc.)

무엇이 잘못될 수 있는지 아시나요?

답변1

kvmlibvirt명령줄( 또는 최근에는 내가 선호하는 Proxmox) 에서 직접 게스트를 실행한 지 꽤 오래되었습니다 .

그러나 호스트의 인터페이스 정의를 보고 이를 내 작업 구성과 비교하면 가장 분명한 차이점은 인터페이스 tap0의 IP 주소가 192.168.100.222/24인 반면 내 인터페이스는 그렇지 않다는 것입니다. (게스트는 DHCP에서 얻은 IP 주소를 정의합니다. 호스트 인터페이스에는 IP 주소가 없어야 합니다.)

# brctl show br0
bridge name     bridge id               STP enabled     interfaces
br0             8000.009c029758d6       no              eth0
                                                        vnet5

# ip addr show vnet5
12: vnet5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:3c:75:33 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fe3c:7533/64 scope link
       valid_lft forever preferred_lft forever


# ssh vmguest ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:3c:75:33 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.15/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe3c:7533/64 scope link
       valid_lft forever preferred_lft forever

해당 IP 주소를 직접 설정했습니까 tap0, 아니면 명령의 부작용이었습니까 kvm?

관련 정보