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

関連情報