Ah, we're using ipxe-qemu 1.0.0+git-20150424.a25a16d-1ubuntu1, which is from ipxe source in april of 2015. They've changed the way the secs field is computed since then - in current source it's '0' for the first request; in the version we're using it's '4' for the first request.
So we are seeing all of the dhcp requests at the dhcp servers, and the first one will always have secs = 4, which will always trigger the secondary dhcp server to respond.
Ah, we're using ipxe-qemu 1.0.0+git- 20150424. a25a16d- 1ubuntu1, which is from ipxe source in april of 2015. They've changed the way the secs field is computed since then - in current source it's '0' for the first request; in the version we're using it's '4' for the first request.
https:/ /github. com/ipxe/ ipxe/blob/ a25a16d4adf663a bd8f6eaab266b94 44157357b6/ src/net/ udp/dhcp. c#L1080
So we are seeing all of the dhcp requests at the dhcp servers, and the first one will always have secs = 4, which will always trigger the secondary dhcp server to respond.