# bhyve network booting



## JanJurkus (Sep 8, 2017)

My internet search skills seem to be broken. I can't find out if bhyve should support PXE network boot.
I already have a deployment tool that is working with PXE, so it would be nice if bhyve could do this too.

I have found this: https://wiki.freebsd.org/SummerOfCode2015/PXEbhyve
And a few youtube videos about cbsd that should show bhyve working with PXE. However, I still can't figure this out.

I have tried booting the UEFI bootimage, with virtio-net, without any other bootable devices. This gets me in the UEFI shell. Should I load ipxe.efi from an usb stick in the UEFI shell?
Or do I need to use grub2-bhyve for a PXE boot?

I'm using vm-bhyve to control bhyve, which works fine. The templates and documentation do not show me how to PXE boot.

Has anybody got this working, or know where to look?


----------



## SirDice (Sep 8, 2017)

JanJurkus said:


> I can't find out if bhyve should support PXE network boot.


As far as I know it doesn't.



JanJurkus said:


> I have found this: https://wiki.freebsd.org/SummerOfCode2015/PXEbhyve


I don't think this ever made it into the source. Not even sure this project even completed or not.

I would like to have seen it working though. It would make creating VMs on-the-fly a lot easier if I could PXE boot to a kickstart/jumpstart installer.


----------



## JanJurkus (Sep 8, 2017)

SirDice said:


> I don't think this ever made it into the source. Not even sure this project even completed or not.



I've read the documentation of the project, and that it was only a modification for FreeBSD to do a PXE boot in bhyve, and that PXE boot was already available. Hm.

And what about this on the cbsd page then?



> bhyve: UEFI PXE boot support (with unattended install)


https://www.bsdstore.ru/en/articles/cbsd_vm_hook_dhcpd.html
Not that it's really clear to me.


----------



## Ole (Sep 9, 2017)

JanJurkus said:


> I've read the documentation of the project, and that it was only a modification for FreeBSD to do a PXE boot in bhyve, and that PXE boot was already available. Hm.
> 
> And what about this on the cbsd page then?



Hi. As far as I know, to use PXE in the bhyve out-of-the box version at the moment is impossible.

I do not know whether there is an opportunity to use PXE with other bhyve management wrapper and how they are implemented but CBSD use for UEFI boot reFIND[1] firmware which supports PXE boot.

On the other hand official FreeBSD/bhyve documentation suggests using bhyve-firmware/uefi-edk2-bhyve[2] firmware (available from the ports tree) which are also not part of the base system or bhyve.

CBSD uses the reEFIND since I ran into a number of problems when using bhyve-firmware ( some operating systems can not boot because of the fact that bhyve can not save UEFI nvram between reboots ), so the ability to use PXE with bhyve in CBSD is a nice bonus, thanks to reFIND ;-).

I'm sure that reFIND is not the only firmware that can add PXE mode boot for bhyve. However I've use reFIND and PXE boot for a long time (~ two years) and it works very well:










In addition, some companies who use the CBSD also send feedback to me on successful installations, so I can recommend you to try reFIND.


--
[1] - http://www.rodsbooks.com/refind/
[2] - http://www.freshports.org/sysutils/uefi-edk2-bhyve/


----------

