Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-16075

[BGP EVPN] Route exchange is not happening with EVPN

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Normal Normal
    • None
    • None
    • ovn-bgp-agent
    • None
    • Critical

      EVPN configuration for FRR is incomplete which is blocking route advertisement.

      Deployed RHOSO with 1 compute node + DVR enabled and 1 provider network.

      Problem:
      I see that ovn-bgp-agent detects the creation of provider network and updated the FRR configuration once I feed VNI ID to OVN NB DB. But EVPN routes are not seen at all, so it can't advertise. 

      compute-0# sh bgp l2vpn evpn
      No prefixes displayed, 0 exist

      This is the FRR running config after the reconfiguration ovn-bgp-agent, note that "address-family l2vpn evpn" is inside VRF block.

      compute-0# sh running-config                                                                                                                                                                                                                  
      Building configuration...                                                                                                                                                                                                                     
                                                                                                                                                                                                                                                    
      Current configuration:                                                                                                                                                                                                                        
      !                                                                                                                                                                                                                                             
      frr version 8.5.3                                                                                                                                                                                                                             
      frr defaults traditional                                                                                                                                                                                                                      
      hostname compute-0                                                                                                                                                                                                                            
      log stdout informational                                                                                                                                                                                                                      
      log timestamp precision 3                                                                                                                                                                                                                     
      !                                                                                                                                                                                                                                             
      vrf vrf-1001                                                                                                                                                                                                                                  
       vni 1001                                                                                                                                                                                                                                     
      exit-vrf                                                                                                                                                                                                                                      
      !                                                                                                                                                                                                                                             
      router bgp 64999                                                                                                                                                                                                                              
       bgp router-id 192.168.122.100                                                                                                                                                                                                                
       bgp log-neighbor-changes                                                                                                                                                                                                                     
       no bgp ebgp-requires-policy                                                                                                                                                                                                                  
       no bgp suppress-duplicates                                                                                                                                                                                                                   
       no bgp hard-administrative-reset                                                                                                                                                                                                             
       no bgp default ipv4-unicast                                                                                                                                                                                                                  
       bgp graceful-shutdown                                                                                                                                                                                                                        
       no bgp graceful-restart notification                                                                                                                                                                                                         
       no bgp network import-check                                                                                                                                                                                                                  
       neighbor uplink peer-group                                                                                                                                                                                                                   
       neighbor uplink remote-as internal                                                                                                                                                                                                           
       neighbor uplink password f00barZ                                                                                                                                                                                                             
       neighbor uplink ttl-security hops 1                                                                                                                                                                                                          
       neighbor 12.12.12.2 peer-group uplink                                                                                                                                                                                                        
       !                                                                                                                                                                                                                                            
       address-family ipv4 unicast                                                                                                                                                                                                                  
        redistribute connected                                                                                                                                                                                                                      
        neighbor uplink activate                                                                                                                                                                                                                    
        neighbor uplink allowas-in origin                                                                                                                                                                                                           
        neighbor uplink prefix-list only-host-prefixes out                                                                                                                                                                                          
       exit-address-family                                                                                                                                                                                                                          
       !                                                                                                                                                                                                                                            
       address-family ipv6 unicast                                                                                                                                                                                                                  
        redistribute connected                                                                                                                                                                                                                      
        neighbor uplink activate                                                                                                                                                                                                                    
        neighbor uplink allowas-in origin                                                                                                                                                                                                           
        neighbor uplink prefix-list only-host-prefixes out                                                                                                                                                                                          
       exit-address-family                                                                                                                                                                                                                          
      exit                                                                                                                                                                                                                                          
      !                                          
      router bgp 64999 vrf vrf-1001                                                                                                                                                                                                         
       no bgp ebgp-requires-policy
       no bgp suppress-duplicates
       no bgp hard-administrative-reset
       no bgp graceful-restart notification
       no bgp network import-check
       !
       address-family ipv4 unicast
        redistribute kernel
        redistribute connected
       exit-address-family
       !
       address-family ipv6 unicast
        redistribute kernel
        redistribute connected
       exit-address-family
       !
       address-family l2vpn evpn
        advertise ipv4 unicast
        advertise ipv6 unicast
        rd 12.12.12.1:1001
       exit-address-family
      exit
      !
      ip prefix-list only-default seq 5 permit 0.0.0.0/0
      ip prefix-list only-host-prefixes seq 5 permit 0.0.0.0/0 ge 32
      !
      ipv6 prefix-list only-default seq 5 permit ::/0
      ipv6 prefix-list only-host-prefixes seq 5 permit ::/0 ge 128
      !
      route-map rm-only-default permit 10
       match ip address prefix-list only-default
       set src 192.168.122.100
      exit
      !
      route-map rm-only-default permit 11
       match ipv6 address prefix-list only-default
       set src 192.168.122.100
      exit
      !
      ip nht resolve-via-default
      !
      ip protocol bgp route-map rm-only-default
      !
      ipv6 protocol bgp route-map rm-only-default
      !
      end
      
      

       

      Solution to the problem:

      compute-0# config
      compute-0(config)# router bgp 64999
      compute-0(config-router)# address-family l2vpn evpn
      compute-0(config-router-af)#  neighbor 12.12.12.2 activate
      compute-0(config-router-af)#  advertise-all-vni
      compute-0(config-router-af)#  advertise ipv4 unicast
      compute-0(config-router-af)# exit-address-family

      With this configuration, EVPN routes are being advertised and received. 

      compute-0# sh bgp l2vpn evpn
      BGP table version is 5, local router ID is 192.168.122.100
      Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
      Origin codes: i - IGP, e - EGP, ? - incomplete
      EVPN type-1 prefix: [1]:[EthTag]:[ESI]:[IPlen]:[VTEP-IP]:[Frag-id]
      EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
      EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
      EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
      EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]
      
         Network          Next Hop            Metric LocPrf Weight Path
      Route Distinguisher: 12.12.12.1:1001
       *> [5]:[0]:[0]:[0.0.0.0]
                          12.12.12.1               0         32768 ?
                          ET:8 RT:64999:1001 Rmac:fa:16:a0:29:e2:8a
       *> [5]:[0]:[32]:[172.16.101.1]
                          12.12.12.1               0         32768 ?
                          ET:8 RT:64999:1001 Rmac:fa:16:a0:29:e2:8a
       *> [5]:[0]:[32]:[172.16.101.125]
                          12.12.12.1               0         32768 ?
                          ET:8 RT:64999:1001 Rmac:fa:16:a0:29:e2:8a
       *> [5]:[0]:[32]:[172.16.101.229]
                          12.12.12.1               0         32768 ?
                          ET:8 RT:64999:1001 Rmac:fa:16:a0:29:e2:8a
       *> [5]:[0]:[128]:[fd53:d91e:400:7f17::]
                          12.12.12.1               0         32768 ?
                          ET:8 RT:64999:1001 Rmac:fa:16:a0:29:e2:8a
      Route Distinguisher: 12.12.12.2:1001
       *>i[5]:[0]:[24]:[42.42.42.0]
                          12.12.12.2               0      0      0 ?
                          RT:64999:1001 ET:8 Rmac:72:4d:29:6e:6a:d8

      Now with this configuration in place, ping between VM attached to provider network can ping the external IP via EVPN. 

              hakhande Haresh Khandelwal
              rh-ee-spk Spoorthi K (Inactive)
              rhos-dfg-networking-squad-bgp
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: