VLAN DHCP suddenly broken

I have two VLANs on my home router so that I can have a separate guest WiFi AP isolated from the rest of my LAN. This has been working fine for weeks, but today devices on the guest VLAN are no longer able to reach anything. It looks as if the DHCP clients are getting the wrong gateway IP address. I am seeing on one android device that the gateway for this WiFi AP is 10.0.0.69 when it should be 10.0.0.1. How would I go about fixing this?

Edit: I have also noticed that even though devices can connect to the AP and get an IP address, they do not show up in the router's leases file.

/etc/config/network:

config interface 'loopback'
	option ifname 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config globals 'globals'
	option ula_prefix 'fd0d:5dab:48db::/48'

config interface 'lan'
	option type 'bridge'
	option ifname 'eth1.1'
	option proto 'static'
	option ipaddr '192.168.1.1'
	option netmask '255.255.255.0'

config interface 'wan'
	option ifname 'eth0.2'
	option proto 'dhcp'

config switch
	option name 'switch0'
	option reset '1'
	option enable_vlan '1'

config switch_vlan
	option device 'switch0'
	option vlan '1'
	option vid '1'
	option ports '0t 2 3 4'

config switch_vlan
	option device 'switch0'
	option vlan '2'
	option ports '1 6t'
	option vid '2'

config switch_vlan
	option device 'switch0'
	option vlan '3'
	option vid '3'
	option ports '0t 5'

config interface 'dirty_lan'
	option type 'bridge'
	option ifname 'eth1.3'
	option proto 'static'
	option ipaddr '10.0.0.1'
	option netmask '255.255.255.0'
  option proto 'static'

/etc/config/dhcp:

config dnsmasq
	option domainneeded '1'
	option boguspriv '1'
	option filterwin2k '0'
	option localise_queries '1'
	option rebind_protection '1'
	option rebind_localhost '1'
	option local '/lan/'
	option domain 'lan'
	option expandhosts '1'
	option nonegcache '0'
	option authoritative '1'
	option readethers '1'
	option leasefile '/tmp/dhcp.leases'
	option resolvfile '/tmp/resolv.conf.auto'
	option nonwildcard '1'
	option localservice '1'
	option serversfile '/tmp/adb_list.overall'

config dhcp 'lan'
	option interface 'lan'
	option start '100'
	option limit '150'
	option leasetime '12h'
	option dhcpv6 'server'
	option ra 'server'

config dhcp 'dirty_lan'
	option interface 'dirty_lan'
	option start '20'
	option limit '50'
	option leasetime '12h'
	option dhcpv6 'server'
	option ra 'server'

config dhcp 'wan'
	option interface 'wan'
	option ignore '1'

config odhcpd 'odhcpd'
	option maindhcp '0'
	option leasefile '/tmp/hosts/odhcpd'
	option leasetrigger '/usr/sbin/odhcpd-update'
	option loglevel '4'

If you are certain that nothing was changed in the router, I'd it possible that you connected another device that's working as a DHCP server?

2 Likes

Just checked with everyone in the house, and no one has connected any new devices recently, or started messing with a DHCP server on any existing devices, so definitely not that.

No, you were right. It seems that an ethernet-over-mains box that I've had plugged in for ages suddenly started acting up and running its own DHCP server.