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
NAT64 support #722
NAT64 support #722
Conversation
cb3faae
to
3c93de1
Compare
Sidenote: I'm perfectly happy with anyone rewriting, mangling, whatever else, this code in order to get it merged. I'll try to respond to comments/change requests/… but if it's something you can just fix in a few minutes, please, go ahead! |
This implements NLnetLabs#721. Includes documentation and some very basic tests. Please refer to doc for further detail.
Fixed non-/96 prefixes & added a test using a /48. |
When this feature is used prefer-ip6 shoud be changed to "prefer-ip6: yes" instead of the default. |
@momoka0122y in principle you are right and I was thinking of implicitly enabling the |
That sounds suspiciously like RFC 8305 behavior (Sections 3 and 4). https://www.rfc-editor.org/rfc/rfc8305#section-3 And section 7 would explain how to handle NAT64/DNS64 in that context. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Some minor fixes, formatting and refactoring that I will address on a follow up commit.
Thanks for this!
* nlnet/master: (39 commits) - Fix unbound-dnstap-socket time fraction conversion for printout. - Fix unbound-dnstap-socket printout when no query is present. - Fix to remove unused variables from RPZ clientip data structure. - Fix RPZ removal of client-ip, nsip, nsdname triggers from IXFR. - Fix to print debug log for ancillary data with correct IP address. - Fix NLnetLabs#888: [FR] Use kernel timestamps for dnstap. - Fix warning in windows compile, in set_recvtimestamp. - Fix doxygen in addr_to_nat64 header definition. - Fix to remove unused whitespace from acx_nlnetlabs.m4 and config.h. - Fix NLnetLabs#885: Error: util/configlexer.c: No such file or directory, adds error messages explaining to install flex and bison. Changelog entry for NLnetLabs#722: - Merge NLnetLabs#722 from David 'eqvinox' Lamparter: NAT64 support. - For NLnetLabs#722: minor fixes, formatting, refactoring. - For NLnetLabs#722: Minor fixes, formatting and refactoring. - Fix RPZ IP responses with trigger rpz-drop on cache entries, that they are dropped. Changelog for NLnetLabs#860 Remove msg_del_for_0ttl, call msg_cache_remove directly - Fix for NLnetLabs#882: document variable to stop doxygen warning. - Fix for NLnetLabs#882: small changes, date updated in Copyright for util/timeval_func.c and util/timeval_func.h. Man page entries and example entry. stats: add query max wait time metric stats: add counter for timed out queries config: add sock_queue_timeout configuration ...
This implements #721.
It's not really polished but does work.TODO:clean up code formattingmake NAT64 prefix configurable instead of hardcoding ittestsAll done, maybe? 😆