Quagga BGP and static routes with metric bug
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
quagga (Ubuntu) |
Expired
|
Undecided
|
Unassigned |
Bug Description
If for instance you learn a DST route of 172.18.1.1/32 from your BGP neighbor with a metric of 0, and you add a static route of 172.18.1.1/32 with a metric of 20, the BGP route disappears out of the kernel routing table. This is normal behavior.
So if you statically add a route of 172.18.1.1/32 with a metric of 20, another of 172.18.1.1/32 with a metric of 25 and another with a metric of 35 the BGP route is still missing.
Now when you delete any of the three routes, for instance the one with the metric of 25. Qaugga's BGP daemon adds the BGP route back into the routing table, thinking the route was deleted.
Not sure if this is the desired functionality or a bug.
Example:
BGP learned route:
route -n | grep 172.18.1.1
172.18.1.1 10.19.0.1 255.255.255.255 UGH 0 0 0 eth3
Adding static route with metric:
route -n | grep 172.18.1.1
172.18.1.1 10.19.0.1 255.255.255.255 UGH 20 0 0 eth3
Adding more static routes:
route -n | grep 172.18.1.1
172.18.1.1 10.19.0.1 255.255.255.255 UGH 20 0 0 eth3
172.18.1.1 10.19.0.1 255.255.255.255 UGH 25 0 0 eth3
172.18.1.1 10.19.0.1 255.255.255.255 UGH 35 0 0 eth3
Deleting one of the static routes:
172.18.1.1 10.19.0.1 255.255.255.255 UGH 0 0 0 eth3
172.18.1.1 10.19.0.1 255.255.255.255 UGH 25 0 0 eth3
172.18.1.1 10.19.0.1 255.255.255.255 UGH 35 0 0 eth3
Thank you for taking the time to report this bug and helping to make Ubuntu better. Please execute the following command only once, as it will automatically gather debugging information, in a terminal:
apport-collect 1521621
Once done, please change the bug status back to New.
When reporting bugs in the future please use apport by using 'ubuntu-bug' and the name of the package affected. You can learn more about this functionality at https:/ /wiki.ubuntu. com/ReportingBu gs.