Uploaded image for project: 'bgpcep'
  1. bgpcep
  2. BGPCEP-778

Peer-group reconfiguration has no effect on neighbor

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Medium Medium
    • Fluorine
    • Fluorine
    • BGP
    • None

      Overview: I configure peer-group called "custom-group" with ipv6 afi. Than I configure neighbor to this custom-group. I send ipv6 route from play.py or exabgp, and the route is in topology and ribs as expected.

      When I reconfigure(PUT) without ipv6 afi, the routes are still in topologies and ribs, without any difference. Than I (DELETE) whole custom-group. Routes are still visible in ribs and example-ipv6-topology. This is all with stable play.py/exabgp connection, reconnection doesn't make a difference.

      As a counterpoint when I configure neighbor without peer-group with specified afi ipv6, routes are in. When I configure it without ipv6 afi, routes are not visible.

      Also as a side note when I try to send routes with many attributes, peer-group configured neighbor does not accept them at all. However nighbor without peer-group with all afi-safis does.

      It almost seems like there are always only 3 afi-safis ipv4, ipv6, and linkstate. and it doesnt matter how I configure the peer-group. Maybe it always takes config from internal-neighbor?

      Sidenotes:

      • during all this there are no Errors in karaf.log
      • all restconf requests go without error.
      • I will try local test wihtout odl-bgpcep-bgp-config-example with custom rib to see if there is any difference.
        (ADD: working with clean new rib without odl-bgpcep-bgp-config-example doesn't make a difference.)

      Steps to reproduce:
      1) start fluorine karaf
      2) install odl-restconf odl-bgpcep-bgp odl-bgpcep-bgp-config-example
      3) run ./conf_peer_group_all.py
      (configures peer-group called "custom-group" ibgp with all afi-safis)
      4) run ./conf_neighbor_with_peer_group.py
      (configures neighbor 127.0.0.2 with custom-group)
      5) run exabgp with file from attachements.

      env exabgp.tcp.port=1790 exabgp --debug exaipv6.cfg
      

      6) at this point checkout example-ipv6-topology with script
      (NOTE: I use jq to nicely format json output, install with "sudo apt-get install jq")
      ./get_ipv6_topology.sh

      also we can check full rib as always with

      curl -H "Accept: application/json" -u admin:admin "http://localhost:8181/restconf/operational/bgp-rib:bgp-rib/rib/example-bgp-rib" | jq "."'
      

      7) reconfigure peer-group with only linkstate afi-safi
      ./conf_pg_linkstate_only.py
      8) At this point we check topology and full rib again
      We could have kept exabgp running or restart it, doesn't matter.
      9) We can also delete custom-group with
      ./delete_pg.py
      but it has no effect.

        1. conf_neighbor_with_peer_group.py
          0.8 kB
        2. conf_peer_group_all.py
          3 kB
        3. conf_pg_linkstate_only.py
          1 kB
        4. delete_pg.py
          1 kB
        5. exaipv6.cfg
          0.3 kB
        6. get_group_exact.sh
          0.3 kB
        7. get_ipv4_topology.sh
          0.2 kB
        8. get_ipv6_topology.sh
          0.2 kB
        9. get_peer_groups.sh
          0.3 kB

            cdgasparini Claudio David Gasparini
            tomas.markovic Tomas Markovic
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: