Applies To:Show Versions
BIG-IP versions 1.x - 4.x
- 4.6.4, 4.6.3, 4.6.2
Advanced Routing Modules
- Introducing dynamic routing
- Enabling ZebOS advanced routing modules
- Configuring ZebOS advanced routing modules
- Configuring ZebOS for active/standby configurations
Introducing dynamic routing
The BIG-IP system supports dynamic routing using ZebOS advanced routing modules (ARMs). Using the ZebOS advanced routing modules, you can configure dynamic routing using the following routing protocols: BGP 4, OSPF 2, and RIP versions 1 and 2. Any combination of these routing protocols can be used to configure the following:
- Dynamic learning of routes to nodes or clients
- Advertising availability of local resources including internal networks, virtual addresses, and SNAT/NAT target addresses
- Advertising availability of external networks to internal routers and hosts
For general information on BIG-IP routing configurations, see Addressing general networking issues . The following sections describe how to enable and configure the ZebOS advanced routing protocols on the BIG-IP system.
You can configure ZebOS advanced routing modules using the command line utility only.
Enabling ZebOS advanced routing modules
In order for dynamic routing to work correctly on the BIG-IP system, you must enable route lookup cache updates.
If you do not enable this setting, the BIG-IP system does not update the cache when the routing table is updated. This prevents dynamically learned routes from being followed, and significantly decreases the usefulness of dynamic routing protocols.
To enable route lookup cache updates
Lookup cache updates are disabled by default. Use the following syntax to enable route lookup cache updates.
bigpipe update_cached_routes enable
To enable routing modules
You can use the zebos utility to enable ZebOS routing modules on the BIG-IP system. If you have a BIG-IP redundant system, you must enable and configure routing protocols separately for each BIG-IP unit.
When you enable a routing module, the BIG-IP system creates a section in the configuration file (/config/ZebOS.conf) for that routing module. Once the configuration file is created, you will need to configure the routing module in order for it to work. You need to enable a routing module only once.
To enable ZebOS advanced routing modules, use the following syntax:
zebos enable <bgp> <ospf> <rip>
For example, if you want to enable the BGP and OSPF routing modules you type the following command:
zebos enable bgp ospf
To start routing modules
Once you have enabled the ZebOS routing modules you want to use, you can use the following command to start any routing modules that are enabled, but not started. If a routing module is already running when you use the startup command, the routing module does not restart.
bigstart startup zebos
To stop routing modules using the command line utility
You can use the following syntax to gracefully stop all running ZebOS routing modules:
bigstart shutdown zebos
To restart routing modules that are currently running
Use the following syntax to restart any running utilities:
bigstart restart zebos
To view a list of routing modules that are currently running
To display a list of currently running ZebOS routing modules, type the following command:
bigstart status zebos
Configuring ZebOS advanced routing modules
Once you have started the appropriate ZebOS advanced routing modules, you can create a routing module configuration using the VTY command line shell. The routing module must be running before you can configure the routing protocol.
To start the VTY command line shell
To start VTY, type the following command:
For detailed information on how to configure dynamic routing using ZebOS ARMs, refer to the ZebOS version 5.4 Advanced Routing Module documentation, available on the F5 Resource CD.
The BIG-IP system supports the following routing protocols: BGP 4, OSPF 2, and RIP versions 1 and 2. Although other routing protocols are described in the ZebOS ARM documentation, these protocols are not supported, and do not function on the BIG-IP system.
Configuring ZebOS for active/standby configurations
If you have a redundant BIG-IP system running in active/standby mode, in order for dynamic routing to work correctly, you need to make special adjustments in your configuration.
In order for dynamic routing to function in active/standby configurations, you must enable and configure routing protocols separately for each BIG-IP unit. Both the active and the standby unit must have full routing table. Only valid (usable) routes should be advertised to neighbor routers (for example, routes must not list the standby unit as the next hop).
In most cases, you will need to configure the RIP, BGP, and OSPF protocols differently for active/standby configurations.
Configuring the RIP protocol
When configuring routing information protocol (RIP), it is important to always advertise the floating self IP address as the next hop. This causes both BIG-IP units in the redundant system to advertise identical routes to neighbors and redirect traffic to the active unit based on ARP lookup. You can configure this behavior using filtering of advertised routes using route-map.
Figure 11.1 shows a typical RIP configuration file for an active/standby configuration.
redistribute connected route-map internal-out out
route-map internal-out permit 10
set ip next-hop 10.1.1.3
Figure 11.1 Sample RIP configuration file
The sample configuration in Figure 11.1 works correctly, only if RIP is enabled on a single VLAN. This is because route-map filtering can be applied only to routes redistributed from other routing information sources (such as directly connected networks in the sample configuration).
Configuring the BGP protocol
When configuring border gateway protocol (BGP), it is important to always advertise the floating self IP address as the next hop. This causes both BIG-IP units in the redundant system to advertise identical routes to neighbors and redirect traffic to the active unit based on ARP. You can configure this behavior, like RIP, using filtering of advertised routes using route-map.
Figure 11.2 shows a typical BGP configuration file for an active/standby configuration.
router bgp 1000
bgp router-id 126.96.36.199
neighbor ext-routers peer-group
neighbor ext-routers remote-as 66
neighbor ext-routers next-hop-self
neighbor ext-routers route-map external-out out
neighbor 188.8.131.52 peer-group ext-routers
neighbor 184.108.40.206 peer-group ext-routers
route-map external-out permit 10
set ip next-hop 220.127.116.11
Figure 11.2 Sample BGP configuration file
Configuring the OSPF protocol
The open shortest path first (OSPF) protocol does not allow you to advertise a particular IP address as the next hop. Because of this, OSPF is automatically reconfigured during active/standby and standby/active transitions. This prevents the standby unit from originating link state advertisements (LSAs). If you want to change this behavior, you can use the bigdb keys.
When the BIG-IP unit goes to a standby state, the following is added to the configuration. When the BIG-IP unit goes to an active state, this statement is removed.
summary-address 0.0.0.0/0 not-advertise
bigdb keys for dynamic routing protocols
If you have a redundant BIG-IP system running in active/standby mode, the BIG-IP software includes several bigdb keys that you can use to change the configuration of routing modules when the system transitions from active to standby or from standby to active. The following bigdb keys are available for ZebOS advanced routing modules:
Local.ZebOS.*.GoStandbyCmd keys allow you to specify the configuration command executed when transitioning from active to standby.
Local.ZebOS.*.GoActiveCmd keys allow you to specify the configuration command when the BIG-IP unit transitions from standby to active.
If a key exists in the database but has no value, no command is run. This allows you to override the default commands for OSPF.