Hi Rohith,
I have read through your responses and tried a few things related to your suggestions, but I have not had much luck. We started with this basic topology:
Interfaces for reference:
- C8000v Inside: x.x.x.229 and x.x.x.230
- C8000v Outside: x.x.x.244 and x.x.x.245
- FTDv Inside: x.y.x.4 and x.y.x.5 (x.y.x.68 for the single FTDv)
- FTDv Outside: x.y.x.20 and x.y.x.21 (x.y.x.84 for the singe FTDv)
- Inside Load Balancer: x.y.x.10
The vWAN, vHub, and SDWAN NVAs (C8000v) were deployed through Cisco vManage using OnRamp for Multicloud. The test-vNets and Transit-FTD-vNet are peered to the vHub/SDWAN routers through vManage configuration. This configuration appears to function for connectivity (SDWAN environment and test VMs egress traffic to the Internet). However, SDWAN traffic does not flow through the FTDvs, which is required; only Internet-destined/sourced traffic flows through the FTDvs.
The FTDvs were deployed two different ways for testing:
- (above diagram) As a pair in an availability set (AS) between an Inside Load Balancer and Outside Load Balancer (ILB/OLB) (as previously described above in this thread).
- For testing purposes, I simplified the topology by just deploying a single FTDv without the AS or ILB/OLB (topology diagram further below in this comment).
The test-vNets (100 and 200) both are associated to a UDR pointing their 0.0.0.0/0 route to the FTDv (either the ILB - x.y.x.10 - for option 1 above or the inside interface of the single FTDv - x.y.x.68 - for option 2).
For routing, I configured iBGP between the inside interfaces of the C8000vs and FTDvs and added route maps to their iBGP configurations. From the NVAs' perspective (verified via CLI), they formed an iBGP neighborship and were sharing routes: the C8000vs advertised SDWAN routes, the FTDs advertised the test-vNets to the C8000vs. Using a route map, I suppressed the C8000vs from advertising the test-vNet routes to the vHub, assuming the C8000vs and FTDvs could manage the routing for the vNets, without the vHub, using their iBGP connection. The FTDvs advertised a 0.0.0.0/0 route to the C8000vs; on the C8000vs; I added a route map and prefix list to change the default route to the ILB. I decided not to edit the Route Table of the vHub; every time I attempted to add UDRs on that Route Table, connectivity (internal/SDWAN) to the FTDvs was lost.
When SDWAN traffic failed to flow through the FTDvs, I experimented with this topology:
In this configuration, I removed the test-vNets from the SDWAN environment, as configured in vManage, and peered them with the Transit vNet (FTDv vNet). The FTDvs had no problem reaching the test VMs. However, SDWAN had no connectivity to the test-vNets. The C8000vs still received the routes to the test-vNets from the FTDvs via iBGP. The only routing change made was the prefix list on the C8000vs for the 0.0.0.0/0: it pointed to the inside interface of the single FTDv instead of the ILB used for the initial topology. I ran a traceroute from my MacBook (connected to our SDWAN environment) to the test VMs; the packets bounced between the inside interfaces (x.x.x.229 and x.x.x.230) of the C8000vs, never getting to the FTDvs or the test-vNets.
I did experiment with eBGP directly between the vHub and Transit-FTD-vNet; that, however, never formed a neighborship from the FTDvs' perspective. Based on that failure, I assume that configuring BGP peering in a vHub peers to the vNet itself, not NVAs within that vNet.
The only thing I can think of is with this environment: in both topologies, the vHub and/or any vNet/subnet gateways managed by Azure are throwing off the required routing flow (all traffic, SDWAN and Internet-bound/sourced, flowing through the FTDvs). Route Maps are available as a preview for vHubs, but they are (1) not recommended for production yet; and (2) are limited compared to route maps that we can configure directly on our Layer 3 NVAs (C8000vs and FTDvs). Are there any Azure resources that need to be added/included in order to accomplish the traffic flow that we are required (VPN Gateway, additional UDRs, etc.)?