iBGP RR IPv6 link-local next-hop not kept

Mirai Azayaka azayaka at apernet.io
Tue Feb 28 20:57:54 CET 2023


Hello,

I am trying to send routes from my DHCPv6 prefix delegation server to
my router using iBGP. Those delegated prefix routes on the DHCPv6
server are installed in its kernel table, such as 2001:db8:db8::/56
via <client's link-local addr>. I want to pass this information to my
router, but what the router receive is always 2001:db8:db8::/56 via
<global unicast addr of the DHCPv6 server>. Why would next-hop change
if it's iBGP?

Here is my DHCPv6 server's BIRD configuration:

ipv6 table pd;
protocol kernel dhcpv6_pd {
        learn;
        kernel table 20;
        scan time 1;
        ipv6 {
                table pd;
                import all;
                export none;
        };
}
protocol bgp prefix_delegation {
        local <some global unicast addr> as 65535;
        neighbor <some global unicast addr> as 65535;
        direct;
        ipv6 {
                table pd;
                next hop keep;
                import none;
                export filter {
                        if ( proto = "dhcpv6_pd" ) then {
                                accept;
                        }
                        else reject;
                };
        };
        graceful restart;
}

Here is my router's BIRD configuration:

protocol bgp prefix_delegation {
        local <some global unicast addr> as 65535;
        neighbor <some global unicast addr> as 65535;
        direct;
        ipv6 {
                import filter {
                        if net.len = 48 then {
                                accept;
                        }
                        else reject;
                };
                export none;
        };
        graceful restart;
}

Thanks for any suggestions!


More information about the Bird-users mailing list