Discussion:
[Dnsmasq-discuss] Segmentation fault with newest dnsmasq 2.76
Andreas Kuropka
2016-05-25 18:27:02 UTC
Permalink
Hi,

I've noticed that dnsmasq gets killed once a VPN client (SoftEther VPN with bridge configuration) tries to aquire an IP.

● dnsmasq.service - A lightweight DHCP and caching DNS server
Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; enabled; vendor preset: disabled)
Active: failed (Result: signal) since Mi 2016-05-25 20:16:02 CEST; 13s ago
Docs: man:dnsmasq(8)
Process: 10868 ExecStart=/usr/bin/dnsmasq -k --enable-dbus --user=dnsmasq --pid-file (code=killed, signal=SEGV)
Process: 10863 ExecStartPre=/usr/bin/dnsmasq --test (code=exited, status=0/SUCCESS)
Main PID: 10868 (code=killed, signal=SEGV)

Mai 25 20:14:41 raspberry dnsmasq-dhcp[10868]: read /etc/ethers - 22 addresses
Mai 25 20:14:41 raspberry systemd[1]: Started A lightweight DHCP and caching DNS server.
Mai 25 20:16:02 raspberry dnsmasq-dhcp[10868]: DHCPDISCOVER(br0) ca:53:c6:b7:2d:59
Mai 25 20:16:02 raspberry dnsmasq-dhcp[10868]: DHCPOFFER(br0) 192.168.188.20 ca:53:c6:b7:2d:59
Mai 25 20:16:02 raspberry systemd[1]: dnsmasq.service: Main process exited, code=killed, status=11/SEGV
Mai 25 20:16:02 raspberry systemd[1]: dnsmasq.service: Unit entered failed state.
Mai 25 20:16:02 raspberry systemd[1]: dnsmasq.service: Failed with result 'signal'.

This did not happen with 2.75 and before:

● dnsmasq.service - A lightweight DHCP and caching DNS server
Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; enabled; vendor preset: disabled)
Active: active (running) since Mi 2016-05-25 20:16:55 CEST; 4min 38s ago
Docs: man:dnsmasq(8)
Process: 11011 ExecStartPre=/usr/bin/dnsmasq --test (code=exited, status=0/SUCCESS)
Main PID: 11018 (dnsmasq)
Tasks: 1 (limit: 512)
CGroup: /system.slice/dnsmasq.service
└瘢雹─11018 /usr/bin/dnsmasq -k --enable-dbus --user=dnsmasq --pid-file

Mai 25 20:16:55 raspberry dnsmasq[11018]: read /etc/hosts - 26 addresses
Mai 25 20:16:55 raspberry dnsmasq-dhcp[11018]: read /etc/ethers - 22 addresses
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPDISCOVER(br0) ca:53:c6:b7:2d:59
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPOFFER(br0) 192.168.188.20 ca:53:c6:b7:2d:59
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPREQUEST(br0) 192.168.188.20 ca:53:c6:b7:2d:59
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPACK(br0) 192.168.188.20 ca:53:c6:b7:2d:59 w987098
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPINFORM(br0) 192.168.188.20 00:8e:18:1b:1f:35:58:f2:42:b4:be:95:a7:32:34:8e:23
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPACK(br0) 192.168.188.20 00:8e:18:1b:1f:35:58:f2:42:b4:be:95:a7:32:34:8e:23 w987098

I'm using RPi3 with Arch Linux arm.

I just want to give you this to your information; if you need further please let me know.

Best Regards,

Andreas
Simon Kelley
2016-05-26 09:12:34 UTC
Permalink
Since this seems to be easily reproducible, it should be fairly easy
to chase down.

Ideally, we need to recomiple dnsmasq with debugging symbols, and the
then run it under gdb to get information about exactly where it's
failing. If you know how to do that, please go ahead, if you're not
sure come back here and I'll walk you through the process.

Posting the contents of /etc/dnsmasq.conf would be useful too.


Cheers,

Simon.
Post by Andreas Kuropka
Hi,
I've noticed that dnsmasq gets killed once a VPN client (SoftEther
VPN with bridge configuration) tries to aquire an IP.
● dnsmasq.service - A lightweight DHCP and caching DNS server
Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; enabled;
vendor preset: disabled) Active: failed (Result: signal) since Mi
10868 ExecStart=/usr/bin/dnsmasq -k --enable-dbus --user=dnsmasq
--pid-file (code=killed, signal=SEGV) Process: 10863
ExecStartPre=/usr/bin/dnsmasq --test (code=exited,
status=0/SUCCESS) Main PID: 10868 (code=killed, signal=SEGV)
Mai 25 20:14:41 raspberry dnsmasq-dhcp[10868]: read /etc/ethers -
22 addresses Mai 25 20:14:41 raspberry systemd[1]: Started A
lightweight DHCP and caching DNS server. Mai 25 20:16:02 raspberry
dnsmasq-dhcp[10868]: DHCPDISCOVER(br0) ca:53:c6:b7:2d:59 Mai 25
20:16:02 raspberry dnsmasq-dhcp[10868]: DHCPOFFER(br0)
192.168.188.20 ca:53:c6:b7:2d:59 Mai 25 20:16:02 raspberry
systemd[1]: dnsmasq.service: Main process exited, code=killed,
dnsmasq.service: Unit entered failed state. Mai 25 20:16:02
raspberry systemd[1]: dnsmasq.service: Failed with result
'signal'.
● dnsmasq.service - A lightweight DHCP and caching DNS server
Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; enabled;
vendor preset: disabled) Active: active (running) since Mi
2016-05-25 20:16:55 CEST; 4min 38s ago Docs: man:dnsmasq(8)
Process: 11011 ExecStartPre=/usr/bin/dnsmasq --test (code=exited,
status=0/SUCCESS) Main PID: 11018 (dnsmasq) Tasks: 1 (limit: 512)
CGroup: /system.slice/dnsmasq.service └瘢雹─11018 /usr/bin/dnsmasq -k
--enable-dbus --user=dnsmasq --pid-file
Mai 25 20:16:55 raspberry dnsmasq[11018]: read /etc/hosts - 26
addresses Mai 25 20:16:55 raspberry dnsmasq-dhcp[11018]: read
/etc/ethers - 22 addresses Mai 25 20:17:05 raspberry
dnsmasq-dhcp[11018]: DHCPDISCOVER(br0) ca:53:c6:b7:2d:59 Mai 25
20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPOFFER(br0)
192.168.188.20 ca:53:c6:b7:2d:59 Mai 25 20:17:05 raspberry
dnsmasq-dhcp[11018]: DHCPREQUEST(br0) 192.168.188.20
DHCPACK(br0) 192.168.188.20 ca:53:c6:b7:2d:59 w987098 Mai 25
20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPINFORM(br0)
192.168.188.20 00:8e:18:1b:1f:35:58:f2:42:b4:be:95:a7:32:34:8e:23
Mai 25 20:17:05 raspberry dnsmasq-dhcp[11018]: DHCPACK(br0)
192.168.188.20 00:8e:18:1b:1f:35:58:f2:42:b4:be:95:a7:32:34:8e:23
w987098
I'm using RPi3 with Arch Linux arm.
I just want to give you this to your information; if you need
further please let me know.
Best Regards,
Andreas
_______________________________________________ Dnsmasq-discuss
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
Loading...