<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;"><div>Dnsmasq gurus-</div><div><br></div><div>I’m running dnsmasq version 2.67 on my Debian “jessie” edge router.  I’m on a Comcast residential cable connection on eth0 with full dual-stack IPv4/IPv6.  When I run radvd, I get router advertisements for my subnet (as assigned by Comcast via dhcp6), and all of my internal *Nix boxes (about 15) all get SLAAC addresses and are able to route IPv6 packets to the world.  So, I know IPv6 works, and I know I can route and do DNS lookups.</div><div><br></div><div>I’d like to replace radvd with DNSMasq, since I use dnsmasq for ipv4 DHCP and DNS queries.  Here is the relevant section of my dnsmasq.conf:</div><div><div>#dhcp-authoritative</div><div>dhcp-leasefile=/tmp/dhcp.leases</div><div>dhcp-range=trusted,192.168.5.2,192.168.5.100,1h</div><div>enable-ra</div><div>dhcp-range=::1,::400,constructor:eth1, slaac,ra-only</div><div>ra-param=eth1,high,5</div></div><div><br></div><div>And here’s what it looks like in the logs when it starts:</div><div><div>Nov 22 13:52:44 dnsmasq[27279]: started, version 2.67 cachesize 150</div><div>Nov 22 13:52:44 dnsmasq[27279]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth</div><div>Nov 22 13:52:44 dnsmasq-dhcp[27279]: DHCP, IP range 192.168.5.2 -- 192.168.5.100, lease time 1h</div><div>Nov 22 13:52:44 dnsmasq-dhcp[27279]: DHCPv6, IP range ::1 -- ::400, lease time 1h, template for eth1</div><div>Nov 22 13:52:44 dnsmasq-dhcp[27279]: router advertisement on eth1</div><div>Nov 22 13:52:44 dnsmasq-dhcp[27279]: DHCPv6, IP range 2601:0:XXXX:XXXX::1 -- 2601:0:XXXX:XXXX::400, lease time 1h, constructed for eth1</div><div>Nov 22 13:52:44 dnsmasq-dhcp[27279]: router advertisement on 2601:0:b580:44c::, constructed for eth1</div><div>Nov 22 13:52:44 dnsmasq-dhcp[27279]: IPv6 router advertisement enabled</div><div>Nov 22 13:52:44 dnsmasq[27279]: using nameserver 8.8.8.8#53</div><div>Nov 22 13:52:44 dnsmasq[27279]: using nameserver 75.75.75.75#53</div><div>Nov 22 13:52:44 dnsmasq[27279]: using local addresses only for domain lan</div><div>Nov 22 13:52:44 dnsmasq[27279]: read /etc/hosts - 86 addresses</div></div><div><br></div><div><div>However, running TCP dump like so:</div></div><div>tcpdump -s0 -n -i eth1 'icmp6 and ((ip6[40+0] == 133) or (ip6[40+0] == 134))’</div><div>I <span style="font-style: italic;">NEVER</span> see router advertisements.  Switching back to radvd, I see this:</div><div><div>13:49:57.622991 IP6 fe80::e2cb:4eff:fe79:e057 > ff02::1: ICMP6, router advertisement, length 48</div><div>13:50:05.582248 IP6 fe80::e2cb:4eff:fe79:e057 > ff02::1: ICMP6, router advertisement, length 48</div></div><div><br></div><div>Those IPv6 addresses are the link-local address of my eth1 card (internal network).  With dnsmasq, I never see an advertisement, my clients don’t get IPv6 addresses, and those that already have them fail to route.  Running radvd, everything just works.</div><div><br></div><div>I’m sure I’m doing something silly/stupid, but I’m unsure what.  I’ll be happy to provide additional information, either on or off list.</div><div><br></div><div>Thank you.</div><div>John Gorkos</div><div><br></div></body></html>