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
Incorrect addresses returned with interaction of static /etc/hosts with DNS64 #11770
Comments
The version you are running (4.5.x) does not handle v6 addresses in For 4.5.x, if you make an auth-zone with the mapping you need, things should work. |
Yes, sorry, I forgot to mention that I'm currently testing PDNS Recursor 4.8.0 ALPHA (unreleased) in VyOS 1.3.2 (unreleased) and that is where I noticed this problem. If this problem could be resolved then I would have a complete DNS IPv6-only working system with just VyOS router (which uses PDNS Recursor) and no other software. |
Ah, in that case I think you are hitting upon a limitation in the current implementation, see #11690 |
OK, indeed, as the log shows, the v6 entry is skipped because there is already an entry for For a workaround, create a zone file
And use in
Replacing the automatic Then (I'm running my test recursor on port 5301):
|
Should be fixed by #12203 |
When using both the options:
I believe there is a missing test to see if the IPv6 address already exists for that host name and don't do the DNS64 processing to synthesize an IPv6 address if that host has an IPv6 address already configured in /etc/hosts.
Short description
It is returning the DNS64 synthesized address instead of the actual configured IPv6 address in the /etc/host file, even though the IPv6 address is configured in the /etc/hosts file.
DNS64 synthesized address should ONLY be generated if there is NOT a pre-configured IPv6 address for that host name in the /etc/hosts file.
Since the /etc/hosts was just recently fixed to add capability for IPv6 lookups in PDNS 4.8 (alpha) then this interaction may have been inadvertently overlooked.
Environment
Steps to reproduce
PDNS configuration file /run/powerdns/recursor.conf:
Then when the /etc/hosts file has
Look up 'myhost' with:
Expected behaviour
Actual behaviour
Other information
I just discovered that PDNS recursor just recently had code added to "export-etc-hosts" option to handle IPv6.
My theory is that the interaction between that and 'dns64-prefix' was overlooked.
The text was updated successfully, but these errors were encountered: