FRR Package

The FRR package manages dynamic routing for the firewall. Dynamic routing refers to routes that are capable of changing, generally due to routing protocols exchanging routing information with neighboring routers.

Unlike static routes, dynamic routing does not require remote network destinations and gateways to be hardcoded in the configuration. Routes and gateways are automatically determined by the protocol instead.

Currently the FRR package supports the following dynamic routing protocols:

Border Gateway Protocol (BGP)

BGP routes between autonomous systems, connecting to defined neighbors to exchange routing and path information. BGP supports IPv4 and IPv6.

Open Shortest Path First v2 (OSPF)

OSPF is a link-state routing protocol capable of automatically locating neighboring IPv4 routers within an autonomous system, typically with multicast, and exchanges routing information for networks reachable through each neighbor. OSPF v2 only supports IPv4.

Open Shortest Path First v3 (OSPF6)

Similar to OSPF v2, but for IPv6 networks.

Dynamic Routing Protocol Lists

Throughout the FRR package, certain options specify a supported routing protocol or source of routes. Currently, the following values can be found in these locations, but not every option appears in each area:

connected

Routes for directly connected networks on up and active interfaces.

kernel

Routes from the kernel, including static routes defined outside of FRR and other non-dynamic routes.

FRR Static

Static routes defined in the FRR configuration

bgp

Routes obtained dynamically from BGP neighbors

ospf

IPv4 routes obtained dynamically from OSPF neighbors

ospf6

IPv6 routes obtained dynamically from OSPF6 neighbors

Multi-Path Routing

Current versions of pfSense® software include support for multi-path routing and this behavior is described in Multi-Path Routing.

Currently the only way for multi-path routing to work is via FRR. If FRR has a route to the same destination across multiple paths, the traffic can be balanced across all of the available paths. In most cases the weight of the balancing is even, resulting in Equal-cost multi-path routing (ECMP).

See also

See Multi-Path Routing Behavior for details on how the OS makes balancing decisions for traffic across multiple paths.