Difference between revisions of "BGP"

From neil.tappsville.com
Jump to navigationJump to search
(Created page with "=BGP Basics= https://academy.apnic.net/en/virtual-labs/ https://www.juniper.net/documentation/software/erx/erx41x/swconfig-routing-vol2/html/bgp-config.html RFC 4271 * IB...")
 
m
Line 11: Line 11:
  
 
IBGP does not need to be directly connected - generally uses the loopback address.
 
IBGP does not need to be directly connected - generally uses the loopback address.
 +
 
IBGP doesnt advertise routes learned from other IBGP nodes (only ebgp) - thus all nodes need to learn - thus where a route reflector comes into play
 
IBGP doesnt advertise routes learned from other IBGP nodes (only ebgp) - thus all nodes need to learn - thus where a route reflector comes into play
  

Revision as of 04:23, 21 May 2020

BGP Basics

https://academy.apnic.net/en/virtual-labs/ https://www.juniper.net/documentation/software/erx/erx41x/swconfig-routing-vol2/html/bgp-config.html


RFC 4271

  • IBGP - Carry summarised network routes across an AS
  • EBGP - Exchange summarised network routes between different AS

IBGP does not need to be directly connected - generally uses the loopback address.

IBGP doesnt advertise routes learned from other IBGP nodes (only ebgp) - thus all nodes need to learn - thus where a route reflector comes into play

4 Messages

  • OPEN - Hello - must have router id, AS #
  • KEEPALIVE - Heartbeat
  • UPDATE - Carries routes and deletes
  • NOTIFICATION - Error - Connection is closed immedately

States

  • Idle (trying to initiate a TCP connection with the BGP Peer)
  • Connect (3way TCP handshake)
  • Open Sent (connect sent but not confirmed)
  • Active
  • Open Confirm (BGP waits for a Keepalive or Notification message)
  • Established (BGP session is established. BGP neighbors exchange routes via Update messages)


Path Attributes

Well-known Mandatory

Requried in every update message

  • ORIGIN
  • AS_PATH
  • NEXT_HOP

Well-known discretionary

  • LOCAL_PREF
  • ATOMIC_AGGREGATE

Optional transitive

  • AGGREGATOR
  • COMMUNITY

Optional non-transitive

  • MULTI_EXIT_DISC
  • ORIGINATOR_ID
  • CLUSTER_LIST