External DHCP Interface Does Not Update IP/Recommended Network Topology

I am currently running a successful bootstrapped juju controller however I noticed an issue with MAAS/Juju and external DHCP. When a machine is initially commissioned and the interface is set to DHCP which is handled by a external DHCP server, the IP is correct. Then, when bootstrapping Juju, there are cases where the external DHCP may not give the same IP. When the IP changes, MAAS does not update with the new IP and Juju uses the now wrong IP during the bootstrap process. This leads to multiple scenarios with two solutions in the case of my network topology.

In my network topology I am using 2 networks, one private with MAAS DHCP and PXE and the other public with internet access. The idea is that MAAS should be commissioning over the private network and any time the nodes need internet access it should use the other NIC. MAAS is aware of both of these networks.

The Juju bootstrap process will only work if:

  1. I set up my MAAS controller as a working gateway
  2. If I statically assign the IPs handed out by DHCP and swap to the public network for PXE boot since it seems MAAS prioritizes internet access via the PXE booted interface.

If I do not, the process fails since it does not have internet connectivity. Are other users who are using external DHCP using static DHCP IP assignment (via MAC addr)? Is this intentional? What is Canonical’s recommended network topology for MAAS/Juju integration? It seems to favor the MAAS controller being a jump server to the nodes.