Project

General

Profile

Actions

Feature #15808

closed

PREF64 support in Router Advertisements

Added by Bart Schapendonk 6 months ago. Updated 15 days ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
IPv6 Router Advertisements (radvd/rtsold)
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
Plus Target Version:
25.03
Release Notes:
Default

Description

Please implement RFC8781 Discovering PREF64 in Router Advertisements (IPv6-Mostly Networks) to support IPv6-Mostly Networks

- This is implemented in radvd v2.20_rc1 https://github.com/radvd-project/radvd/blob/master/CHANGES
- radvd needs to be upgraded and a option to configure this in the UI

https://datatracker.ietf.org/doc/html/rfc8781
https://www.ietf.org/archive/id/draft-link-v6ops-6mops-01.html

In a nutshell, an IPv6-mostly network is very much similar to a dual-stack one with two additional key elements:

  • The network provides NAT64 ([RFC6146] ) functionality ([RFC6146]), enabling IPv6-only clients to communicate with IPv4-only destinations.
  • The DHCPv4 infrastructure processing DHCPv4 Option 108 as per [RFC8925].
Upon connecting to an IPv6-mostly network segment, an endpoint configures its IP stack based on its capabilities:
  • IPv4-Only Endpoint: Acquires an IPv4 address through DHCPv4.
  • Dual-Stack Endpoint (Not IPv6-Only Capable): Configures IPv6 addresses via Stateless Address Autoconfiguration (SLAAC) and, optionally, DHCPv6. Additionally, it obtains an IPv4 address via DHCPv4 or by other means.
  • IPv6-only capable endpoint configures its IPv6 addresses and, while performing DHCPv4, includes option 108 ([RFC8925] ) into the Parameter Request List. The DHCP server returns the option and, as per [RFC8925] , the endpoint forgoes requesting an IPv4 address, remaining in IPv6-only mode.

An IPv6-mostly network segment can support a mix of IPv4-only, dual-stack, and IPv6-only devices. IPv6-only endpoints utilize the network-provided NAT64 along with DNS64 services to reach IPv4-only destinations.

NAT64 can be done externally, but PREF64 and DHCPv4 option 108 has to be in pfSense.

Actions #1

Updated by Bart Schapendonk 3 months ago

radvd 2.20 has been released with PREF64 support https://github.com/radvd-project/radvd/releases

2024/12/31  Release v2.20
    build: annotated/signed tags need a tweak to verify correctly
    build: need awk for newer autoconf
    build: verify tag earlier
    build: drop sha1, insecure
    build: use BSD-style checksum tags
    build: make sign & verify tighter
    build: cleanup old tarballs first
    docs: document formal release process
    ci: Updated FreeBSD workflow to fix the boot loop issue.
    ci: Removed Ubuntu 18.04 build.
    docs: Expand on RELEASE-PROCESS.md
    ci: Updated the checkout action version.
    fix: Prevent null de-reference when using poll in main_loop
    ci: use improved buildroot images.
    fix(netlink): cleanup interfaces upon removal
    fix: Add the socket option IPV6_MULTICAST_LOOP to prevent the interface from autoconfiguring using RA messages sent by itself.
    ci: Added Ubuntu 24.04.
    ci: Also use ubuntu-latest for the FreeBSD build
    ci: Use latest v1 action in all cases
    feat: implement setup_allrouters_membership() et al for FreeBSD #145
    chore: remove unused 'total_seen_options' variable
    feat: Change the Prefix field of the Route Information Option to be variable-length.
    test: add more RDNSS testing for PR#193
    feat: Support more addresses in RDNSS section
    feat: improve warning about long RA options
    fix: do not die on long DNSSL option
    test: support older libcheck for ubuntu20.04
    chore: document more testcases
    chore: make RDNSS/DNSSL documentation and logic consistent
    doc: update AUTHORS in manpage
    doc: fix truncated sentence about VRRP
    feat: handle long options better
    fix: ensure send_ra_forall racount only increments for non-unicast
    ci: radvd-autogen updates for ubuntu20.04
    build: missing files from packages

2023/11/16  Release v2.20_rc1
        UnrestrictedUnicast option (respond to RS with configured clients)
        Ignore clients w/ ! prefix
        Build improvement, inc. containers for reproducible packaging
        Captive-Portal API (RFC8910)
        Default lifetime changes for RDNSS & DNSSL (RFC8106)
        Prefix lifetime based on kernel lifetimes
        Netlink fixes for simultaneous POLLERR & POLLIN
        pwname fixes for root (Fixes #165)
        Secure ND timestamp support for radvdump (RFC3971)
        RemoveAdvOnExit for zero lifetime adv on exit
        NAT64/pref64 support (RFC6052, RFC8781)
        Case-insensitive config options
        AutoIgnorePrefix
        Fix net.ipv6.conf.all.forwarding cease_adv bug
Actions #2

Updated by Marcos M 3 months ago

  • Subject changed from RFC8781 Discovering PREF64 in Router Advertisements (IPv6-Mostly Networks) to PREF64 support in Router Advertisements
  • Status changed from New to Waiting on Merge
  • Assignee set to Marcos M
Actions #3

Updated by Marcos M 3 months ago

  • Status changed from Waiting on Merge to Feedback
  • % Done changed from 0 to 100
Actions #4

Updated by Marcos M 3 months ago

  • Target version set to 2.8.0
  • Plus Target Version set to 25.03
Actions #5

Updated by Marcos M 15 days ago

  • Status changed from Feedback to Resolved
Actions

Also available in: Atom PDF