From: Tom Herbert <tom@herbertland.com>
To: tom@herbertland.com, davem@davemloft.net, kuba@kernel.org,
netdev@vger.kernel.org
Subject: [PATCH net-next 4/5] ipv6: Document default of zero for max_dst_opts_number
Date: Mon, 1 Dec 2025 10:55:33 -0800 [thread overview]
Message-ID: <20251201185817.1003392-5-tom@herbertland.com> (raw)
In-Reply-To: <20251201185817.1003392-1-tom@herbertland.com>
Add a note and rationalization for setting the default maximum number
of Destination options to zero. This means by default Destination
Options extension headers are not processed on receive and packets
with Destination Options extension headers are dropped
---
Documentation/networking/ip-sysctl.rst | 38 ++++++++++++++++++--------
1 file changed, 27 insertions(+), 11 deletions(-)
diff --git a/Documentation/networking/ip-sysctl.rst b/Documentation/networking/ip-sysctl.rst
index bc9a01606daf..7ccfdc74dc91 100644
--- a/Documentation/networking/ip-sysctl.rst
+++ b/Documentation/networking/ip-sysctl.rst
@@ -2474,20 +2474,36 @@ mld_qrv - INTEGER
Minimum: 1 (as specified by RFC6636 4.5)
max_dst_opts_number - INTEGER
- Maximum number of non-padding TLVs allowed in a Destination
- options extension header. If this value is less than zero
- then unknown options are disallowed and the number of known
- TLVs allowed is the absolute value of this number.
-
- Default: 8
+ Maximum number of non-padding TLVs allowed in a Destination
+ options extension header. If this value is zero then receive
+ Destination Options processing is disabled in which case packets
+ with the Destination Options extension header are dropped. If
+ this value is less than zero then unknown options are disallowed
+ and the number of known TLVs allowed is the absolute value of
+ this number.
+
+ The default is zero which means the all received packets with
+ Destination Options extension header are dropped. The rationale is that
+ for the vast majority of hosts, Destination Options serve no purpose.
+ In the thirty years of IPv6 no broadly useful IPv6 Destination options
+ have been defined, they have no security or even checksum protection,
+ latest data shows the Destination have drop rates on the Internet
+ from ten percent to more than thirty percent (depending on the size of
+ the extension header). They also have the potential to be used as a
+ Denial of Service attack.
+
+ Default: 0
max_hbh_opts_number - INTEGER
Maximum number of non-padding TLVs allowed in a Hop-by-Hop
- options extension header. If this value is less than zero
- then unknown options are disallowed and the number of known
- TLVs allowed is the absolute value of this number.
-
- Default: 8
+ options extension header. If this value is zero then receive
+ Hop-by-Hop Options processing is disabled in which case packets
+ with the Hop-by-Hop Options extension header are dropped.
+ If this value is less than zero then unknown options are disallowed
+ and the number of known TLVs allowed is the absolute value of this
+ number.
+
+ Default: 8
max_dst_opts_length - INTEGER
Maximum length allowed for a Destination options extension
--
2.43.0
next prev parent reply other threads:[~2025-12-01 18:59 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-01 18:55 [PATCH net-next 0/5] ipv6: Disable IPv6 Destination Options RX processing by default Tom Herbert
2025-12-01 18:55 ` [PATCH net-next 1/5] ipv6: Check if max HBH or DestOp sysctl is zero and drop if it is Tom Herbert
2025-12-01 18:55 ` [PATCH net-next 2/5] ipv6: Disable IPv6 Destination Options RX processing by default Tom Herbert
2025-12-01 18:55 ` [PATCH net-next 3/5] ipv6: Set Hop-by-Hop options limit to 1 Tom Herbert
2025-12-01 18:55 ` Tom Herbert [this message]
2025-12-01 18:55 ` [PATCH net-next 5/5] ipv6: Document default of one for max_hbh_opts_number Tom Herbert
2025-12-05 0:08 ` [PATCH net-next 0/5] ipv6: Disable IPv6 Destination Options RX processing by default Jakub Kicinski
2025-12-05 16:07 ` Tom Herbert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251201185817.1003392-5-tom@herbertland.com \
--to=tom@herbertland.com \
--cc=davem@davemloft.net \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.