Series of IPv6 Improvements

Pouria Mousavizadeh Tehrani <[email protected]>
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]>
Hi,

I've recently completed a series of changes focused on enhancing our 
IPv6 stack, particularly around several important RFCs related to 
Neighbor Discovery Protocol (NDP). These changes not only resolve 
long-standing issues but also introduce new features that align with 
modern networking standards.

Here's an overview of what I've done:
- Implemented Gratuitous Neighbor Discovery (RFC 9131 + RFC 4861 Section 
7.2.6, which is also addresses one of the IPv6 deployment issues in RFC 
9898 Section 3.9.)
- Implemented Optimistic DAD (RFC 4429)
- Added support for delayed anycast and proxy addresses during Neighbor 
Advertisement (RFC4861 7.2.7, + 7.2.8)
- Introduced support for multiple PREF64 in Router Advertisement (RFC 8781)
- Implemented support for Route Information option (RFC 4191)
- Simplified `nd6_ra_input()`

While implementing the RFC 4191, I found out some of the route 
expiration facilities are broken. So I fixed it myself:
- rtnetlink(4): Add support for nexthop expiration in new route
- route(8): Fixed the -expire argument when using netlink
- netstat(1): Fixed expire column values in -r flag when using netlink
- snl(3): Remove duplicate `rta_expires` member in the route parser

These improvements should enhance our IPv6 capabilities significantly 
and resolves many /* XXX */ comments + some long-standing issues like 
lack of route option support (see PR263982).

You can find those reviews here:
https://reviews.freebsd.org/search/query/FpCNDQh8WgIb

I'd appreciate any review or testing these proposed changes on Phabricator.

-- 
Pouria
OpenPGP_signature.asc (application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQSqt7cppfvJ816gj0lUwVnUeMwagAUCaZwaAAAKCRBUwVnUeMwa
gFDmAQCZ+hS4Ce8ewTk6zGyiS3Gz6mTFWKsdklx/pXgD8+sEUwEA9clovmz+Hc9z
oa7RpT9iTnsv0BcnEkpABUn35h4cmQs=
=9UEW
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.