Routing

Introduction to Routing in flexiWAN

flexiWAN offers a comprehensive suite of routing features designed to manage and optimize network infrastructure. These features ensure efficient operation, adaptability to changes, and scalability. Below is an overview of the routing capabilities provided by flexiWAN

Routing Capabilities

  • Static Routes: flexiWAN allows for the creation of both regular and conditional static routes. Static routes define specific paths for network traffic, ensuring predictability and stability. Conditional static routes offer additional flexibility by enabling routing decisions to adapt based on specific network conditions, ensuring that traffic follows the most optimal path.

  • BGP (Border Gateway Protocol): flexiWAN supports BGP, enabling seamless peering with both public and private Autonomous System Numbers (ASNs). BGP facilitates the exchange of routing information with other network routers, cloud providers, and external networks. flexiWAN supports both External BGP (eBGP) for communication between different ASNs and Internal BGP (iBGP) for routing within the same ASN. Upon enabling BGP, flexiWAN automatically detects and establishes BGP sessions between its nodes, streamlining network configuration and management.

  • OSPF (Open Shortest Path First): flexiWAN includes support for OSPF, an interior gateway protocol (IGP) commonly used for routing within a single Autonomous System (AS). OSPF is enabled by default on the LAN across all flexiEdge devices, facilitating automatic route discovery and management. This protocol dynamically calculates the most efficient paths based on link state information, ensuring optimal performance and redundancy within the network. OSPF also supports multiple areas, allowing for scalable and segmented network topologies.

  • Routing Filters: flexiWAN enables the implementation of routing filters to control routing decisions based on defined criteria. These filters provide precise traffic management, allowing for the prioritization of certain types of traffic, blocking of specific flows, or rerouting based on various conditions.

Advanced Routing Configuration

In addition to the GUI-based configuration, flexiWAN offers advanced settings for BGP, OSPF, and routing rules through the Command Line Interface (CLI) commands. These advanced configurations allow for fine-tuning and customization of routing protocols, providing greater control over network operations. However, it is crucial to use these commands carefully, as improper configuration may impact network stability and performance. flexiWAN leverages the FRRouting (FRR) framework for advanced routing capabilities.

Static Routes

flexiWAN’s static routing options enhance network management by seamlessly integrating with both OSPF and BGP protocols. This integration allows for dynamic and efficient routing across the network. Conditional static routes add another layer of flexibility, enabling the activation or deactivation of routes based on specific conditions, which helps in maintaining an adaptive and responsive network environment. This documentation provides detailed guidance on utilizing these features to optimize network infrastructure effectively.

Adding a static route

In order to define a static route for a given flexiEdge device, navigate to the device settings and from the Configuration tab, click on the “Static Routes”. From there, click on “Add Route” button.

Static Routes

The following static route options can be configured:

Destination

Subnet and mask of the destination route

Gateway IP

Gateway used for the route. Can be set using the dropdown or manually specified

Interface

The outgoing interface. If the gateway is within a subnet of one of the router interfaces, the interface specification is optional.

Metric

Route metric - optional

Redistribute via OSPF

Enables propagating the static routes to other sites connected via tunnels, using OSPF.

Redistribute via BPG

Enables propagating the static routes to other sites connected via tunnels, using BGP.

Advanced

Allows configuration of conditional static routes.

Static Routes 2

After creating a static route, make sure to click “Update device”, which will send a new job to the device.

Static Routes 2

Advanced static routes

flexiWAN’s advanced static route feature includes the capability to configure conditional static routes. These conditional static routes represent a form of routing configuration that empowers users to specify static routes in a network’s routing table based on specific conditions or criteria. In contrast to conventional static routes, which require manual configuration and fixed next-hop destinations, conditional static routes introduce dynamic routing decisions based on conditions. In this case, the condition relates to whether an existing static route is present or absent. For example, a static route can be added only if there is an existing route available or when it is not already in the routing table.

To configure conditional static route, start to add a new static route the same way as before, but this time click on advanced section.

Conditional static route

The following can be configured when adding a conditional static route:

Destination

Subnet and mask of the destination route. This is the route user is adding under condition.

Gateway IP

Gateway used for the route. Can be set using the dropdown or manually specified.

Interface

The outgoing interface. If the gateway is within a subnet of one of the router interfaces, the interface specification is optional.

Metric

Route metric - optional

Redistribute via OSPF

Enables propagating the static routes to other sites connected via tunnels, using OSPF.

Redistribute via BPG

Enables propagating the static routes to other sites connected via tunnels, using BGP.

Advanced section:

Condition - destination

Add a destination which is part of condition (exists or not exists)

Via

Add a gateway IP or tunnel which destination condition must use.

Install if route in condition

Select Exist or Not Exists - applies to the condition destination.

The following example shows how to add a static route destination 172.0.0.0/8 with a condition to install the route only if the route doesn’t already exist via the tunnel connected from secondary site.

Conditional example

OSPF Configuration

Introduction

