Routing

Introduction to Routing in flexiWAN

flexiWAN offers a comprehensive suite of routing features to manage and optimize your network. Here’s an overview of what’s covered:

Routing Capabilities:

  1. Static Routes: Create both regular and conditional static routes, allowing for dynamic routing decisions based on specific conditions.

  2. BGP (Border Gateway Protocol): Configure BGP settings and access advanced CLI commands for fine-tuning.

  3. OSPF (Open Shortest Path First): Utilize OSPF for dynamic network routing and access advanced CLI commands for custom configurations.

  4. Routing Filters: Implement filters to control routing decisions based on defined criteria, providing precise traffic management.

Additionally, advanced settings for BGP, OSPF, and routing rules are accessible through CLI commands. Use these commands carefully, as improper configuration can affect flexiWAN. Refer to supported commands within the FRR framework for reliability.

Static Routes

FlexiWAN’s static routes offer enhanced network management capabilities. Users can seamlessly integrate static routes with OSPF and BGP routing protocols, allowing for efficient dynamic routing. Additionally, conditioned static routes empower users to make routes activate or deactivate based on specific conditions, creating an adaptive and responsive network. This documentation provides step-by-step guidance on harnessing these features to optimize the network infrastructure.

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

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

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.

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