<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>The line "enable-ra" is directing dnsmasq to act as a "router
      advertising daemon". The advertisement sent will include the RDNSS
      default address(es). This is how IPv6 works.</p>
    <p>If the <i>_client_</i> can ignore the RDNSS in the RA packet
      then the DHCPv6 might have a chance of doing what you want. In
      Fedora, using NetworkManager, use the option to do IPv6 "Automatic
      (Address only)", then using dhcp6c, would be something to
      investigate. IIRC Windows can also do "Address only" via
      automatic/SLAAC configuration then use DHCPv6 for all the other
      info. Android still has a ways to go to live happily in the IPv6
      world, as of Android 10 - too many show stopping bugs. (keeps
      dropping and reconnecting to the WiFi). If your Android version
      will allow the granularity, the "Automatic (address only)" option
      may help.<br>
    </p>
    <div class="moz-cite-prefix">On 3/25/21 3:50 AM, Hamish Moffatt
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:d263b175-2558-a2fb-eb6b-b9caec1aa7af@moffatt.email">I'm
      attempting to override the DNS server for a few hosts on both IPv4
      and IPv6. I've tagged the hosts and applied dhcp-option to that
      tag and it's working correctly for IPv4, but I'm not having much
      luck with IPv6.
      <br>
      <br>
      I'll admit right now that I don't fully understand the use of
      DHCPv6 and how DNS servers are discovered, so it might be that
      this is just not possible, at least for all types of clients.
      <br>
      <br>
      My dnsmasq is at ::1, and I want to use the DNS server at ::18 on
      the same prefix. What I have is:
      <br>
      <br>
      dhcp-option=tag:adblock,6,192.168.42.18
      <br>
      dhcp-option=tag:adblock,option6:dns-server,[<MY
      ULA>::18],[<MY GLA>::18]
      <br>
      <br>
      dhcp-range=set:lan,192.168.42.20,192.168.42.239,255.255.255.0,12h
      <br>
      ra-param=br-lan,0,7200
      <br>
dhcp-range=set:lan,::1000,::ffff,constructor:br-lan,slaac,ra-names,12h
      <br>
      dhcp-option=lan,option6:dns-server,[::]
      <br>
      <br>
      enable-ra
      <br>
      quiet-ra
      <br>
      <br>
      <br>
      What I see is that Android just has the <MY GLA>::1 address
      as its DNS server. A Linux client using NetworkManager has <MY
      GLA>::1 as well as the two override servers. Even when I set
      <MY GLA>::18 as the server in the dhcp-option clause for the
      whole network, the devices still learned the <MY GLA>::1
      address.
      <br>
      <br>
      If I remove the dhcp-option clause for the whole network then
      Android shows it's using the link local address for ::1 instead.
      <br>
      <br>
      How is Android always learning of the dnsmasq server itself as the
      DNS server, and can I fix it?
      <br>
      <br>
      <br>
      <br>
      Thanks
      <br>
      <br>
      Hamish
      <br>
      <br>
      <br>
      _______________________________________________
      <br>
      Dnsmasq-discuss mailing list
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:Dnsmasq-discuss@lists.thekelleys.org.uk">Dnsmasq-discuss@lists.thekelleys.org.uk</a>
      <br>
<a class="moz-txt-link-freetext" href="https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss">https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss</a>
      <br>
    </blockquote>
  </body>
</html>