Хорошо, это закончилось довольно интересно. Позвольте мне поделиться решением.
На самом деле мы поддерживаем собственный пакет iPXE в моей компании. это просто форк https://github.com/ipxe/ipxe где мы настраиваем исходные конфигурации (например, в моем случае включаем HTTPS), добавляем собственный центр сертификации и т. д. Но мы не создали все цели в Makefile iPXE, немного.
В соответствии с драйвером NIC, который использует Qemu-KVM, вы можете использовать одну из целей в Makefile
. В нашем случае соответствующая часть файла конфигурации виртуальной машины (то, что вы получите, запустив вирш редактировать
) был:
<interface type='bridge'>
<mac address='12:34:56:12:34:56'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
Именно это «virtio» заставило нас определить правильную цель в Makefile
: bin/1af41000.rom
. Это уже использовал Qemu-KVM, но, конечно, не использовал наше собственное. Мы обновили символическую ссылку после создания этой цели, чтобы она ссылалась на нашу собственную, и на этом все.
эта статья помог нам понять, как работать с частью драйверов сетевой карты.