A VRF is a virtual routing table that exists independently within a router. It allows multiple separate routing tables to coexist on the same device — commonly used to isolate customer traffic.
Why VRFs exist
On a shared network device serving multiple customers, you don’t want their routes mixing. Each customer gets their own VRF, with their own routes, policies, and BGP sessions.
On Juniper (called Routing Instances)
Juniper calls VRFs routing instances. Each customer VRF has:
- Its own BGP config
- Its own export/import policies
- Its own prefix lists controlling what gets advertised
Key commands (Juniper)
Show routes in a VRF:
show route <ip> (includes which VRF it was learned in)
Show BGP config for a VRF:
show configuration routing-instances <VRF> protocols bgp | display set