Discussion:
[Dnsmasq-discuss] localise-queries does not work with ipv6
Jason A. Donenfeld
2017-06-22 13:12:05 UTC
Permalink
Hello Simon,

In dnsmasq.conf:

interface-name=martino,lan # 10.10.10.1, 2a07:f32:8fe8:8a61::1
interface-name=martino,guest # 10.11.0.1, 2a07:f32:8fe8:8a63::1
interface-name=martino,remote # 10.10.11.1, 2a07:f32:8fe8:8a62::1
localise-queries

***@thinkpad ~ $ host martino 10.10.10.1
Using domain server:
Name: 10.10.10.1
Address: 10.10.10.1#53
Aliases:

martino has address 10.10.10.1
martino has IPv6 address 2a07:f32:8fe8:8a61::1
martino has IPv6 address 2a07:f32:8fe8:8a63::1
martino has IPv6 address 2a07:f32:8fe8:8a62::1

You'll notice it correctly filters the v4, but totally fails to do any
v6 filtering. Even worse:

***@thinkpad ~ $ host martino 2a07:f32:8fe8:8a61::1
Using domain server:
Name: 2a07:f32:8fe8:8a61::1
Address: 2a07:f32:8fe8:8a61::1#53
Aliases:

martino has address 10.10.10.1
martino has address 10.10.11.1
martino has address 10.11.0.1
martino has IPv6 address 2a07:f32:8fe8:8a61::1
martino has IPv6 address 2a07:f32:8fe8:8a63::1
martino has IPv6 address 2a07:f32:8fe8:8a62::1

Here it doesn't do any filtering at all.

It seems like localise-queries is broken with v6?

Jason
Simon Kelley
2017-06-28 21:32:40 UTC
Permalink
Post by Jason A. Donenfeld
Hello Simon,
interface-name=martino,lan # 10.10.10.1, 2a07:f32:8fe8:8a61::1
interface-name=martino,guest # 10.11.0.1, 2a07:f32:8fe8:8a63::1
interface-name=martino,remote # 10.10.11.1, 2a07:f32:8fe8:8a62::1
localise-queries
Name: 10.10.10.1
Address: 10.10.10.1#53
martino has address 10.10.10.1
martino has IPv6 address 2a07:f32:8fe8:8a61::1
martino has IPv6 address 2a07:f32:8fe8:8a63::1
martino has IPv6 address 2a07:f32:8fe8:8a62::1
You'll notice it correctly filters the v4, but totally fails to do any
Name: 2a07:f32:8fe8:8a61::1
Address: 2a07:f32:8fe8:8a61::1#53
martino has address 10.10.10.1
martino has address 10.10.11.1
martino has address 10.11.0.1
martino has IPv6 address 2a07:f32:8fe8:8a61::1
martino has IPv6 address 2a07:f32:8fe8:8a63::1
martino has IPv6 address 2a07:f32:8fe8:8a62::1
Here it doesn't do any filtering at all.
It seems like localise-queries is broken with v6?
Jason
localise-queries doesn't really work in the world of IPv4 and IPv6,
which is at least partly why it has never been implemented for IPv6.

In your first example, the query is sent to an IPv4 address, so there's
no way that the IPv6 addresses could be filtered, even if it was
implemented.

In the second example, the query is sent to an IPv6 address, so the IPv4
addresses can't be filtered, even though localise-queries is implemented
for IPv4. If it was implemented for IPv6, then the IPv6 addresses could
be filtered.

Cheers,

Simon.

Loading...