# [solved]VM PXE Boot from gentoo kvm host not working

## Elleni

I installed fog server on a centos vm. The kvm host is gentoo. I did not activate dhcp server on the fog server, I get IP directly from kvm host. I create and manage vms with virtual-manager. 

I can boot another vm with nic in nat mode and access the webinterface of fogserver. I also can access the fog webinterface from a browser on my host. But when I attempt to pxeboot. I get: Nothing to boot: No such file or directory. 

The fogserver and the second vm attempting to pxe boot get ips on the same network with the same gateway. 

What am I missing, and how can I enable pxe booting from a vm within kvm ?

Is there any package to emerge or kernel module to activate in order to enable pxe boot of kvm vms ?

Or is the problem the fogserver in the end ? How can I troubleshoot that the fogserver is providing everything needed for a client to pxeboot ? All I can say, that the installation procedure finished without errors, and as I am able to access fog server webinterface, I thought, the server should be ok. 

Edit: After finding this: 

https://docs.slackware.com/howtos:general_admin:kvm_libvirt#setup_pxe_boot_in_libvirt

I added: 

<tftp root='/tftpboot' /> and <bootp file='pxelinux.0' />

But when attempting to start default net with virsh net-start default, I got: 

```

Fehler: Netzwerk default konnte nicht gestartet werden

Fehler: internal error: Untergeordneter Prozess (VIR_BRIDGE_NAME=virbr0 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper) unerwartet Ende Status 1: 

dnsmasq: unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support) at line 16 of /var/lib/libvirt/dnsmasq/default.conf
```

So I emerged dnsmasq with tftp and dnssec useflag and tried again.  

Now trying to start default network with virsh net-start default I get

```
dnsmasq: TFTP directory /tftpboot inaccessible: No such file or directory
```

 which is normal as the tftp path would be provided by the fogserver centos vm, and the default network remains inactive. 

So removing those two lines mentioned in the link above enables me starting the default network again. But then again there is Nothing to boot message right after ip adress configuration. 

Would I have to create a second network, that is active only after fogserver is booted and thus providing tftp service ? And how would I do this? Or would I have to setup the fogserver vm as dhcp server, and what would I have to configure in kvm host in order to let clients use that dhcp server and not internal kvm one? Or how else can this be solved?

Thanks in advance for your help   :Smile: 

Besides of the networking problem, I realize, that I have a problem on the serverside too, as 

```
tftp -v x.x.x.x -m binary -c get undionly.kpxe
```

 times out. So I will re-install centos 7 and fogproject again.Last edited by Elleni on Fri Nov 17, 2017 8:49 pm; edited 1 time in total

----------

## Elleni

I reinstalled and could solve the problem of pxe booting following the following link: 

https://wiki.fogproject.org/wiki/index.php?title=Using_FOG_with_an_unmodifiable_DHCP_server/_Using_FOG_with_no_DHCP_server

 :Very Happy: 

----------

