diff options
| author | Donatas Abraitis <donatas@opensourcerouting.org> | 2022-06-07 22:12:07 +0300 |
|---|---|---|
| committer | Donatas Abraitis <donatas@opensourcerouting.org> | 2022-06-07 22:50:24 +0300 |
| commit | 3840a8193ea9dcc3a8b61cd4a5d890879878986e (patch) | |
| tree | 6f04134ea82216f9a3d8080a38a81bb023fb6553 /lib/command.c | |
| parent | aa800819cde613f296a38228642463477fcf7c12 (diff) | |
bgpd: Withdraw implicitly old paths from VRFs when import/export list changes
If we overwrite import/export RT list via route-maps or even flush by using
`set extcommunity none`, then we must withdraw old paths from VRFs to avoid
stale paths.
For example using:
```
router bgp 65500 vrf vrf1
bgp router-id 10.180.1.1
!
address-family ipv4 unicast
network 192.168.100.100/32 route-map rm
rd vpn export 65500:10001
rt vpn import 65500:10000 65500:10990
rt vpn export 65500:10000
export vpn
import vpn
exit-address-family
exit
!
router bgp 65500 vrf vrf2
bgp router-id 10.180.1.1
!
address-family ipv4 unicast
rd vpn export 65500:11001
rt vpn import 65500:11000 65500:11990
rt vpn export 65500:11000
export vpn
import vpn
exit-address-family
exit
!
route-map rm permit 10
set extcommunity rt 65500:10100 65500:12990 65500:13990 65500:11990
exit
```
If we strip extcommunities using:
```
route-map rm permit 10
set extcommunity none
exit
```
or
```
route-map rm permit 10
set extcommunity rt 65500:10100 65500:12990 65500:13990
```
Routes that are imported with 65500:11990 (192.168.100.100/32 from vrf1)
becomes stale.
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Diffstat (limited to 'lib/command.c')
0 files changed, 0 insertions, 0 deletions
