Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The Well-Known Prefix MUST NOT be used to represent non-global IPv4 addresses, such as RFC1918 #33

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions draft-pauly-v6ops-happy-eyeballs-v3.md
Original file line number Diff line number Diff line change
Expand Up @@ -462,10 +462,6 @@ literals, the Happy Eyeballs engine will need to perform NAT64
address synthesis for them. The solution is similar to "Bump-in-the-
Host" {{!RFC6535}} but is implemented inside the Happy Eyeballs library.

Note that some IPv4 prefixes are scoped to a given host or network, such as
0.0.0.0/8, 127.0.0.0/8, 169.254.0.0/16, and 255.255.255.255/32, and
therefore do not require NAT64 address synthesis.

When an IPv4 address is passed into the library instead of a
hostname, the device queries the network for the NAT64 prefix using
"Discovery of the IPv6 Prefix Used for IPv6 Address Synthesis"
Expand All @@ -480,6 +476,11 @@ queries; connection attempts follow the algorithm described above
Such translation also applies to any IPv4 address hints received
in SVCB RRs.

Note that some IPv4 prefixes are scoped to a given host or network, such as
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure I fully understand the motivation for moving this down, but we can rearrange later editorially.

0.0.0.0/8, 127.0.0.0/8, 169.254.0.0/16, and 255.255.255.255/32, and
therefore do not require NAT64 address synthesis.
Similarly, there are additional restrictions on the use of the well-known NAT64 prefix (see Section 3.1 of {{!RFC6052}}) so clients can skip NAT64 address synthesis in such cases that will be rejected by the NAT64 translator.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Style nit: This probably needs to wrap with the rest of the document (this is superseded by the suggested comment, though, so no worries).

Comment on lines +479 to +482
Copy link
Contributor

@ekinnear ekinnear Nov 7, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know this wording came from a previous comment, but perhaps something that would convey just the necessary bits would be something like:

Suggested change
Note that some IPv4 prefixes are scoped to a given host or network, such as
0.0.0.0/8, 127.0.0.0/8, 169.254.0.0/16, and 255.255.255.255/32, and
therefore do not require NAT64 address synthesis.
Similarly, there are additional restrictions on the use of the well-known NAT64 prefix (see Section 3.1 of {{!RFC6052}}) so clients can skip NAT64 address synthesis in such cases that will be rejected by the NAT64 translator.
Note that some IPv4 prefixes are scoped to a given host or network, such as
0.0.0.0/8, 127.0.0.0/8, 169.254.0.0/16, and 255.255.255.255/32, and there are
additional restrictions on the use of the well-known NAT64 prefix (see
{{Section 3.1 of !RFC6052}}), therefore NAT64 address synthesis might not be required.


## Hostnames with Broken AAAA Records {#broken}

At the time of writing, there exist a small but non-negligible number
Expand Down