VirtualBox dhcp server is leasing the same IP to all guest VM's connected to a VirtualBox Nat Network

After some more research + trial & error I find out that

The cause of the problem is that the built-in network config of Ubuntu 18.04 no longer uses the NIC Mac address as the default id for DHCP requests. (anneb, 2018, para. 1).

and also that

Mos DHCP clients, including dhclient, supply a client-ID field of type '01' (MAC-based). Another common type is '00' (domain name). However, by default, systemd-networkd supplies an "opaque" client-ID that was generated from the contents of /etc/machine-id.

According to the DHCP protocol, leases are chosen by client ID first (as long as the client supplies a "client ID" option, which may or may not be MAC-based), then by the MAC address only if the client didn't send an ID. (grawity, 2018, para. 4-5).

so I generated a new /etc/machine-id file in Guest B the way hvd (2017, n.p.). suggested:

  1. Verifying if /var/lib/dbus/machine-id was a symlink to /etc/machine-id

    $ sudo ls -l /var/lib/dbus/machine-id lrwxrwxrwx 1 root root 15 Aug 1 17:18 /var/lib/dbus/machine-id -> /etc/machine-id

  2. Deleting /etc/machine-id

    sudo rm -f /etc/machine-id

  3. Regenerating /etc/machine-id

    sudo dbus-uuidgen --ensure=/etc/machine-id

  4. Reboot the VM

    sudo init 6

  5. Login and verify new IP address is assigned to Guest B

    $ ip addr show enp0s3 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 08:00:27:b9:41:77 brd ff:ff:ff:ff:ff:ff inet 10.0.2.5/24 brd 10.0.2.255 scope global dynamic enp0s3 valid_lft 1070sec preferred_lft 1070sec inet6 fe80::a00:27ff:feb9:4177/64 scope link valid_lft forever preferred_lft forever