
1. BGP Process & AS Number
You to enable BGP and define your Autonomous System (AS) number, which identifies your routing domain globally.
2. Neighbor (Peer) Definitions
You specify the IP address of each BGP peer and their AS number. This establishes whether the relationship is iBGP (same AS) or eBGP (different AS).
3. Address Family Configuration
You define which address families to advertise — most commonly IPv4 unicast, but also IPv6, VPNv4 (for MPLS/VPN), etc.
4. Network Advertisements
You tell BGP which prefixes to originate, either by using network statements (with matching routes in the routing table) or by redistributing from other protocols.
5. Route Policies / Filtering
Prefix lists, route maps, or access lists are used to control what routes are accepted or sent to peers. This is critical for security and traffic engineering.
6. BGP Timers
Keepalive and hold-down timers determine how quickly BGP detects a failed peer. Defaults are typically 60s/180s but are often tuned lower.
7. Authentication (optional but recommended)
MD5 password authentication between peers helps prevent spoofed BGP sessions.
8. Next-hop Handling (for iBGP)
In iBGP, you often need `next-hop-self` so peers can properly resolve the next hop for eBGP-learned routes, especially when the eBGP next-hop isn’t directly reachable internally.
9. Route Reflectors or Confederations (for iBGP at scale)
Since iBGP requires a full mesh by default, route reflectors are commonly used to avoid the n² peering problem in larger networks.