DHCP Server is not working after Upgrade to 5.1.3

Hello everybody,
After upgrading from 3.0 to 5.0 and to 5.1.3, my DHCP server seems to not working on the lan.
Is there something to do to solve this ?

The DHCP V6 is working on the LAN but not the DHCP V4 …
Is there some rules to add on firewall V5.x ?

I experienced “the same” during some of the latest minor updates, though the real cause in your case might still be unrelated to mine: https://gitlab.nic.cz/turris/turris-build/-/issues/197

Thanks vcnat, I solved this by using the force option in dhcp option and create many statics leases … that seems to work now.

In my experience, 5.1.3 DHCPv4 randomly breaks after some time. Haven’t been able to get into logs, since I got to force power off router already two times.

This is not great state for router using stable branch software and running in production.

1 Like

@okias Thank you for your message!

Your issue could be similar to which one was reported to us, but without providing any logs, it is hard to know what is happening, and also, we are not able to reproduce it so far! Our routers in production do not have any issues, which you describe, which makes it a lot complicated.

Currently I see only

Nov 17 10:49:13 turris /dhcp_host_domain_ng.py: Add_lease, hostname check failed

but it works. I’ll keep my ssh when it will start failing.

Version 5.1.4 seems to be working just fine, can anyone reproduce?

just something for you to check. i just got a new Turris (5.1.4) and enabled the Bcp38 module during setup.

I had an issue that none of my dhcp clients on my LAN were getting IP renewals. I would have to disable wifi on a client, then renew the connection.
I eventualy just switched over to using static assignments.

It turns out that by default, the bcp38 module is on eth1 - the LAN.
I fixed this by simply moving bcp38 it over to the wan (for me, eth2)

since then, my dhcp renewals seem to be working fine.
So i suspect (I did not prove it out) that bcp, which blocks the restricted IP range for internal networks (and my LAN ip range is 192.168.6.* ) was blocking the dhcp renewal traffic.

Just something for you to check

Luci / network / firewall -> bcp38 tab is where the config is btw.

Preceding log:

Jan 14 17:06:23 turris kernel: [420285.053512] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1224
Jan 14 17:06:23 turris kernel: [420285.062730] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=128
Jan 14 17:06:23 turris kernel: [420285.071415] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=128
Jan 14 17:06:23 turris kernel: [420285.080209] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=560
Jan 14 17:06:23 turris kernel: [420285.088849] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=664
Jan 14 17:06:23 turris kernel: [420285.097587] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=128
Jan 14 17:06:23 turris kernel: [420285.106333] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=304
Jan 14 17:06:23 turris kernel: [420285.114891] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=920
Jan 14 17:06:23 turris kernel: [420285.123619] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1176
Jan 14 17:06:23 turris kernel: [420285.132361] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=256
Jan 14 17:06:23 turris kernel: [420285.141300] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1072
Jan 14 17:06:23 turris kernel: [420285.149920] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=536
Jan 14 17:06:23 turris kernel: [420285.159111] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=664
Jan 14 17:06:23 turris kernel: [420285.167513] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=384
Jan 14 17:06:23 turris kernel: [420285.176431] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=304
Jan 14 17:06:23 turris kernel: [420285.184901] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1176
Jan 14 17:06:23 turris kernel: [420285.193891] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=664
Jan 14 17:06:23 turris kernel: [420285.205713] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=104
Jan 14 17:06:23 turris kernel: [420285.214349] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=456
Jan 14 17:06:23 turris kernel: [420285.223273] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=640
Jan 14 17:06:23 turris kernel: [420285.231989] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=256
Jan 14 17:06:23 turris kernel: [420285.240793] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=200
Jan 14 17:06:23 turris kernel: [420285.249317] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1152
Jan 14 17:06:23 turris kernel: [420285.258386] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=768
Jan 14 17:06:23 turris kernel: [420285.267107] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=480
Jan 14 17:06:23 turris kernel: [420285.275719] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=256
Jan 14 17:06:23 turris kernel: [420285.284469] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=616
Jan 14 17:06:23 turris kernel: [420285.293088] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=480
Jan 14 17:06:23 turris kernel: [420285.302133] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=560
Jan 14 17:06:23 turris kernel: [420285.310927] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=792
Jan 14 16:07:57 turris updater-supervisor: Running pkgupdate
Jan 14 16:07:58 turris updater[26799]: repository.lua.lua:50 (Globals): Target Turris OS: 5.1.5
Jan 14 16:08:12 turris updater-supervisor: pkgupdate reported no errors
Jan 14 16:10:01 turris crond[26947]: (root) CMD (/usr/bin/notifier)
Jan 14 16:10:01 turris crond[26946]: (root) CMDOUT (Working on message: 1610570344-13933)
Jan 14 16:10:01 turris crond[26946]: (root) CMDOUT (Working on message: 1610597771-13697)
Jan 14 16:10:01 turris crond[26946]: (root) CMDOUT (Working on message: 1610597785-14389)
Jan 14 16:10:01 turris crond[26946]: (root) CMDOUT (Working on message: 1610597788-14528)
Jan 14 16:10:01 turris crond[26946]: (root) CMDOUT (There is no message to send.)
Jan 14 17:10:12 turris kernel: [420514.587324] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=48
Jan 14 17:10:12 turris kernel: [420514.596322] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=512
Jan 14 16:12:01 turris crond[27089]: (root) CMD (/usr/sbin/logrotate -s /tmp/logrotate.state /etc/logrotate.conf)
Jan 14 17:14:07 turris kernel: [420749.018790] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=48
Jan 14 17:14:07 turris kernel: [420749.027818] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=896
Jan 14 17:14:07 turris kernel: [420749.036378] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1048
Jan 14 17:14:07 turris kernel: [420749.045276] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=584
Jan 14 16:15:01 turris crond[27261]: (root) CMD (/usr/bin/notifier)
Jan 14 16:15:01 turris crond[27260]: (root) CMDOUT (Working on message: 1610570344-13933)
Jan 14 16:15:01 turris crond[27260]: (root) CMDOUT (Working on message: 1610597771-13697)
Jan 14 16:15:01 turris crond[27260]: (root) CMDOUT (Working on message: 1610597785-14389)
Jan 14 16:15:01 turris crond[27260]: (root) CMDOUT (Working on message: 1610597788-14528)
Jan 14 16:15:01 turris crond[27260]: (root) CMDOUT (There is no message to send.)
Jan 14 17:15:42 turris kernel: [420844.172925] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=48
Jan 14 17:15:42 turris kernel: [420844.182042] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=896
Jan 14 17:15:42 turris kernel: [420844.190538] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1176
Jan 14 17:15:42 turris kernel: [420844.199413] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=328
Jan 14 17:15:42 turris kernel: [420844.208229] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=640
Jan 14 17:15:42 turris kernel: [420844.216924] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=512
Jan 14 17:15:42 turris kernel: [420844.225944] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=712
Jan 14 17:15:42 turris kernel: [420844.234640] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=128
Jan 14 17:15:42 turris kernel: [420844.243102] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=512
Jan 14 17:15:42 turris kernel: [420844.251849] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=584
Jan 14 17:15:42 turris kernel: [420844.260672] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=384
Jan 14 17:15:42 turris kernel: [420844.269488] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=128
Jan 14 17:15:42 turris kernel: [420844.278423] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1096
Jan 14 17:19:57 turris kernel: [421099.422911] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=1224
Jan 14 17:19:57 turris kernel: [421099.432123] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=128
Jan 14 17:19:57 turris kernel: [421099.441243] mvneta d0030000.ethernet eth0: bad rx status 0e830000 (overrun error), size=256 

