51 BGP Facts Every Network Engineer Should Know

Border Gateway Protocol is the policy-driven routing protocol that connects autonomous systems. These 51 practical facts turn the core ideas behind eBGP, iBGP, path selection, scaling, and troubleshooting into a fast study reference.

BGP eBGP iBGP Network Engineering
BGP topology with iBGP in AS 65001 and eBGP links to AS 65002 and AS 65003
Reference topology: iBGP distributes routes inside AS 65001, while eBGP carries the prefix across autonomous-system boundaries.
51 BGP Facts Every Network Engineer Should Know cheat sheet: use this quick map before reading the detailed sections.

51 BGP Facts Every Network Engineer Should Know: Table of Contents

  1. 51 Essential BGP Facts
  2. How to Study the Facts
  3. Frequently Asked Questions

51 Essential BGP Facts

The list is ordered from protocol foundations to operational practice. Platform-specific behavior is identified where it matters.

  1. BGP is an inter-domain path-vector protocol. It exchanges reachability and path information between autonomous systems, then applies policy to select routes.
  2. BGP-4 is classless. It advertises IP prefixes with their lengths and supports CIDR and route aggregation.
  3. BGP uses TCP port 179. TCP supplies reliable, ordered delivery; BGP supplies the routing logic.
  4. Peers are configured explicitly. BGP does not discover neighbors automatically like many IGPs.
  5. eBGP and iBGP describe the peer relationship. eBGP peers use different ASNs; iBGP peers use the same ASN.
  6. Public ASNs must be globally unique. Internet-connected organizations receive them through the appropriate registry process.
  7. Private ASN space has two ranges. RFC 6996 reserves 64512-65534 and 4200000000-4294967294 for private use.
  8. BGP supports four-octet ASNs. This expands the ASN space far beyond the original 16-bit range.
  9. The BGP identifier is 32 bits. It is written like an IPv4 address and should be stable and unique within the BGP domain.
  10. The four base message types are OPEN, UPDATE, NOTIFICATION, and KEEPALIVE. Capabilities such as route refresh extend normal operation.
  11. The classic finite-state machine has six states. They are Idle, Connect, Active, OpenSent, OpenConfirm, and Established.
  12. Established is the working state. Only then can peers exchange UPDATE, KEEPALIVE, and NOTIFICATION messages normally.
  13. KEEPALIVE messages maintain the session. They confirm that a quiet peer is still alive without carrying routes.
  14. UPDATE messages can advertise and withdraw reachability. A single update may withdraw old prefixes and announce new NLRI.
  15. BGP sends incremental changes. After the initial exchange, peers normally send updates only when routing information changes.
  16. NLRI identifies reachable prefixes. Path attributes describe how those prefixes can be reached and how they should be treated.
  17. ORIGIN records how BGP learned the route. The codes are IGP, EGP, and INCOMPLETE; they do not mean the route is carried by an IGP.
  18. AS_PATH lists autonomous systems traversed. It supports loop prevention and is a major policy input.
  19. NEXT_HOP identifies the next-hop address. The address must be reachable before a BGP path can be considered usable.
  20. MED suggests an entry point. Lower is preferred, but MED comparison rules depend on neighboring AS and platform policy.
  21. LOCAL_PREF chooses an exit inside an AS. Higher is preferred and the attribute is propagated to iBGP peers.
  22. ATOMIC_AGGREGATE signals information loss during aggregation. Modern operators should also know that AS_SET and AS_CONFED_SET are deprecated by RFC 9774.
  23. Communities attach policy labels to routes. They let many prefixes receive the same routing treatment without matching each prefix individually.
  24. Weight is Cisco-specific. It is local to one router, is not advertised, and a higher value is preferred.
  25. An unreachable NEXT_HOP invalidates a path. This is why IGP or static reachability to BGP next hops is essential in iBGP designs.
  26. Best-path selection is an ordered comparison. Exact steps can vary by vendor, address family, and configured features.
  27. Cisco compares highest weight early. This locally influences only the router where weight is set.
  28. Higher LOCAL_PREF is preferred. It is the common tool for selecting an outbound exit across an AS.
  29. Locally originated paths are preferred at an early step. Cisco distinguishes local origination before comparing several later attributes.
  30. A shorter AS_PATH is normally preferred. Policy can prepend ASNs to make a path less attractive to remote networks.
  31. Lower ORIGIN type is preferred. The order is IGP, EGP, then INCOMPLETE.
  32. Lower MED is preferred when MED is comparable. Cisco normally compares it for paths from the same neighboring AS unless configured otherwise.
  33. eBGP is preferred over iBGP later in the decision process. This applies after earlier attributes tie.
  34. Lower IGP cost to the BGP next hop is preferred. This drives hot-potato routing when higher-priority policy values tie.
  35. Final tie-breakers stabilize the result. Cisco can compare path age, router ID, cluster-list length, and neighbor address.
  36. eBGP usually changes NEXT_HOP to the advertising router. iBGP normally preserves the existing next hop.
  37. next-hop-self solves a common iBGP reachability problem. It makes the iBGP speaker advertise itself as the next hop.
  38. An iBGP-learned route is not normally advertised to another ordinary iBGP peer. This split-horizon rule prevents loops inside the AS.
  39. A full iBGP mesh needs n(n-1)/2 sessions. The session count grows quickly as the number of speakers increases.
  40. Route reflectors reduce the full-mesh requirement. They reflect selected iBGP routes between client and non-client groups.
  41. ORIGINATOR_ID and CLUSTER_LIST prevent reflection loops. They also help identify the path through a route-reflector design.
  42. Confederations divide a large AS into member ASes. Outside peers still see one confederation identifier, but every participating internal speaker must support the feature.
  43. A Cisco network statement requires a matching route. The prefix and mask must exist exactly in the routing table before BGP originates it.
  44. aggregate-address creates BGP summaries. Aggregation reduces route count but must preserve loop-prevention and policy intent.
  45. Inbound policy changes what a router accepts or prefers. Outbound policy changes what it advertises and which attributes it sends.
  46. BGP offers several policy tools. Prefix lists, AS-path filters, community lists, and route maps can filter or modify routes.
  47. NO_EXPORT limits propagation beyond the local confederation boundary. It is a well-known community defined by RFC 1997.
  48. NO_ADVERTISE is stricter. A route carrying it must not be advertised to any other BGP peer.
  49. BGP multipath installs multiple eligible paths. One path is still designated best and eligibility requires key attributes to match under the platform rules.
  50. Cisco defaults to administrative distance 20 for eBGP and 200 for iBGP. Administrative distance selects between routing sources; it does not change the BGP best path itself.
  51. Troubleshoot in layers. Verify IP and TCP reachability, neighbor state, received routes, best-path reasons, policy, next hop, and advertised routes—in that order.

How to Study the Facts

Session: TCP, messages, and statesReachability: NLRI and next hopPolicy: attributes and communitiesScale: full mesh, RRs, and confederations
Operational note: The original 2020 reference included synchronization-era behavior and only the 16-bit private ASN range. This updated guide keeps those ideas in historical context and uses the current private ranges and current AS_SET guidance.

51 BGP Facts Every Network Engineer Should Know: Frequently Asked Questions

What port does BGP use?

BGP uses TCP port 179.

What is the difference between eBGP and iBGP?

eBGP exchanges routes between different autonomous systems. iBGP distributes BGP routes among speakers inside the same autonomous system.

What are the private BGP ASN ranges?

RFC 6996 reserves 64512-65534 and 4200000000-4294967294 for private use. Private ASNs should be removed before routes are advertised to the public Internet unless a deliberate design requires otherwise.

51 BGP Facts Every Network Engineer Should Know: Tags and Keywords

BGP facts, Border Gateway Protocol, BGP for network engineers, eBGP, iBGP, BGP path attributes, route reflectors, BGP communities, Cisco BGP, CCNP ENARSI