Basically my VPN domain is empty as this is a requirement for route based vpn setup.
This is not completely accurate but is recommended to avoid confusion. My understanding of how the Check Point firewall determines whether traffic should be encrypted into a VPN (also referred to as "interesting traffic" in the Cisco world) happens in this order:
0) First off, the traffic must be accepted by the security policy.
1) Between inspection points i and I prior to routing, if the packet's source IP falls into our firewall's defined VPN domain AND (not or) the destination IP falls inside the defined VPN domain of a VPN peer, the traffic will be encrypted regardless of what route-based VPN determines.
2) If the IP route matching this packet leads to a VPN Tunnel Interface (VTI), the traffic will be encrypted. If the route leads to a regular physical/logical interface the traffic will not be encrypted.
The reason why it is frequently recommended to define an empty VPN domain for your firewall with route-based VPNs in use is to avoid a situation in #1 where the domains force encryption first but routing does not. If the domains determine that traffic needs to be encrypted, it will be encrypted no matter what routing says, full stop. If the domains do not match for encryption, route-based VPN still has the opportunity to either encrypt or forward in the clear based on routing.
So you can mix domain-based and route-based VPNs on your firewall with a non-empty VPN domain defined for your firewall, just keep in mind that if domain-based VPN specifies encryption it will trump whatever route-based VPN specifies. So if you are going to do this mix you will need to have an empty VPN domain defined for the *peer* VPN objects for which you want to use route-based VPN, to ensure that domain-based VPN does not improperly override what you want to do with that route-based VPN peer.
Gateway Performance Optimization R81.20 Course
now available at maxpowerfirewalls.com