-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Fix IPV6 src-dest route #16686
base: master
Are you sure you want to change the base?
Fix IPV6 src-dest route #16686
Conversation
Linux kernel currently doesn't support it: zebra[22993]: [HSYZM-HV7HF] Extended Error: IPv6 routes using source address can not use nexthop objects Signed-off-by: Xiao Liang <[email protected]>
@@ -2361,6 +2361,7 @@ ssize_t netlink_route_multipath_msg_encode(int cmd, struct zebra_dplane_ctx *ctx | |||
} | |||
|
|||
if ((!fpm && kernel_nexthops_supported() | |||
&& (p->family != AF_INET6 || !src_p) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't we tell the operator about such a thing? Because now we just hide the error/warning being displayed from the kernel, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not necessary. Instead of using nexthop object, just send RTNL message with plain nexthops, as when no zebra nexthop kernel enable
is configured. Kernel is happy with this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think adding a bit of context in the nexthop_groups.rst file to explain this should be sufficient.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think adding a bit of context in the nexthop_groups.rst file to explain this should be sufficient.
nexthop_groups.rst is about nexthop-group
configured by user, which is a different thing from kernel nexthop objects. Kernel nexthop is sort of internal implementation of zebra. Is it more suitable to put it in zebra.rst?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sure put it in zebra.rst. I want this documented.
ef6fd77
to
29193fd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like to see a documentation update to talk about the limitation of nhg's and source routing. Additionally I would like to see a small test added to show that source routing is properly handled in staticd
Signed-off-by: Xiao Liang <[email protected]>
Process IPv6 src-dest routes on nht update, otherwise they are not installed: (config)# ipv6 route 1::1/128 from 2::2/128 fe80::1 eth0 (config)# ipv6 route 1::1/128 from 2::3/128 fe80::1 eth0 Signed-off-by: Xiao Liang <[email protected]>
Signed-off-by: Xiao Liang <[email protected]>
29193fd
to
6392442
Compare
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Fix issues of IPv6 src-dest route: