Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

An issue with manually assigned srv6 vpn sid in BGP #15753

Open
2 tasks done
rakhmerov opened this issue Apr 16, 2024 · 3 comments
Open
2 tasks done

An issue with manually assigned srv6 vpn sid in BGP #15753

rakhmerov opened this issue Apr 16, 2024 · 3 comments

Comments

@rakhmerov
Copy link

Description

A manually configured srv6 vpn sid does not work in bgp vrf configuration if we
clear the bgp vrf configuration and reconfigure the same vrf with the same sid number.
The problem is observed in FRR version 9.1... but previous versions are most likely also affected.

Version

9.1

How to reproduce

  • create new VRF in linux
    ip link add dev VRF_A type vrf table 11 && ip link set dev VRF_A up

  • run frr with the example config from below

  • check that srv6 sid address has been assigned according to the sid from the config
    sh bgp segment-routing srv6

  • remove bgp vrf configuration in vtysh
    conf t
    no router bgp 65100 vrf VRF_A

  • check that srv6 sid address has been removed
    sh bgp segment-routing srv6

  • configure the same vrf with the same sid number again
    conf t
    router bgp 65100 vrf VRF_A
    !
    address-family ipv4 unicast
    sid vpn export 11
    rd vpn export 10.10.10.1:11
    rt vpn both 65000:11
    export vpn
    import vpn
    exit-address-family
    exit

  • check that srv6 sid address has NOT been assigned as expected
    sh bgp segment-routing srv6

NOTE: if you reconfigure sid vpn export with a different value
then srv6 sid address will be assigned as expected
if you return the first sid number that was configured at the begining it won't work

example frr config
#######################################################################
Building configuration...

Current configuration:
!
frr defaults traditional
hostname stack-frr1
log syslog informational
service integrated-vtysh-config
!
interface lo
ip address 10.10.10.1/32
exit
!
router bgp 65100
bgp router-id 10.10.10.1
no bgp ebgp-requires-policy
no bgp default ipv4-unicast
bgp disable-ebgp-connected-route-check
bgp graceful-restart
!
segment-routing srv6
locator SRlocator
exit
exit
!
router bgp 65100 vrf VRF_A
!
address-family ipv4 unicast
sid vpn export 11
rd vpn export 10.10.10.1:11
rt vpn both 65000:11
export vpn
import vpn
exit-address-family
exit
!
segment-routing
srv6
locators
locator SRlocator
prefix 2000:aaa1::/64 block-len 40 node-len 24 func-bits 16
exit
!
exit
!
exit
!
exit
!
end

Expected behavior

stack-frr1# sh bgp segment-routing srv6
locator_name: SRlocator
locator_chunks:

  • 2000:aaa1::/64
    ...
  • name: VRF_A
    vpn_policy[AFI_IP].tovpn_sid: 2000:aaa1:0:0:b::
    vpn_policy[AFI_IP6].tovpn_sid: (null)
    per-vrf tovpn_sid: (null)

Actual behavior

stack-frr1# sh bgp segment-routing srv6
locator_name: SRlocator
locator_chunks:

  • 2000:aaa1::/64
    ...
  • name: VRF_A
    vpn_policy[AFI_IP].tovpn_sid: (null)
    vpn_policy[AFI_IP6].tovpn_sid: (null)
    per-vrf tovpn_sid: (null)

Additional context

No response

Checklist

  • I have searched the open issues for this bug.
  • I have not included sensitive information in this report.
@rakhmerov rakhmerov added the triage Needs further investigation label Apr 16, 2024
@ton31337 ton31337 added bug bgp and removed triage Needs further investigation labels Apr 16, 2024
@ton31337
Copy link
Member

Have you tried using per-vrf SID instead of per-af SID?

router bgp 65100 vrf VRF_A
 sid vpn per-vrf export 11

@rakhmerov
Copy link
Author

rakhmerov commented Apr 22, 2024 via email

@rakhmerov
Copy link
Author

Any hints guys where we should be looking into?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants