IP Connectivity using BGP data
The IP Connectivity using BGP data feature aims to discover IP links between network devices by leveraging BGP routing data.
Compatibility
IP Connectivity using BGP data feature only supported starting from BMC Discovery 25.2 (15.0).
Prerequisites
Valid SNMP credentials to discover network devices.
What is BGP?
BGP is a fundamental routing protocol for the internet. It enables routers to exchange information about network paths and reachability, determining the best way for data packets to travel across networks.
BGP facilitates peering between autonomous systems (ASes), which are distinct networks managed by a single organization. Each AS is uniquely identified by Autonomous System Number (ASN). Network administrators configure BGP with rules and policies to guide routing decisions. Importantly, BGP enhances network stability by quickly adapting to network failures and finding alternative routes if a path becomes unavailable.
To exchange BGP routing data, devices establish BGP peering sessions using their IP addresses.
How it works
Let's examine a straightforward setup.
Consider two locations/sites, each equipped with a pair of devices. Within each location, the devices reside in the same BGP Autonomous System (AS) and form BGP peerings to exchange routing information.
Inter-site connectivity is established as follows:
Device A at the first location maintains a BGP peering with an upstream ISP Customer Premises Equipment (CPE) device, the details of which are not accessible to us. Similarly, Device C at the second location has a BGP peering with its local ISP CPE device, which is also undiscoverable.
Traffic originating from the first location traverses Device A, then passes through the intermediary ISP network via the CPE devices, across the public internet, and ultimately reaches Device C at the second location.
At the first location, Device B serves as a backup route for inter-site communication. It connects to a secondary ISP CPE and maintains a BGP route towards Device D at the second location.
Please refer to the diagram below for a visual representation of the setup.
The BGP routing entry for traffic from Device A (Site 1) to Device C (Site 2) is:
Network Next Hop BGP AS Path 192.169.2.1/32 192.168.1.2 6666 65115
This signifies that to reach 192.169.2.1 (Device C), the next hop is 192.168.1.2 (an ISP device), and the path involves ASNs 6666 and 65115.
Conversely, the routing table on Device C for reaching Device A would contain:
Network Next Hop BGP AS Path 192.168.1.1/32 192.169.2.2 6666 65111
Consequently, analyzing BGP routing tables allows us to understand and model IP connectivity between devices across different sites.
Discovery model
The BGP pattern triggers on a NetworkDevice with the __bgp_asn attribute defined. It then retrieves data from the BGP routing table (BGP4-MIB::BGP4PathAttrTable 1.3.6.1.2.1.15.6) on that device using SNMP and creates nodes and relationships to represent the network's Layer 3 connectivity.
For the setup above, Discovery model will be as following:
- NetworkRoutingGroup Node: Represents a BGP Autonomous System (AS). Network devices within this AS are connected to this node via a NetworkDevice:Member:Collection:Collection:Member:NetworkRoutingGroup relationship.
- NetworkLink Relationship: Indicates a direct BGP peering connection between two discovered IP addresses. This is shown as IPAddress:Peer:NetworkLink:Peer:IPAddress.
- ExternalNetworkLink Relationship: Can represent the following:
- local IPAddress to external IPAddress: A link between an IP address within our data center (DC) and a peering IP address on the internet (IPAddress:Peer:ExternalNetworkLink:Peer:IPAddress).
- AS to AS: A link between different Autonomous Systems (ASes) found in the BGP AS path (NetworkRoutingGroup:Peer:ExternalNetworkLink:Peer:NetworkRoutingGroup).
- LogicalNetworkLink Relationship: Represents a shortcut between two of our IP addresses, where the actual network path involves one or more intermediary AS NetworkRoutingGroup nodes (IPAddress:Peer:LogicalNetworkLink:Peer:IPAddress).
- IPAddress::DeviceAddress:DeviceWithAddress:NetworkRoutingGroup Relationship: Links an IP address on the internet to the specific Autonomous System (AS) it belongs to.
New visualizations have been implemented to display BGP information:
- IP Logical Connectivity: This visualization illustrates the direct "shortcut" relationships between IP addresses, enabling a quick understanding of IP connectivity without the need for detailed AS Path information.
- IP Connectivity: This visualization displays BGP Network Routing Groups and Autonomous System (AS) Path details.
Optimization Note
This pattern only requests the BGP4PathAttrTable from devices where the number of valid routes is below the configured routes_processing_limit.
To determine the valid route count for a device, a query is sent for either IP-FORWARD-MIB::inetCidrRouteNumber (.3.6.1.2.1.4.24.6.0) or IP-FORWARD-MIB::ipCidrRouteNumber (1.3.6.1.2.1.4.24.3.0).