Yersinia sends the DISCOVERY packet to exhaust the ip pool. The request packet is sent only after an offer is sent by the server. Here is a picture about how it works:
If you want more info about type of DHCP packets: https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol#Operation
It is suppossed after a Discovery packet is sent, the server response is an offer and then Yersinia should send the request packet but it will only request the packet if the offer is received.
- Possible troubleshooting and suggestions:
Try it on other different DHCP server to compare results.
Maybe there is a problem on your DHCP server.
It is supossed to be working. Maybe in other environment could be some kind of protection by the switch (Port Security, DHCP Snooping, Dynamic ARP inspection (DAI), etc). But you said you configured it on your NAT VirtualBox network so there is no protection at all.
Check your network settings, be pretty sure about you are well configured on the right network and check if everything is (virtually) connected as it is supposed to be.