7/20/2018

Arista EOS - BGP maintenance mode

Basically the BGP maintenance mode on Eos is an implementation of BGP G-SHUT in RFC 8326. The mechanism is quite simple and effective:
  • Add an outbound policy to attach GSHUT community to all prefixes, and it triggers a re-advertisement;
  • Add an inbound policy to set LOCAL_PRF = 0 to all incoming prefixes. 
  • Wait bgp convergence then shut bgp session
The issue to be solved here is: if backup path is hidden by RR or nodes of an AS, it will trigger relearn routes and put them effective. 

Configuration: (system-level in Arista)
config
maintenance
   unit System
      profile unit System
install source scp:solomon@server/export/images/EOS.swi destination flash:
copy runn start
quiese
reload now force
show ip bgp summary
show ip bgp 0.0.0.0/0 detail (in any leaf to verify GSHUT)


show output (before quiesce)

!! Gshut initiator (dut to reload)

ck421.15:08:47(config-builtin-unit-System)#sh ip bgp neighbors | egrep '^BGP|Updates:'
BGP neighbor is 100.1.11.1, remote AS 65110, external link
                         Sent      Rcvd
    Updates:             2810      2574

!! BGP neighbor

pts321.15:06:07(config)#sh ip bgp 2.2.2.2/32 detail
pts321.15:06:14#sh ip bgp 2.2.2.2/32 det
BGP routing table information for VRF default
Router identifier 100.1.11.1, local AS number 65110
BGP routing table entry for 2.2.2.2/32
 Paths: 5 available
....
  65100 65120
    192.1.0.0 from 192.1.0.0 (169.169.169.1) <<< Initiator 
      Origin IGP, metric -, localpref 100, weight 0, valid, external, ECMP, ECMP contributor
      Not best: ECMP-Fast configured

show output (after quiesce)

ck421.15:11:28(config-builtin-unit-System)#sh ip bgp sum
BGP summary information for VRF default
Router identifier 169.169.169.1, local AS number 65100
Neighbor Status Codes: m - Under maintenance
  Neighbor         V  AS           MsgRcvd   MsgSent  InQ OutQ  Up/Down State  PfxRcd PfxAcc
m 192.1.0.1        4  65110            100       103    0    0 01:15:55 Estab  11     11
m 192.1.0.3        4  65110            100       104    0    0 01:15:55 Estab  11     11

ck421.15:11:13(config-builtin-unit-System)#sh ip bgp neighbors | egrep '^BGP|Updates:|Sent.*Rcvd'
BGP neighbor is 100.1.11.1, remote AS 65110, external link
                         Sent      Rcvd
    Updates:             4233      2574  <<< 2810 vs 4233 (resend)

pts321.15:06:20#sh ip bgp 2.2.2.2/32 det
BGP routing table information for VRF default
Router identifier 100.1.11.1, local AS number 65110
BGP routing table entry for 2.2.2.2/32
 Paths: 5 available
....
  65100 65120
    192.1.0.0 from 192.1.0.0 (169.169.169.1)
      Origin IGP, metric -, localpref 0, weight 0, valid, external
      Not best: Local preference
      Community: GSHUT <<<<< 

No comments:

Post a Comment