Интерфейс Libvirt типа user не получает назначенный IP-адрес

Я пытаюсь определить виртуальную машину для libvirt с файлом XML. У меня есть интерфейс type=user определено в файле XML. Согласно документации libvirt, этому интерфейсу должен автоматически назначаться IPv4-адрес. Однако я обнаружил, что это не тот случай, когда я добавляю несколько интерфейсов type=ethernet (Мне нужно добавить 64 таких интерфейса). Когда я определяю эти интерфейсы в файле XML, user Интерфейс не получает назначенный IP-адрес.

Вот файл XML, который я использую:

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>sonic</name>
  <memory unit='KiB'>2048000</memory>
  <currentMemory unit='KiB'>2048000</currentMemory>
  <vcpu placement='static'>1</vcpu>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-i440fx-1.5'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/media/big/sonic-buildimage/target/sonic-vs.img'/>
      <target bus='virtio' dev='vda'/>
    </disk>
    <serial type='tcp'>
      <source host='127.0.0.1' mode='bind' service='7000'/>
      <target port='0'/>
      <protocol type='telnet'/>
    </serial>
    <interface type='user'>
        <model type='e1000' />
    </interface>
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <interface type='ethernet' />
    <controller type='usb' index='0'/>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='apparmor' relabel='yes'/>
  <qemu:commandline>
   <qemu:arg value='-redir'/>
   <qemu:arg value='tcp:3040::22'/>
  </qemu:commandline>
</domain>

Я попытался назначить адрес статически, изменив часть DHCP сети libvirt по умолчанию (как показано здесь) безрезультатно, и вручную добавив ip и необходимые маршруты с помощью iproute2 инструменты. Я в недоумении, как поступить. Интересно отметить, что когда IP-адрес не назначается user интерфейс, networking.service занимает почти полторы минуты, чтобы начать.

0 ответов

Другие вопросы по тегам