You should not be getting new IPs.. Unless your mac was changing you should renew the same lease you got before.
You could most likely fix any such odd behavior by setting a dhcp reservation so that mac xx:xx:xx:xx:xx:xx always gets the same IP.
I shouldn't be getting new IPs; they're bare metal boxes with only one NIC, so the macs are definitely not changing. There's gotta be something unique to the requests that's causing the IP to increment, no clue what that might be. Maybe an option PFSense DHCP settings would reveal it? I scanned through and didn't see anything that jumped out at me.
I'll try the dhcp reservation, I think you're right, maybe that will settle things out.
What part registers the dns where? Your doing a domain override to this foreman.. The node then registers itself with the foreman NS..
What sort of ttl are being setup when they register their names? I think all your problems go away when you figure out why the box is getting a different IP via dhcp..
Hosts have a lifecycle when managed and auto provisioned by foreman. When they initially boot (and foreman has no record of them), they PXE boot into barebones "Foreman Discovery Image". It gathers a bunch of facts about the machine like NIC info, MAC, other stats, and registers itself with the main Foreman box as a "Discovered Host". If you have things set up for auto provisioning, Foreman will assign it to a "Host Group", and decide based on some configuration logic what OS to kickstart that machine with. I think it shuffles around the PXE boot configuration based on that machine's MAC, and then reboots it into the correct OS kickstart to install the OS on disk. At this point, I believe the "Discovered Host" is graduated to a "Managed Host", and Foreman creates an A record for the host in its NS. After the OS install concludes, PXE boot configs are shuffled around again to tell the box to boot from local disk. Everything should be humming along at this point, with puppet periodically reporting the state of the machine to Foreman. I needed to configure Foreman to set the NS record with each of these reports, since I was seeing the records IP off-by-one with the IP increment of the last reboot.
This looks like pretty fun stuff.. Think I found something to play with this weekend.. I should be able to setup a couple of nodes just on a VM, etc.
It's been a great learning experience! Interested to hear if you're seeing similar things with IP drift. I'll try to lock things down with a reservation.