I'm planning to do a Debian server which can deliver picore pxe to RPI 3/3+.
I have dnsmasq which gives a correct IP in the range and will provide the correct tftpboot option with the "Raspberry Pi Boot" given by a tag based on the mac address (3 first hex b8:27:eb:::*).
The first time, the rpi boots quite well (2nd try due to lack of traffic on my VLAN). But after the first boot, I have to change my DHCP range to get another IP address. Without that change the Pi won't boot.
I've read that it may come from the GUID which says it already got the pxe boot and won't provide it twice.