Skip to content
This repository was archived by the owner on Oct 12, 2022. It is now read-only.

Deduce nexthop ifindex for ipv6 when ifindex points to 'lo'#42

Merged
pavel-shirshov merged 3 commits intosonic-net:debian/0.99.24.1from
pavel-shirshov:pavelsh/fix_lo_dyn
Jul 14, 2020
Merged

Deduce nexthop ifindex for ipv6 when ifindex points to 'lo'#42
pavel-shirshov merged 3 commits intosonic-net:debian/0.99.24.1from
pavel-shirshov:pavelsh/fix_lo_dyn

Conversation

@pavel-shirshov
Copy link
Contributor

@pavel-shirshov pavel-shirshov commented Jul 13, 2020

When we have ipv4 bgp session with 'bgp x.x.x.x update-source y.y.y.ywherey.y.y.y` assigned to 'lo' bgpd will use ifindex which points to 'lo' for ipv6 routes nexthops received through this ipv4 session.

@pavel-shirshov pavel-shirshov self-assigned this Jul 13, 2020
@pavel-shirshov pavel-shirshov requested a review from lguohan July 13, 2020 22:50
@pavel-shirshov pavel-shirshov changed the title Deduce nexthop ifindex for ipv6 when bgpd decided to use loopback int… Deduce nexthop ifindex for ipv6 when ifindex points to 'lo' Jul 13, 2020
@pavel-shirshov pavel-shirshov merged commit 12a9c58 into sonic-net:debian/0.99.24.1 Jul 14, 2020
@pavel-shirshov pavel-shirshov deleted the pavelsh/fix_lo_dyn branch July 14, 2020 00:40
pavel-shirshov added a commit that referenced this pull request Jul 14, 2020
* Deduce nexthop ifindex for ipv6 when bgpd decided to use loopback interface
pavel-shirshov added a commit to sonic-net/sonic-mgmt that referenced this pull request Aug 11, 2020
Added a new testcase to check ipv6 routes, received over dynamic ipv4 bgp session. This test is required to check sonic-net/sonic-quagga#42

What is the motivation for this PR?
Recently we found a bug in sonic-quagga. We need to test sonic after the bug fix sonic-net/sonic-quagga#42.

How did you do it?
I used existing ipv4 bgp speaker test as an example. I added ipv6 test case and also fixed some issues in the common test functions:

 - add support of the older sonic release
 - generate_ips() wasn't able generage ips for the ipv6 prefixes
 - fix bugs in exabgp ansible module. 
 - fib_test.py uses fib.py and lpm.py which didn't work for ipv6
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants