Page MenuHomeVyOS Platform

Feature Request: DNS64
Closed, ResolvedPublicFEATURE REQUEST

Description

I thought I had seen a VyOS ticket for this issue before but I couldn't find any currently.

I'm trying to reduce the number of items of network equipment needed to run an IPv6-only network.

I'm currently use PfSense DNS for my DNS needs and VyOS for my routing needs.

Now that VyOS can do DHCPv6 the next step is to try to do all my DNS with VyOS.

I would like to get rid of my PfSense DNS and replace it completely with VyOS.

Currently PfSense has DNS64 prefix capability so I can lookup host names in the DNS and if they don't have an IPv4 address it automatically synthesizes an IPv6 address for that host name.

I noticed that VyOS is using PowerDNS so I read the manual and PowerDNS already has a "dns64-prefix" configuration setting.

I turned it on manually by putting that parameter into the /run/powerdns/recursor.conf and did a "systemctl restart pdns-recursor" command and it worked!

Now when I look up hosts in the DNS that only have IPv4 addresses it also adds the synthesized IPv6 address.

It *appears* that it would be fairly easy to add a setting for that in the VyOS configuration settings.

Please add that setting to the VyOS 1.3.X distribution.

Alternately, is there a way for me to add entries in the /run/powerdns/recursor.conf file without them getting overwritten on the next reboot or re-configure?

Details

Version
1.3
Is it a breaking change?
Perfectly compatible
Issue type
Feature (new functionality)

Event Timeline

Viacheslav changed the subtype of this task from "Bug" to "Feature Request".Jul 4 2022, 5:26 PM
Viacheslav added a project: VyOS 1.4 Sagitta.

@dsummers Could you provide an example of VyOS configuration and an example of what you add?

I've been manually adding TAYGA to VyOS (See T160) for my NAT64 capability.

So in my case I have a ::/64 in my network set up for NAT64.

So in /run/powerdns/recursor.conf I added:

dns64-prefix=<MyPrefix>:64::/96

If you use the IPv6 documentation network it would be something like:

dns64-prefix=2001:db8:64::/96

Hope that helps.

Oh, if you are asking for an example of what the VyOS config setting would look like?

I don't know where the best place to put it is but my first guess would be something like:

set service dns ipv6-prefix

or somewhere in there since it specifically has to do with the DNS service.

Does that help?

Or probably better:

set service dns dns64-prefix 2001:db8:64::/96

as an example.

PR https://github.com/vyos/vyos-1x/pull/1389

set service dns forwarding dns64-prefix 2001:db8:aabc::/96
Viacheslav changed the task status from Open to Needs testing.Jul 6 2022, 10:26 AM

I'd be glad to help test it, but I checked the repos and didn't see where it got merged in?

Is it possible for me to do a build to test it at this point?

OK, I just noticed the merge to "current" branch.

I'll try testing that.

Confirmed working on "current" branch.

The way to test is to use "host ipv4only.arpa" and it should return both IPv4 and synthesized IPv6 addresses.

Please merge to "equueleus" branch.

Thanks!

This comment was removed by dsummers.
c-po triaged this task as Low priority.
c-po moved this task from Open to Finished on the VyOS 1.4 Sagitta board.
c-po edited projects, added VyOS 1.3 Equuleus (1.3.2); removed VyOS 1.3 Equuleus.
c-po edited a custom field.
c-po moved this task from Need Triage to Finished on the VyOS 1.3 Equuleus (1.3.2) board.