Listen to this Post
BGP (Border Gateway Protocol) is the backbone of the modern internet, enabling routing between autonomous systems (AS). This article dives into BGP fundamentals, configuration, and troubleshooting for network engineers.
You Should Know:
1. Basic BGP Commands (Cisco IOS)
enable configure terminal router bgp <AS_NUMBER> neighbor <IP_ADDRESS> remote-as <REMOTE_AS_NUMBER> network <NETWORK_ADDRESS> mask <SUBNET_MASK>
### **2. Verify BGP Neighbors**
show ip bgp summary show ip bgp neighbors
### **3. BGP Route Advertisement**
router bgp 65001 network 192.168.1.0 mask 255.255.255.0 neighbor 10.0.0.2 remote-as 65002
### **4. BGP Path Selection Criteria**
BGP selects the best path based on:
- Weight (Cisco proprietary)
- Local Preference (Higher is better)
- AS Path (Shorter is better)
- Origin Type (IGP > EGP > Incomplete)
- MED (Multi-Exit Discriminator) (Lower is better)
### **5. Troubleshooting BGP**
debug ip bgp updates show ip bgp show ip route bgp
### **6. Linux BGP Tools (FRRouting & Bird)**
sudo apt install frr vtysh configure terminal router bgp <AS_NUMBER> neighbor <IP> remote-as <REMOTE_AS>
### **7. BGP Security Best Practices**
- Use BGPsec (RFC 8205)
- Implement Route Filtering (Prefix Lists)
- Enable MD5 Authentication
router bgp 65001 neighbor 10.0.0.2 password SECURE_KEY
## **What Undercode Say**
BGP is a critical protocol for internet routing, and mastering it requires hands-on practice. Whether you’re configuring it on Cisco, Juniper, or Linux (FRRouting/Bird), understanding path selection, neighbor relationships, and security is key. Use `tcpdump` for BGP packet analysis and ping/traceroute for connectivity checks.
For further reading:
## **Expected Output:**
BGP router identifier 192.168.1.1, local AS number 65001 Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 10.0.0.2 4 65002 150 155 10 0 0 00:05:30 5
References:
Reported By: Saad Almutairi – Hackers Feeds
Extra Hub: Undercode MoN
Basic Verification: Pass ✅



