Hi everyone,
I’m working with a centrally managed Check Point Spark appliance running R81.10.17 (latest build) in a multi‑ISP environment.
I need to configure manual DNAT/SNAT for specific services using a secondary public IP from a secondary ISP, while ensuring that:
- Only traffic toward the Internet is NATted
- Internal traffic or traffic toward other routed networks is not NATted
- Outbound traffic for a specific internal host uses the secondary ISP only
✅Goal
For a specific internal host:
- Translate it to a specific secondary public IP (SNAT)
- Allow external services to reach it via DNAT
- Force this traffic to use the secondary ISP via a dedicated static route when going to internet
- Avoid affecting any other traffic or internal routed networks
⚠️Problem
To make outbound traffic use the secondary ISP, I created a static route on the firewall such as:
Destination: Any
Gateway: Secondary ISP gateway
However, when the route uses destination = Any, another issue appears:
✅Traffic toward the Internet correctly uses the secondary ISP
❌BUT traffic coming from devices reachable via other static routes
(e.g., internal routed networks or specific internal subnets)
is also sent out to the Internet instead of being forwarded to the correct internal interface.
It looks like the Any → secondary ISP route overrides more specific static routes, even though normally specific routes should take precedence.
❓Question
Is it correct to fix this using route weights/metrics, or is there a better technique?
I’m trying to understand whether I should:
- Adjust route priority / metric / weight
- Or if Spark appliances require a different approach for multi‑ISP selective routing when manual NAT is involved
➜ Additional details
- NAT is configured manually (and also with hide‑all networks flag enabled)
- The public IP used for DNAT/SNAT is not the interface IP but another public IP belonging to the same ISP subnet
- Manual NAT itself works
- The routing is what breaks internal‑to‑internal flows
- I want to ensure:
- Only Internet flows use the secondary ISP
- Internal routed networks keep following their static routes
- DNAT/SNAT is applied only when traffic matches the specific host/service
✅What I’m asking the community
- How do you correctly force only Internet traffic for a specific host to use a secondary ISP without breaking other static routes?
- Should route metrics be modified, or is policy‑based routing (PBR) required?
- Are there recommended best practices for multi‑ISP selective NAT and routing on Spark appliances?
Any suggestions, experiences, or best‑practice examples would be greatly appreciated.
Thanks in advance!