-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
[staticroutebfd] use lowercase IPv6 address as cache key when nexthop IPv6 address is uppercase in the config_db #15764
Comments
11 tasks
prsunny
pushed a commit
that referenced
this issue
Jul 10, 2023
*use lower case for IPv6 address as internal key and bfd session key. fixes #15764 Why I did it *staticroutebfd uses the IPv6 address string as a key to create bfd session and cache the bfd sessions using it as a key. When the IPv6 address string has uppercase letter in the static route nexthop list, the string with uppercase letter key is stored in the cache, but the BFD STATE_DB uses lowercase for IPv6 address, so when the staticroutebfd get the bfd state event, it cannot find the bfd session in its local cache because of the letter case.
sonic-otn
pushed a commit
to sonic-otn/sonic-buildimage
that referenced
this issue
Sep 20, 2023
*use lower case for IPv6 address as internal key and bfd session key. fixes sonic-net#15764 Why I did it *staticroutebfd uses the IPv6 address string as a key to create bfd session and cache the bfd sessions using it as a key. When the IPv6 address string has uppercase letter in the static route nexthop list, the string with uppercase letter key is stored in the cache, but the BFD STATE_DB uses lowercase for IPv6 address, so when the staticroutebfd get the bfd state event, it cannot find the bfd session in its local cache because of the letter case.
mssonicbld
pushed a commit
to mssonicbld/sonic-buildimage
that referenced
this issue
Feb 1, 2024
*use lower case for IPv6 address as internal key and bfd session key. fixes sonic-net#15764 Why I did it *staticroutebfd uses the IPv6 address string as a key to create bfd session and cache the bfd sessions using it as a key. When the IPv6 address string has uppercase letter in the static route nexthop list, the string with uppercase letter key is stored in the cache, but the BFD STATE_DB uses lowercase for IPv6 address, so when the staticroutebfd get the bfd state event, it cannot find the bfd session in its local cache because of the letter case.
mssonicbld
pushed a commit
that referenced
this issue
Feb 3, 2024
*use lower case for IPv6 address as internal key and bfd session key. fixes #15764 Why I did it *staticroutebfd uses the IPv6 address string as a key to create bfd session and cache the bfd sessions using it as a key. When the IPv6 address string has uppercase letter in the static route nexthop list, the string with uppercase letter key is stored in the cache, but the BFD STATE_DB uses lowercase for IPv6 address, so when the staticroutebfd get the bfd state event, it cannot find the bfd session in its local cache because of the letter case.
lixiaoyuner
pushed a commit
to lixiaoyuner/sonic-buildimage
that referenced
this issue
Feb 6, 2024
…sonic-buildimage into internal Fix conflict for rsyslog. Skip partial DNS unit test in internal branch after confirmed with Gang. Related work items: sonic-net#113, sonic-net#131, sonic-net#132, sonic-net#134, sonic-net#321, sonic-net#331, sonic-net#381, sonic-net#382, sonic-net#2525, sonic-net#2676, sonic-net#2698, sonic-net#2737, sonic-net#2789, sonic-net#2839, sonic-net#2845, sonic-net#2850, sonic-net#2882, sonic-net#2885, sonic-net#2887, sonic-net#2890, sonic-net#2895, sonic-net#13338, sonic-net#14105, sonic-net#15142, sonic-net#15223, sonic-net#15456, sonic-net#15487, sonic-net#15520, sonic-net#15726, sonic-net#15727, sonic-net#15758, sonic-net#15764, sonic-net#15765, sonic-net#15772, sonic-net#15779, sonic-net#15782, sonic-net#15785, sonic-net#15797, sonic-net#15798, sonic-net#15810, sonic-net#15811, sonic-net#15821
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description
when IPv6 address with uppercase letter (A-F) in the static route nexthop list, staticroutebfd does not covert it to lowercase before using it as a key in local cache.
Because the BFD session key in the redis STATE_DB is lowercase, so when staticroutebfd get a state update event from BFD state table, it cannot find it in local cache because of different letter case.
need to convert the IPv6 address to lowercase before create BFD session and using it as a cache key
Steps to reproduce the issue:
Describe the results you received:
static route for 603:10e2:400::4/128 is not installed
Describe the results you expected:
static route for 603:10e2:400::4/128 to be installed
Output of
show version
:Output of
show techsupport
:Additional information you deem important (e.g. issue happens only occasionally):
The text was updated successfully, but these errors were encountered: