In case you're interested here are some of the details. I'm using the RFC6598 range of 100.64.0.0/10 for the NAT range on both sides (/11 per side).
Inter-VRF Static NAT
Routes on both sides are pretty similar (in particular both have 10.30.30.0/24 with different hops).
Code:
[edit security nat static]
rule-set ACME-NAT {
from routing-instance LAN;
rule DOUBLE-NAT-ACME {
match {
destination-address 100.96.30.30/32;
}
then {
static-nat {
prefix {
10.30.30.30/32;
}
}
}
}
}
rule-set LAN-NAT {
from routing-instance ACME;
rule DOUBLE-NAT-LAN {
match {
destination-address 100.64.10.202/32;
}
then {
static-nat {
prefix {
10.10.10.202/32;
}
}
}
}
}
}
}
Failure Flow Trace
Code:
Jan 15 21:30:05 21:30:05.520366:CID-1:RT:flow_initiate_first_path: first pak no session
Jan 15 21:30:05 21:30:05.520366:CID-1:RT: flow find session returns error.
Jan 15 21:30:05 21:30:05.520366:CID-1:RT: ----- flow_process_pkt rc 0x7 (fp rc -1)
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:<10.10.10.202/250->100.96.30.30/2793;1> matched filter ICMP:
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:packet [84] ipid = 51601, @4091a31a
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:---- flow_process_pkt: (thd 1): flow_ctxt type 14, common flag 0x0, mbuf 0x4091a100, rtbl_idx = 5
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: flow process pak fast ifl 69 in_ifp fe-0/0/0.0
## Initial connection
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: fe-0/0/0.0:10.10.10.202->100.96.30.30, icmp, (8/0)
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: find flow: table 0x42687228, hash 15454(0xffff), sa 10.10.10.202, da 100.96.30.30, sp 250, dp 2793, proto 1, tok 20486
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: no session found, start first path. in_tunnel - 0, from_cp_flag - 0
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: flow_first_create_session
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:Installing pending sess (758) in ager
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:First path alloc and instl pending session, natp=0x44768170, id=758
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: flow_first_in_dst_nat: in <fe-0/0/0.0>, out <N/A> dst_adr 100.96.30.30, sp 250, dp 2793
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: chose interface fe-0/0/0.0 as incoming nat if.
## Static happens as expected, 100.96.30.30 xlated to 10.30.30.30
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_first_rule_dst_xlate: packet 10.10.10.202->100.96.30.30 nsp2 0.0.0.0->10.30.30.30.
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_first_routing: vr_id 5, call flow_route_lookup(): src_ip 10.10.10.202, x_dst_ip 10.30.30.30, in ifp fe-0/0/0.0, out ifp N/A sp 250, dp 2793, ip_proto 1, tos 0
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:Doing DESTINATION addr route-lookup
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_rt_lkup in VR-id: 5
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_rt_lkup: Found route entry 0x0x45bc02e0,nh id 0x264, out if 0x47
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_rt_lkup: nh word 0x2640011
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_ipv4_rt_lkup success 10.30.30.30, iifl 0x45, oifl 0x47
## Route-lookup happens on Ingress VRF, tries to push the connection back out the same Zone
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: routed (x_dst_ip 10.30.30.30) from LAN (fe-0/0/0.0 in 0) to fe-1/0/0.0, Next-hop: 10.10.15.20
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:flow_first_policy_search: policy search from zone LAN-> zone LAN (0x114,0xfa0ae9,0xae9)
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: app 0, timeout 60s, curr ageout 60s
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: packet dropped, denied by policy
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: denied by policy default-policy-00(2), dropping pkt
Jan 15 21:30:06 21:30:06.536392:CID-1:RT: packet dropped, policy deny.
Jan 15 21:30:06 21:30:06.536392:CID-1:RT:set_nat_invalid: natp:id 758, flag 3c5f
Bookmarks