flexiWAN includes support for Open Shortest Path First (OSPF), a powerful interior gateway protocol (IGP) designed for routing within a single Autonomous System (AS). OSPF is known for its dynamic routing capabilities, automatically determining the most efficient path for data based on real-time link state information. This ensures optimal performance and redundancy within your network.

In flexiWAN, OSPF is enabled by default on the LAN across all flexiEdge devices, simplifying network setup and ensuring immediate, automatic route discovery and management. This default configuration allows your network to dynamically adjust to changes, maintaining efficient and reliable communication between devices.

Configuration

OSPF can be configured by clicking on the OSPF Configuration from the Routing tab.

OSPF Configuration Option

Users can configure the router-id and area for LAN network along with authentication. Users can adjust OSPF parameters based on their network requirements as shown in the next figure.

OSPF Advanced Configuration
Router-Id

Unique ID for each device, used for identification

Hello Interval

In seconds, mention how frequent the hello message negotiates

Dead Interval

In seconds where it wait to announce the peer is dead

Authentication and area ID can be viewed or configured for each interface by clicking on settings from the ‘Actions’ column.

OSPF Advanced Configuration
Area ID

A number to indentify are and network.

MD5 Key ID

MD5 Key Identification to configure the OSPF authentication

MD5 Key

MD5 Secert Key for the OSPF authentication

The following topology shows the typical OSPF configuration with different areas configured for LAN. Pleae note, tunnel interface is part of the Backbone (area 0) without configuration options. Static routes can be redistributed via the OSPF as explained in the earlier sections.

@startuml
   skinparam linetype ortho
   node "Routing" as Routing {
     top to bottom direction
     node "OSPF1" as OSPF1 {
       left to right direction
       node "Branch1" as BR1 {
         usecase "Computer 1\n<size:10>area 1\n(10.0.1.10/24)" as C1
         usecase "LAN 1\n<size:10>area 1\n(10.0.1.1)" as LAN1
         node "Tunnel 1\n<size:10>area 0</size>\n(10.100.0.4/30)" as Tunnel1
       }
     }
     top to bottom direction
     node "OSPF2" as OSPF2 {
       left to right direction
       node "Branch2" as BR2 {
         node "Tunnel 2\n<size:10>area 0</size>\n(10.100.0.5/30)" as Tunnel2
         usecase "LAN 2\n<size:10>area 2\n(10.0.2.1)" as LAN2
         usecase "Computer 2\n<size:10>area 2\n(10.0.2.10/24)" as C2
       }
     }
   }
   C1 -- LAN1
   LAN1 -- Tunnel1
   Tunnel1 --- Tunnel2
   Tunnel2 -- LAN2
   LAN2 -- C2
@enduml

BGP Configuration

Introduction

flexiWAN includes comprehensive support for the Border Gateway Protocol (BGP), enabling seamless integration with other networks by facilitating the exchange of routing information between Autonomous System Numbers (ASNs). flexiWAN supports both External BGP (eBGP) for communication between different ASNs and Internal BGP (iBGP) for routing within the same ASN. When BGP is enabled, flexiWAN automatically detects and establishes BGP sessions between flexiWAN nodes, simplifying network configuration and management.

Configuration

Navigate to a device and click on Routing tab. From there click on BGP Configuration.

BGP config

From the next screen BGP can be enabled and configured.

BGP config 1

BGP is disabled by default, once enabling it the following settings can be configured:

Local ASN

Enter private AS Number, use from 64512 to 65535. Obligatory field.

Router ID

Set an IPv4 address, must be unique and not conflict other edges.

Redistribute OSPF routes

Optional, use when combining OSPF and BGP together on LAN interface.

Keepalive interval

Default is 30, configures period of time between keepalive messages.

Hold interval

Default is 90, configures time when no response received until the peer is considered as unreachable (usually set to 3 times the keepalive interval)

Add BGP Peers

When tunnel is established with BGP, flexiWAN will automatically configure the BGP peer neighbors to other flexiEdge sites. For non tunnel peering, BGP neighbors can be manually specified by via Add button.

BGP config 2
Remote IP

Specify IP of remote router this edge will peer with.

Remote ASN

set AS Number from remote router

MD5 key

Use for authenticating with remote router

Inbound / Outbound filter

Apply filtering filters, see below for more information.

Note

Peer discovery is not allowed over default route. If the route to the peer is via the default route, it requires to create a specific static route for reaching the peer.

View BGP status

To view BGP summary and list of neighbors, navigate to device settings and from Command tab execute the following command:

vtysh -c "show bgp summary"

BGP status

Routing filters

Routing filters can be used with BGP in order to filter traffic between peers. To configure routing filters navigate to Routing tab and click on Routing filters.

Routing filters 1

The following page shows filters, click on Add to create a new filter.

Routing filters 2

Enter filter name, description and select default action. To add more route rules, click on “Add” next to rules.

Routing filters 3

Each routing rule can have action to allow or deny. Also, next hop can be defined.

Routing filters 4