…

Jan 14 18:03:42 turris /dhcp_host_domain_ng.py: Add_lease, hostname check failed
Jan 14 18:03:42 turris /dhcp_host_domain_ng.py: DHCP add new hostname [phone-f88222222,10.x.x.106]
Jan 14 18:03:42 turris /dhcp_host_domain_ng.py: Refresh kresd leases
Jan 14 18:03:43 turris /dhcp_host_domain_ng.py: Add_lease, hostname check failed
Jan 14 18:03:43 turris /dhcp_host_domain_ng.py: DHCP update hostname [phone-f88222222,10.x.x.106]
Jan 14 18:03:43 turris /dhcp_host_domain_ng.py: Refresh kresd leases
Jan 14 19:04:48 turris kernel: [427389.430517] mv88e6085 d0032004.mdio-mii:02 lan3: Link is Up - 1Gbps/Full - flow control rx/tx
Jan 14 18:04:48 turris netifd: Network device 'lan3' link is up
Jan 14 18:04:48 turris netifd: Interface 'Segment_LAN_3' has link connectivity 
Jan 14 18:05:02 turris crond[1701]: (root) CMD (/usr/bin/notifier)
Jan 14 18:05:02 turris crond[1700]: (root) CMDOUT (Working on message: 1610570344-13933)
Jan 14 18:05:02 turris crond[1700]: (root) CMDOUT (Working on message: 1610597771-13697)
Jan 14 18:05:02 turris crond[1700]: (root) CMDOUT (Working on message: 1610597785-14389)
Jan 14 18:05:02 turris crond[1700]: (root) CMDOUT (Working on message: 1610597788-14528)
Jan 14 18:05:02 turris crond[1700]: (root) CMDOUT (There is no message to send.)
Jan 14 19:07:26 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:07:35 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:07:47 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:07:56 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:08:04 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:08:13 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:08:19 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:08:27 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:08:34 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:08:47 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:09:00 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:09:05 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:09:11 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:09:22 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:09:45 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3
Jan 14 19:09:52 turris dnsmasq-dhcp[12522]: no address range available for DHCP request via lan3

Phone worked (different subnet) but LAN 3 segment impacted by fail. LAN has regulary 150 IP’s available and approx. 2 devices inside.

EDIT: Also some services seems to be logging with different timezone.

I have no idea why, but I just had to use the option force 1 fix in dhcp settings in version 6.5.2. For some reason, the list of dhcp leases was empty, dnsmasq complained that dnsmasq: found already running DHCP-server on interface 'br-lan' refusing to start, use 'option force 1' to override and no address range available for DHCP request via br-lan.

After using the force option, it seems to be fixed, but I have no clue what happened in the first place.