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.