From: Paul Donald Date: Fri, 3 Oct 2025 14:33:41 +0000 (+0200) Subject: router: Apply updated values from RFC8319 (updates RFC4861) to RA/ND X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=cc7766c12abe799d3abc4657965fa9c1a0058fbb;p=project%2Fodhcpd.git router: Apply updated values from RFC8319 (updates RFC4861) to RA/ND https://www.rfc-editor.org/rfc/rfc8319#section-4 Signed-off-by: Paul Donald Link: https://github.com/openwrt/odhcpd/pull/225 Signed-off-by: Álvaro Fernández Rojas --- diff --git a/src/router.c b/src/router.c index 079a5d1..e9b4372 100644 --- a/src/router.c +++ b/src/router.c @@ -379,8 +379,8 @@ static uint32_t calc_ra_lifetime(struct interface *iface, uint32_t maxival) if (lifetime > 0 && lifetime < maxival) lifetime = maxival; - else if (lifetime > 9000) - lifetime = 9000; + else if (lifetime > RouterLifetime) + lifetime = RouterLifetime; return lifetime; } diff --git a/src/router.h b/src/router.h index 0444da8..19b0079 100644 --- a/src/router.h +++ b/src/router.h @@ -32,8 +32,29 @@ struct icmpv6_opt { #define MaxInitialRtrAdvInterval 16 #define MaxInitialRtAdvs 3 -#define MaxRtrAdvInterval 1800 -#define MinRtrAdvInterval 3 +/* RFC8319 §4 + This document updates §4.2 and 6.2.1 of [RFC4861] to change + the following router configuration variables. + + In §6.2.1, inside the paragraph that defines + MaxRtrAdvInterval, change 1800 to 65535 seconds. + + In §6.2.1, inside the paragraph that defines + AdvDefaultLifetime, change 9000 to 65535 seconds. +*/ +#define MaxRtrAdvInterval 65535 +#define MinRtrAdvInterval 3 +#define AdvDefaultLifetime 65535 +/* RFC8319 §4 + This document updates §4.2 and 6.2.1 of [RFC4861] to change + the following router configuration variables. + + In §4.2, inside the paragraph that defines Router Lifetime, + change 9000 to 65535 seconds. + + Note: this is 16 bit Router Lifetime field in RA packets +*/ +#define RouterLifetime 65535 #define ND_RA_FLAG_PROXY 0x4 #define ND_RA_PREF_HIGH (1 << 3)