Routing and NAT

Getting traffic in and out of an overlay fabric, and translating addresses at the edge.

An L3 overlay fabric routes between its own networks by itself. Reaching anything outside the fabric needs a deliberate exit: an L3-out.

This page applies to overlay fabrics. A VLAN fabric hands traffic to your physical switches and your router is already the way out — there is nothing here to configure.

East-west comes free

Inside an overlay fabric, every host runs a copy of the fabric’s router. Traffic between two networks in the fabric is routed on the host it starts from and tunnelled directly to the host it is going to.

There is no central router to become a bottleneck, and no hairpin through a gateway node.

L3-out: the way out

An L3-out is the fabric’s edge. It is built on exactly two hosts, both members of the uplink, and it is the one place the overlay touches your physical network.

Two, not one, because a single exit is a single point of failure. Two, not many, because the edge is where policy and peering live and spreading that across the fleet makes it harder to reason about, not easier.

What you supply

Field Notes
Two chassis Both must be members of the fabric’s uplink
Transit VLAN A VLAN that reaches your router, checked for conflicts on that uplink
Transit CIDR The subnet shared with your router. Minimum /30, /29 recommended
Chassis addresses One per chassis, inside the transit CIDR
Default route Optional; the next hop must be inside the transit CIDR

The fabric’s router takes the first usable address in the transit CIDR. Your router takes another. The two chassis addresses are used for peering and health checking.

A /30 leaves no room for anything beyond the bare minimum, which is why /29 is the recommendation.

The transit network

The transit segment is the only network in an overlay fabric with a port onto the physical VLANs. Tenant networks deliberately have none — that absence is what keeps east-west traffic on the overlay.

It is not listed as a tenant network and VMs do not attach to it.

Failover

The two chassis are an HA pair. Only one is active at a time; the other stands ready. BFD runs between the edge and your router so that a failure is detected in sub-second time rather than by waiting for a routing protocol to time out.

GET the L3-out’s status to see per-chassis BFD state. A standby that is not verifiably up is not a standby.

Static routes

Add static routes to the fabric’s router to reach networks beyond your immediate next hop.

The route table distinguishes static routes, which you entered, from learned routes, which came from BGP. The platform manages learned routes and never touches static ones. You can delete a static route; you cannot delete a learned one, because it would come straight back.

See BGP.

NAT

NAT rules are configured per fabric, at the edge.

Type Use
SNAT Many internal addresses leave as one external address
DNAT An external address reaches one internal address
DNAT and SNAT A one-to-one mapping, both directions — a floating IP

SNAT is what lets a fabric of private addresses reach the outside. A floating IP is how you publish one VM without exposing the fabric.

Note — NAT happens on the active L3-out chassis. All translated traffic goes through it, so it is the one place in an overlay fabric where throughput concentrates. East-west traffic is unaffected — it never goes near the edge.

MTU inside the fabric

Guests on an overlay fabric are told the fabric MTU over DHCP. With the default profile that is 8942 bytes.

A guest with a static address is not told anything and will use its own default, normally 1500 — which is safe. What is not safe is configuring a guest above the fabric MTU: those packets have nowhere to go.

If you set MTUs inside guests by hand, keep them at or below the fabric MTU.

Checking it works

Question Where to look
Is the L3-out up? Its status, including per-chassis BFD
Are routes present? The fabric’s route table — static and learned
Is the transit VLAN trunked? Your switch, and the uplink’s MTU probe
Is NAT applying? The rules list, and the guest’s apparent source address

A fabric that routes internally but cannot reach outside is almost always the transit VLAN not being trunked to the two chassis, or a default route whose next hop is not reachable.