-
Notifications
You must be signed in to change notification settings - Fork 140
Closed
Description
Situation
- A network has multiple routers
- Each router announcers router advertisements, however with different priority
Observed behaviour
- dhcpcd frequently changes the default route, sometimes just to put it back to the same router
related log:
bridge:~# dhcpcd -B
no such user dhcpcd
dhcpcd-10.2.2 starting
DUID 00:01:00:01:2b:e7:83:67:f8:e4:e3:e2:37:a4
wlan0: connected to Access Point: Digital Glarus IPv6
eth0: waiting for carrier
wlan0: IAID e3:e2:37:a4
wlan0: soliciting an IPv6 router
wlan0: soliciting a DHCP lease
wlan0: Router Advertisement from fe80::62be:b4ff:fe07:72bb
wlan0: adding address 2a0a:e5c0:10:bee:fae4:e3ff:fee2:37a4/64
wlan0: adding route to 2a0a:e5c0:10:bee::/64
wlan0: adding default route via fe80::62be:b4ff:fe07:72bb
wlan0: using IPv4LL address 169.254.143.145
wlan0: adding route to 169.254.0.0/16
wlan0: adding default route
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: Router Advertisement from fe80::62be:b4ff:fe07:e90e
wlan0: adding address 2a0a:e5c0:10:bee:fae4:e3ff:fee2:37a4/64
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
wlan0: changing default route via fe80::62be:b4ff:fe07:72bb
wlan0: changing route to 2a0a:e5c0:10:bee::/64
....
Every time the route is replaced/readded, the connections from the host break, thus resulting into a very "shaky" network experience.
Expected behaviour
- dhcpcd sees both RAs and either a) deploys 2 default routes with different metrics (preferred behaviour)
- dhcpcd sees both RAs and only deploys the higher priority default route
RAs
The following RAs are seen in the network:
#
# radvd configuration generated by radvdump 2.19
# based on Router Advertisement from fe80::62be:b4ff:fe07:e90e
# received by interface wlan0
#
interface wlan0
{
AdvSendAdvert on;
# Note: {Min,Max}RtrAdvInterval cannot be obtained with radvdump
AdvManagedFlag off;
AdvOtherConfigFlag off;
AdvReachableTime 0;
AdvRetransTimer 0;
AdvCurHopLimit 64;
AdvDefaultLifetime 600;
AdvHomeAgentFlag off;
AdvDefaultPreference low;
prefix 2a0a:e5c0:10:bee::/64
{
AdvValidLifetime 86400;
AdvPreferredLifetime 14400;
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr off;
}; # End of prefix definition
RDNSS 2a0a:e5c0:10:a::a 2a0a:e5c0:10:a::b
{
AdvRDNSSLifetime 3600;
}; # End of RDNSS definition
DNSSL place10.ungleich.ch
{
AdvDNSSLLifetime 3600;
}; # End of DNSSL definition
}; # End of interface definition
#
# radvd configuration generated by radvdump 2.19
# based on Router Advertisement from fe80::62be:b4ff:fe07:72bb
# received by interface wlan0
#
interface wlan0
{
AdvSendAdvert on;
# Note: {Min,Max}RtrAdvInterval cannot be obtained with radvdump
AdvManagedFlag off;
AdvOtherConfigFlag off;
AdvReachableTime 0;
AdvRetransTimer 0;
AdvCurHopLimit 64;
AdvDefaultLifetime 600;
AdvHomeAgentFlag off;
AdvDefaultPreference high;
prefix 2a0a:e5c0:10:bee::/64
{
AdvValidLifetime 86400;
AdvPreferredLifetime 14400;
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr off;
}; # End of prefix definition
RDNSS 2a0a:e5c0:10:a::a 2a0a:e5c0:10:a::b
{
AdvRDNSSLifetime 3600;
}; # End of RDNSS definition
DNSSL place10.ungleich.ch
{
AdvDNSSLLifetime 3600;
}; # End of DNSSL definition
}; # End of interface definition
It can be seen that the AdvDefaultPreference is different in the two announcements.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels