In anyone is still interested, here is how I got it to work with 3 pfsense setup.
I wanted to setup an environment where I have a datacenter and a remote lab.
All machines in the datacenter have the domain datacenter.home.arpa.
All machines in the lab have the domain lab1.home.arpa.
I wanted machines in the lab to be able to reach machines in the datacenter.
pfSense1:
Hostname: pfSense
Domain: home.arpa
WAN (dhcp)
LAN: 192.168.0.1
Block private networks and loopback addresses: Unchecked
Forward packets for datacenter subnet 192.168.2.0/24 to datacenter router - 192.168.0.2
Added gateway
Name: datacentergw
Interface: LAN
Gateway: 192.168.0.2
Added static route
Network: 192.168.2.0/24
gateway: datacentergw
pfSense2:
Hostname: pfSense
Domain: datacenter.home.arpa
WAN: 192.168.0.2 (static)
LAN: 192.168.2.1
Block private networks and loopback addresses: Unchecked
NAT
Forward ICMP and TCP/UDP from source:192.168.0.0/16, destination: LAN net to LAN Address
This automatically added necessary firewall rules as well
pfSense3:
Hostname: pfSense
Domain: lab1.home.arpa
WAN: 192.168.0.3
LAN: 192.168.3.1
Block private networks and loopback addresses: Unchecked
DNS
Add a domain override for datacenter.home.arpa and send its queries to datacenter DNS: 192.168.2.1
DHCP
Set lab1.home.arpa;datacenter.home.arpa as DNS Search