[Dnsmasq-discuss] IPv6 Router Advertisements eating a CPU Core + Constantly being Multicasted

Geert Stappers stappers at stappers.nl
Mon Aug 5 07:29:03 BST 2019


On Sun, Aug 04, 2019 at 03:05:45PM -0700, Cooper Lees wrote:
> Hello,
> 
> I'm running dnsmasq 2.80 on a Raspberry PI and when I enable IPv6
> Router Advertisements on even one interface the CPU usage pins a
> core with continually advertising RAs. Logs and tcpdump confirm it's
> something to do with enabling IPv6 RAs / SLAAC on an interface (when
> I remove CPU goes right back down to where I'd imagine this daemon to
> be on a ~10 node home network). I've tried to tune the advertisement
> to every 4 seconds, but it seems to have no effect. I've also tried
> TRUNK/HEAD and it reproduces with my config. I've added the options +
> config used below to help provide a reproducible setup.
> 
> Any suggestions I could try / do or is this indeed a bug with dnsmasq?
> 
> ./src/dnsmasq -x /run/dnsmasq/dnsmasq.pid -u dnsmasq -r /run/dnsmasq/resolv.conf -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new --local-service
 
The    `,.dpkg-dist,.dpkg-old,.dpkg-new` somewhat odd.
Probably a side effect of some wildcard expansion.

Check what is inside those  .dpkg-distl.dpkg-old .dpkg-new files.
Remove them if there is nothing usefull in. And surely remove
them when there is only duplicate configuration.


> ```
> Log from starting with HEAD:
> Aug  4 14:44:30 home dnsmasq[19340]: started, version 2.80-58-g3052ce2 cachesize 150
> Aug  4 14:44:30 home dnsmasq[19340]: compile time options: IPv6 GNU-getopt no-DBus no-UBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC loop-detect inotify dumpfile
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCP, IP range 10.6.9.10 -- 10.6.9.200, lease time 1d
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCP, IP range 192.168.107.10 -- 192.168.107.100, lease time 1h
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCPv4-derived IPv6 names on 2601:647:4d01:fbf::
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: router advertisement on 2601:647:4d01:fbf::
> Aug  4 14:44:30 home dnsmasq[19340]: reading /run/dnsmasq/resolv.conf
> Aug  4 14:44:30 home dnsmasq[19340]: using nameserver 75.75.75.75#53
> Aug  4 14:44:30 home dnsmasq[19340]: using nameserver 75.75.76.76#53
> Aug  4 14:44:30 home dnsmasq[19340]: read /etc/hosts - 6 addresses
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: SLAAC-CONFIRM(eth0.69) 2601:647:4d01:fbf:fea1:83ff:fe5e:d592 amazon-057c5fa7e
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: SLAAC-CONFIRM(eth0.69) 2601:647:4d01:fbf:36d2:70ff:feb1:f402 amazon-9ad27ed72
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: SLAAC-CONFIRM(eth0.69) 2601:647:4d01:fbf:8a71:e5ff:fedb:b5e6 amazon-77495bfb3
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCPDISCOVER(eth0.69) dc:a2:66:59:6d:1f
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCPOFFER(eth0.69) 10.6.9.189 dc:a2:66:59:6d:1f
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCPREQUEST(eth0.69) 10.6.9.189 dc:a2:66:59:6d:1f
> Aug  4 14:44:30 home dnsmasq-dhcp[19340]: DHCPACK(eth0.69) 10.6.9.189 dc:a2:66:59:6d:1f
> ```

Nothing that indicates a 25% CPU load.

> 
> Log Messages (without quiet-ra)
> ```
> Aug  4 14:52:30 home dnsmasq-dhcp[19424]: RTR-ADVERT(eth0.69) 2601:647:4d01:fbf::
> ```

Even less

Previously
> core with continually advertising RAs. Logs and tcpdump confirm it's

Without flooding this mailinglist,
please share somehow that data with us.



> Config:
> ```
> # Never forward plain names (without a dot or domain part)
> bogus-priv
> # Never forward addresses in the non-routed address spaces.
> domain-needed
> 
> # Delays sending DHCPOFFER and proxydhcp replies for at least the specified number of seconds.
> dhcp-mac=set:client_is_a_pi,B8:27:EB:*:*:*
> dhcp-reply-delay=tag:client_is_a_pi,2

Why that delay?
What is the effect of removing it?

 
> # List of all the interfaces for dnsmasq to listen on
> # Sample interface line: interface=eth0
> interface=eth0
> interface=eth0.69
> 
> # v4 - manually set these options
> dhcp-option=option:domain-search,cooperlees.com
> dhcp-option=option:router,10.6.9.2
> dhcp-range=eth0,192.168.107.10,192.168.107.100,1h
> dhcp-range=eth0.69,10.6.9.10,10.6.9.200,24h
> 
> 
> # v6 Sateless RA + Names
> # Sample DHCP range line: dhcp-range=2601:647:4d01:fbf::, ra-stateless, ra-names
> #dhcp-range=2601:647:4d01:fbf::,ra-stateless, ra-names
> dhcp-range=2601:647:4d01:fbf::,ra-names
> #ra-param=eth0.69,4
> quiet-ra
> ```
> 
> Thanks,
> Cooper

Please keep us, this mailinglist, informed.

After all is a unknow bug far worse then ten known bugs.
> Any suggestions I could try / do or is this indeed a bug with dnsmasq?



Groeten
Geert Stappers
-- 
Leven en laten leven



More information about the Dnsmasq-discuss mailing list