Routing Configuration¶
This section covers static routing, routing tables, and IP configuration in FloofOS.
Overview¶
FloofOS provides a dual routing architecture:
- VPP FIB — High-performance forwarding information base for data plane
- BIRD — Routing daemon for dynamic routing protocols (BGP, OSPF, etc.)
Routes learned by BIRD are automatically synced to VPP's FIB via the Linux Control Plane (LCP).
Viewing Routes¶
VPP FIB (Forwarding Table)¶
Show IPv4 FIB¶
Show Specific Route¶
Show IPv6 FIB¶
Show FIB Summary¶
Static Routes¶
Add IPv4 Static Route¶
Syntax¶
Example¶
Via Specific Interface¶
Add IPv6 Static Route¶
Delete Static Route¶
Default Gateway¶
IPv4 Default Route¶
IPv6 Default Route¶
IP Neighbor (ARP/NDP)¶
Show ARP Table¶
Flags¶
| Flag | Description |
|---|---|
| D | Dynamic (learned) |
| S | Static |
Show IPv6 Neighbors¶
Add Static ARP Entry¶
Delete ARP Entry¶
Flush Dynamic Entries¶
ECMP (Equal-Cost Multi-Path)¶
Add ECMP Routes¶
Add multiple next-hops for load balancing:
View ECMP Configuration¶
VPP displays multiple buckets in the load-balance DPO for ECMP routes.
VRF (Virtual Routing and Forwarding)¶
Create VRF Table¶
Assign Interface to VRF¶
Add Route to VRF¶
View VRF FIB¶
BIRD Routing Integration¶
FloofOS uses BIRD for dynamic routing protocols. Routes from BIRD are automatically installed in VPP's FIB through Linux kernel route synchronization.
View BIRD Routes¶
View Specific Route¶
View BIRD Protocols¶
Reload BIRD Configuration¶
IPv6 Neighbor Discovery¶
Show ND Configuration¶
Configure RA Interval¶
Configure ND Prefix¶
Suppress RA¶
Troubleshooting¶
Route Not in FIB¶
-
Check if route exists in BIRD:
-
Verify LCP is operational:
-
Check BIRD kernel protocol:
Packet Drops¶
-
Check interface counters:
-
Check for errors:
-
Verify adjacency:
No ARP Resolution¶
-
Check interface state:
-
Check IP configuration:
-
Verify physical connectivity
Architecture¶
When you configure routes in FloofOS:
- VPP FIB — Direct route adds go to VPP's forwarding table
- BIRD Integration — Dynamic routes from BGP/OSPF go to BIRD, which updates Linux kernel routes
- LCP Sync — Linux kernel routes are synchronized to VPP FIB via Linux Control Plane plugin
+------------------+
| BIRD |
| (BGP, OSPF) |
+--------+---------+
|
v
+------------------+
| Linux Kernel |
| Routing Table |
+--------+---------+
|
v (LCP Sync)
+------------------+
| VPP FIB |
| (Data Plane) |
+------------------+
Command Reference¶
| Command | Description |
|---|---|
show ip fib | Display IPv4 FIB |
show ip fib <prefix> | Display specific route |
show ip fib table <id> | Display VRF FIB |
show ip fib summary | Display FIB summary |
show ip6 fib | Display IPv6 FIB |
ip route add <prefix> via <nh> | Add static route |
ip route del <prefix> via <nh> | Delete static route |
ip table add <id> | Create VRF table |
set interface ip table <if> <id> | Assign interface to VRF |
show ip neighbor | Display ARP table |
show ip6 neighbor | Display NDP table |
set ip neighbor <if> <ip> <mac> | Add static ARP |
set ip neighbor del <if> <ip> | Delete ARP entry |
show route | Display BIRD routes |
show protocols | Display BIRD protocols |
Additional Resources¶
- VPP Layer 3 CLI - Complete IP CLI reference
- VPP IP Neighbor CLI - ARP/NDP commands
- BIRD 2 Documentation - BIRD routing daemon
- BGP Configuration - BGP with Pathvector