From: [email protected] <[email protected]> on behalf of Chinmaya Aggarwal
via lists.fd.io <[email protected]>
Date: Monday, 4 April 2022 at 09:08
To: [email protected] <[email protected]>
Subject: [vpp-dev] Prevent blackhole routes being leaked into VPP
Hi,
We have integrated linux-cp and linux-nl plugin in VPP. We create table 1203 on
VPP and on linux (in namespace dataplane). We added a blackhole route on linux
using below command:-
sudo ip netns exec dataplane ip -6 route add blackhole 2001:50:10:a111::101/64
table 1203
When I view this route on VPP it shows something like this:-
vpp# show ip6 fib table 1203
2001:50:10:a111::/64
unicast-ip6-chain
[@0]: dpo-load-balance: [proto:ip6 index:88 buckets:1 uRPF:76 to:[164:17056]]
[0] [@0]: dpo-drop ip6
If you ‘show ip6 fib table 1203 2001:50:10:a111::/64’ you’ll see more detailed
output. It will show that the entry now has two ‘sources’ the API and the CLI.
FIB has a simple priority mechanism for choosing with source ‘wins’ and thus
contributes the forwarding (i.e. the DPOs you see display here). The API source
has higher priority than the CPI source. This was done on purpose to get
exactly the behaviour you see, that is the *debug* CLI cannot disrupt the
routes provided by the control plane. If you want to change this behaviour,
you’ll need to recompile VPP with the source priorities changed.
After this If I try to add or overwrite this route with another route but VPP
is not able to overwrite it. I executed below command:-
vppctl ip route add 2001:50:10:a111::101/64 table 1203 via ipip19
where ipip19 is an ipip tunnel created by us.
When I try to view the updated route on VPP it is still showing blackhole
route:-
vpp# show ip6 fib table 1203
2001:50:10:a111::/64
unicast-ip6-chain
[@0]: dpo-load-balance: [proto:ip6 index:88 buckets:1 uRPF:76 to:[164:17056]]
[0] [@0]: dpo-drop ip6
Why VPP is not able to overwrite the blackhole route with the new route?
Also, is there a way by which we can prevent blackhole routes (added in linux)
getting leaked into VPP?
I would suggest that VPP (i.e. the data plane) should always have an exact copy
of the routes from the control plane . So the question to ask is how to prevent
black hole routes being installed in linux, for which I do not have an answer
(assuming your example above is contrived and you get blackhole routes from a
routing protocol).
/neale
Thanks and Regards,
Chinmaya Agarwal.
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#21194): https://lists.fd.io/g/vpp-dev/message/21194
Mute This Topic: https://lists.fd.io/mt/90236408/21656
Group Owner: [email protected]
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-