NAT Reflection issues

I am having some issues with a NAT rule that I can’t get to work locally. We have two camera servers that monitor different parts of our building that are remotely viewable from an app. We have recently switched from an old Sonicwall firewall to a PFSense box and I am trying to get the NAT rules setup so that our facilities manager can log in to the cameras remotely as well as while on campus. I have gotten the rules set up for him to view them remotely and they work but when trying to use the app from campus on the local wifi, the connection times out. We also have our HVAC in one of our buildings that is accessible from a local ip via a web browser. I have gotten that setup on one of our other public IPs, we have a block of 5 IP addresses, and that works externally but not internally as well. While on campus, we can go to the local IP of the HVAC unit and can control it locally but the external hostname we setup does not work internally so I feel there is something that I have setup wrong that is not allowing the NAT hairpin to happen.

I have Pure NAT turned on for NAT Reflection mode and the network that I am attempting to is wide open. I attempted to make another NAT rule for internal traffic but that didn’t seem to work either, probably on my end.

I’m wondering if I need to go with a split DNS approach but I’m not sure if there is something else to try first.

Any help would be appreciated.