In this guide we will configure BGP peering session between your network equipment and FastNetMon.
For this manual, you need to configure BGP peering connection from your router side and you need to know all following data:
- Peering IP for FastNetMon
- ASN for FastNetMon
- Router’s IP
- Router’s ASN
Please do not re-distribute full BGP table towards FastNetMon as it will require enormous amount of memory and will take long time to process. This information is not needed for FastNetMon operations.
As first step please enable BGP support:
sudo fcli set main gobgp enable
Then we need to create new BGP peering session
sudo fcli set bgp connection_to_my_router
And configure it (if you are using different from management IP for peering you need to configure it manually for your Ubuntu instance)
sudo fcli set bgp connection_to_my_router local_asn 65001 sudo fcli set bgp connection_to_my_router remote_asn 65001 sudo fcli set bgp connection_to_my_router local_address 11.22.33.44 sudo fcli set bgp connection_to_my_router remote_address 22.33.44.55
If your server with FastNetMon connected to peer through intermediate hosts we suggest to set BGP multi-hop feature
sudo fcli set bgp connection_to_my_router multihop enable
Then enable support for IPv4 unicast for this device explicitly when needed:
sudo fcli set bgp connection_to_my_router ipv4_unicast enable
Then enable support for IPv6 unicast for this device explicitly when needed:
sudo fcli set bgp connection_to_my_router ipv6_unicast enable
To enable BGP Flow Spec for IPv4 please use this flag:
sudo fcli set bgp connection_to_my_router ipv4_flowspec enable
Finally, enable this peering connection:
sudo fcli set bgp connection_to_my_router active enable
And then we need to commit changes to FastNetMon and BGP daemon configuration
You may add any reasonable number of BGP peers, just set unique name for each peering session and configure all options as for first session:
sudo fcli set bgp second_connection_to_my_router
Apply changes:
sudo fcli commit
Starting from FastNetMon 2.0.336 you can specify different local ASNs for different BGP peers.
You can setup md5 password for BGP session this way:
sudo fcli set bgp connection_to_my_router md5_auth true sudo fcli set bgp connection_to_my_router md5_auth_password secure_password sudo fcli commit
For implementing ECMP and announcing multiple next hops for same prefix you can enable following option in configuration.This option is available starting from 2.0.364:
sudo fcli set bgp connection_to_my_router ipv4_unicast_add_path true sudo fcli set bgp connection_to_my_router ipv6_unicast_add_path true sudo fcli commit
You can check all active outgoing announces this way:
gobgp global rib -a ipv4
You could check status for all neighbors this way
gobgp neighbor
You can check peering session status this way:
gobgp neigh 22.33.44.55
Please note that starting from 2.0.363 we added command which allows re-loading BGP settings and BGP daemon configuration without restarting FastNetMon with commit command:
sudo fcli set reload_bgp
We have detailed BGP setup guides for following vendors:
Router ID setup
In BGP protocol we need to set identifier called “Router ID” for each router. Usually, it’s public IPv4 address of local peer. For BGP peering connection via IPv4 FastNetMon will configure router ID using local_address field for BGP configuration.
If you would like to set router ID to value which is different from local_address please use following command:
sudo fcli set main gobgp_router_id 1.2.3.4 sudo fcli commit
For BGP peering connection over IPv6 connection you must specify it manually as we have no ways to get it from BGP peer configuration.