DHCP not working on secondary LAN interface (x86 Platform)

Hi everyone - newbie here,
I have been doing a lot of reading and research on setup for OpenWRT but seems I am missing something to get things moving in the right direction. Here is my setup:

Hardware: x86 with 3 NICs
eth0: LAN for home users
eth1: WAN (connected to cable modem)
eth2: LAN2 (for IoT and Guest)

eth0 (lan) and eth2 (lan2) are connected to dedicated switches (I will delve into VLANs after I get the basic configs running).

I have not been successful in getting the DHCP server functional on LAN2. DHCP works fine on LAN (eth0) and I can get an IP in the range of 192.168.1.x / 24.

Any help is appreciated.

Here are the configuration files:

**root@darkStar:/etc/config# cat network**

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

config globals 'globals'
	option ula_prefix 'fd37:3f96:e5ac::/48'

config interface 'lan'
	option device 'eth0'
	option proto 'static'
	option ipaddr '192.168.1.1'
	option netmask '255.255.255.0'
	option ip6assign '60'

config interface 'wan'
	option device 'eth1'
	option proto 'dhcp'
	option hostname '*'

config device
	option name 'eth2'

config interface 'lan2'
	option proto 'static'
	option device 'eth2'
	option ipaddr '192.168.22.1'
	option netmask '255.255.255.0'

**root@darkStar:/etc/config# cat dhcp**

config dnsmasq
	option domainneeded '1'
	option localise_queries '1'
	option rebind_protection '1'
	option rebind_localhost '1'
	option local '/lan/'
	option domain 'alamo'
	option expandhosts '1'
	option cachesize '1000'
	option readethers '1'
	option leasefile '/tmp/dhcp.leases'
	option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
	option localservice '1'
	option ednspacket_max '1232'
	option logqueries '1'
	option sequential_ip '1'
	list interface 'eth0'

config dhcp 'lan'
	option interface 'lan'
	option start '100'
	option limit '150'
	option leasetime '12h'
	option dhcpv4 'server'
	option dhcpv6 'server'
	option ra 'server'
	list ra_flags 'managed-config'
	list ra_flags 'other-config'

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'

config dhcp 'lan2'
	option interface 'lan2'
	option start '200'
	option limit '20'
	option leasetime '15min'
	option dhcpv4 'server'
	option dhcpv6 'server'
	option ra 'server'
	list ra_flags 'managed-config'
	list ra_flags 'other-config'


**root@darkStar:/etc/config# cat firewall**

config defaults
	option input 'REJECT'
	option output 'ACCEPT'
	option forward 'REJECT'
	option synflood_protect '1'

config zone
	option name 'lan'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'ACCEPT'
	list network 'lan'

config zone
	option name 'wan'
	option input 'REJECT'
	option output 'ACCEPT'
	option forward 'REJECT'
	option masq '1'
	option mtu_fix '1'
	list network 'wan'
	list network 'wan6'

config forwarding
	option src 'lan'
	option dest 'wan'

config rule
	option name 'Allow-DHCP-Renew'
	option src 'wan'
	option proto 'udp'
	option dest_port '68'
	option target 'ACCEPT'
	option family 'ipv4'

config rule
	option name 'Allow-Ping'
	option src 'wan'
	option proto 'icmp'
	option icmp_type 'echo-request'
	option family 'ipv4'
	option target 'ACCEPT'

config rule
	option name 'Allow-IGMP'
	option src 'wan'
	option proto 'igmp'
	option family 'ipv4'
	option target 'ACCEPT'

config rule
	option name 'Allow-DHCPv6'
	option src 'wan'
	option proto 'udp'
	option dest_port '546'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-MLD'
	option src 'wan'
	option proto 'icmp'
	option src_ip 'fe80::/10'
	list icmp_type '130/0'
	list icmp_type '131/0'
	list icmp_type '132/0'
	list icmp_type '143/0'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-ICMPv6-Input'
	option src 'wan'
	option proto 'icmp'
	list icmp_type 'echo-request'
	list icmp_type 'echo-reply'
	list icmp_type 'destination-unreachable'
	list icmp_type 'packet-too-big'
	list icmp_type 'time-exceeded'
	list icmp_type 'bad-header'
	list icmp_type 'unknown-header-type'
	list icmp_type 'router-solicitation'
	list icmp_type 'neighbour-solicitation'
	list icmp_type 'router-advertisement'
	list icmp_type 'neighbour-advertisement'
	option limit '1000/sec'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-ICMPv6-Forward'
	option src 'wan'
	option dest '*'
	option proto 'icmp'
	list icmp_type 'echo-request'
	list icmp_type 'echo-reply'
	list icmp_type 'destination-unreachable'
	list icmp_type 'packet-too-big'
	list icmp_type 'time-exceeded'
	list icmp_type 'bad-header'
	list icmp_type 'unknown-header-type'
	option limit '1000/sec'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-IPSec-ESP'
	option src 'wan'
	option dest 'lan'
	option proto 'esp'
	option target 'ACCEPT'
	option enabled '0'

config rule
	option name 'Allow-ISAKMP'
	option src 'wan'
	option dest 'lan'
	option dest_port '500'
	option proto 'udp'
	option target 'ACCEPT'
	option enabled '0'

config zone
	option name 'lan2'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'REJECT'
	list network 'lan2'

config forwarding
	option src 'lan2'
	option dest 'wan'

config rule
	option name 'Allow-DHCP-LAN2'
	list proto 'udp'
	option src 'lan2'
	option target 'ACCEPT'
	option dest_port '67'
	option family 'ipv4'

config rule
	option name 'Allow-DHCP-Renew-LAN2'
	list proto 'udp'
	option dest_port '68'
	option target 'ACCEPT'
	option src 'lan2'

Try removing this line from the dhcp dnsmasq config section:

Thanks ... still a no go :frowning:

Here is the updated config:

root@darkStar:/etc/config# vi dhcp


config dnsmasq
        option domainneeded '1'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'alamo'
        option expandhosts '1'
        option cachesize '1000'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option localservice '1'
        option ednspacket_max '1232'
        option logqueries '1'
        option sequential_ip '1'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

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'

config dhcp 'lan2'
        option interface 'lan2'
        option start '200'
        option limit '20'
        option leasetime '15min'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

Try changing the leastime to 15m instead of 15min

Restart your router after the change to make sure the interface comes up properly.

Still a no-go .... sigh
After the change I restarted the dnsmasq and captured the output (below).

root@darkStar:/etc/config# /etc/init.d/dnsmasq restart
udhcpc: started, v1.36.1
udhcpc: broadcasting discover
udhcpc: no lease, failing
udhcpc: started, v1.36.1
udhcpc: broadcasting discover
udhcpc: no lease, failing

the logs there are normal.

is eth2 on the same physical NIC as eth0 and eth1 (i.e. either the motherboard or a PCI card, etc.)? Or is it physically unique?

I am running OpenWRT on an older MacMini and using 2x Thunderbolt 1Gbps network dongles for eth1 (WAN) and eth2 (Lan2).
eth0 (LAN) is a built-in 1Gbps network interface on the motherboard ...

I was looking at System logs and curious about these entries ...

Wed Jan 3 17:36:26 2024 daemon.warn dnsmasq-dhcp[1]: no address range available for DHCP request via eth2
Wed Jan 3 17:36:26 2024 daemon.warn dnsmasq-dhcp[1]: no address range available for DHCP request via eth2
Wed Jan 3 17:36:27 2024 daemon.warn dnsmasq-dhcp[1]: no address range available for DHCP request via eth2
Wed Jan 3 17:36:27 2024 daemon.warn dnsmasq-dhcp[1]: no address range available for DHCP request via eth2

Try using the typical default values

config dhcp 'lan2'
        option interface 'lan2'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'

Does that work?

I changed the config to match LAN.

config dhcp 'lan2'
option interface 'lan2'
option start '100'
option limit '150'
option leasetime '12h'
option dhcpv4 'server'

Still no go!

let's see the output of:

cat /tmp/etc/dnsmasq.conf.*

Here it is ...

# auto-generated config file from /etc/config/dhcp
conf-file=/etc/dnsmasq.conf
domain-needed
log-queries=extra
localise-queries
read-ethers
enable-ubus=dnsmasq
expand-hosts
bind-dynamic
local-service
dhcp-sequential-ip
cache-size=1000
edns-packet-max=1232
domain=alamo
local=/lan/
addn-hosts=/tmp/hosts
dhcp-leasefile=/tmp/dhcp.leases
resolv-file=/tmp/resolv.conf.d/resolv.conf.auto
stop-dns-rebind
rebind-localhost-ok
dhcp-broadcast=tag:needs-broadcast
conf-dir=/tmp/dnsmasq.d
user=dnsmasq
group=dnsmasq


dhcp-ignore-names=tag:dhcp_bogus_hostname
conf-file=/usr/share/dnsmasq/dhcpbogushostname.conf


bogus-priv
conf-file=/usr/share/dnsmasq/rfc6761.conf
dhcp-range=set:lan,192.168.1.100,192.168.1.249,255.255.255.0,12h

Have you restarted the whole router?

Yes and did it again just now.

how about this...

bring up 2 ssh sessions into the router:
on one of them

logread -f

and the other

/etc/init.d/dnsmasq restart

Then paste the log output.

P.S.

Please use the "Preformatted text </>" button for logs, scripts, configs and general console output.
grafik
Please edit your post accordingly. Thank you! :slight_smile:

First, thank you for your patience and help .. much appreciated !!!
Here is the log output snippet.

root@darkStar:~# logread -f
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: 174 192.168.1.103/49977 query[A] google.com from 192.168.1.103
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: 174 192.168.1.103/49977 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: 175 192.168.1.103/39638 query[A] bing.com from 192.168.1.103
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: 175 192.168.1.103/39638 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: 176 192.168.1.103/58932 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: 176 192.168.1.103/58932 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:16 2024 daemon.info dnsmasq[1]: exiting on receipt of SIGTERM
Wed Jan  3 18:45:19 2024 user.notice dnsmasq: found already running DHCP-server on interface 'eth2' refusing to start, use 'option force 1' to override
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: started, version 2.89 cachesize 1000
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: DNS service limited to local subnets
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: compile time options: IPv6 GNU-getopt no-DBus UBus no-i18n no-IDN DHCP no-DHCPv6 no-Lua TFTP no-conntrack no-ipset no-nftset no-auth no-cryptohash no-DNSSEC no-ID loop-detect inotify dumpfile
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: UBus support enabled: connected to system bus
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq-dhcp[1]: DHCP, IP range 192.168.1.100 -- 192.168.1.249, lease time 12h
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for test
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for local
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: using only locally-known addresses for lan
Wed Jan  3 18:45:19 2024 daemon.warn dnsmasq[1]: no servers found in /tmp/resolv.conf.d/resolv.conf.auto, will retry
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: read /etc/hosts - 12 names
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq[1]: read /tmp/hosts/dhcp.cfg01411c - 4 names
Wed Jan  3 18:45:19 2024 daemon.info dnsmasq-dhcp[1]: read /etc/ethers - 0 addresses
Wed Jan  3 18:45:20 2024 daemon.warn dnsmasq-dhcp[1]: no address range available for DHCP request via eth2
Wed Jan  3 18:45:22 2024 daemon.info dnsmasq[1]: 1 192.168.1.103/44113 query[A] bing.com from 192.168.1.103
Wed Jan  3 18:45:22 2024 daemon.info dnsmasq[1]: 1 192.168.1.103/44113 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:22 2024 daemon.info dnsmasq[1]: 2 192.168.1.103/56016 query[A] amazon.com from 192.168.1.103
Wed Jan  3 18:45:22 2024 daemon.info dnsmasq[1]: 2 192.168.1.103/56016 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:23 2024 daemon.info dnsmasq[1]: 3 192.168.1.103/46638 query[A] n-deventry-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:23 2024 daemon.info dnsmasq[1]: 3 192.168.1.103/46638 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 4 192.168.1.103/58248 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 4 192.168.1.103/58248 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 5 192.168.1.103/55490 query[A] amazon.com from 192.168.1.103
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 5 192.168.1.103/55490 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 6 192.168.1.103/43760 query[A] live.com from 192.168.1.103
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 6 192.168.1.103/43760 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 7 192.168.1.103/46638 query[A] n-deventry-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:25 2024 daemon.info dnsmasq[1]: 7 192.168.1.103/46638 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:28 2024 daemon.info dnsmasq[1]: 8 192.168.1.103/56768 query[A] netflix.com from 192.168.1.103
Wed Jan  3 18:45:28 2024 daemon.info dnsmasq[1]: 8 192.168.1.103/56768 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:28 2024 daemon.info dnsmasq[1]: 9 192.168.1.103/46409 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:28 2024 daemon.info dnsmasq[1]: 9 192.168.1.103/46409 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:28 2024 daemon.info dnsmasq[1]: 10 192.168.1.103/56015 query[A] live.com from 192.168.1.103
Wed Jan  3 18:45:28 2024 daemon.info dnsmasq[1]: 10 192.168.1.103/56015 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:29 2024 daemon.info dnsmasq[1]: 11 192.168.1.103/33506 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:29 2024 daemon.info dnsmasq[1]: 11 192.168.1.103/33506 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 12 192.168.1.103/33544 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 12 192.168.1.103/33544 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 13 192.168.1.103/39065 query[A] live.com from 192.168.1.103
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 13 192.168.1.103/39065 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 14 192.168.1.103/39444 query[A] youtube.com from 192.168.1.103
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 14 192.168.1.103/39444 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 15 192.168.1.103/33506 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:31 2024 daemon.info dnsmasq[1]: 15 192.168.1.103/33506 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:34 2024 daemon.info dnsmasq[1]: 16 192.168.1.103/33583 query[A] facebook.com from 192.168.1.103
Wed Jan  3 18:45:34 2024 daemon.info dnsmasq[1]: 16 192.168.1.103/33583 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:34 2024 daemon.info dnsmasq[1]: 17 192.168.1.103/38189 query[A] linkedin.com from 192.168.1.103
Wed Jan  3 18:45:34 2024 daemon.info dnsmasq[1]: 17 192.168.1.103/38189 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:34 2024 daemon.info dnsmasq[1]: 18 192.168.1.103/49174 query[A] a.root-servers.net from 192.168.1.103
Wed Jan  3 18:45:34 2024 daemon.info dnsmasq[1]: 18 192.168.1.103/49174 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:35 2024 daemon.info dnsmasq[1]: 19 192.168.1.103/57618 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:35 2024 daemon.info dnsmasq[1]: 19 192.168.1.103/57618 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 20 192.168.1.103/35986 query[A] facebook.com from 192.168.1.103
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 20 192.168.1.103/35986 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 21 192.168.1.103/51104 query[A] google.com from 192.168.1.103
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 21 192.168.1.103/51104 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 22 192.168.1.103/33227 query[A] linkedin.com from 192.168.1.103
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 22 192.168.1.103/33227 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 23 192.168.1.103/57618 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:37 2024 daemon.info dnsmasq[1]: 23 192.168.1.103/57618 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:40 2024 daemon.info dnsmasq[1]: 24 192.168.1.103/47604 query[A] live.com from 192.168.1.103
Wed Jan  3 18:45:40 2024 daemon.info dnsmasq[1]: 24 192.168.1.103/47604 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:40 2024 daemon.info dnsmasq[1]: 25 192.168.1.103/59577 query[A] youtube.com from 192.168.1.103
Wed Jan  3 18:45:40 2024 daemon.info dnsmasq[1]: 25 192.168.1.103/59577 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:40 2024 daemon.info dnsmasq[1]: 26 192.168.1.103/46490 query[A] a.root-servers.net from 192.168.1.103
Wed Jan  3 18:45:40 2024 daemon.info dnsmasq[1]: 26 192.168.1.103/46490 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:42 2024 daemon.info dnsmasq[1]: 27 192.168.1.103/49858 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:42 2024 daemon.info dnsmasq[1]: 27 192.168.1.103/49858 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:43 2024 daemon.info dnsmasq[1]: 28 192.168.1.103/56746 query[A] netflix.com from 192.168.1.103
Wed Jan  3 18:45:43 2024 daemon.info dnsmasq[1]: 28 192.168.1.103/56746 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:43 2024 daemon.info dnsmasq[1]: 29 192.168.1.103/41066 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:43 2024 daemon.info dnsmasq[1]: 29 192.168.1.103/41066 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:43 2024 daemon.info dnsmasq[1]: 30 192.168.1.103/57281 query[A] facebook.com from 192.168.1.103
Wed Jan  3 18:45:43 2024 daemon.info dnsmasq[1]: 30 192.168.1.103/57281 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:44 2024 daemon.info dnsmasq[1]: 31 192.168.1.103/49858 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:44 2024 daemon.info dnsmasq[1]: 31 192.168.1.103/49858 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:46 2024 daemon.info dnsmasq[1]: 32 192.168.1.103/40467 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:46 2024 daemon.info dnsmasq[1]: 32 192.168.1.103/40467 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:46 2024 daemon.info dnsmasq[1]: 33 192.168.1.103/41960 query[A] amazon.com from 192.168.1.103
Wed Jan  3 18:45:46 2024 daemon.info dnsmasq[1]: 33 192.168.1.103/41960 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:46 2024 daemon.info dnsmasq[1]: 34 192.168.1.103/33229 query[A] linkedin.com from 192.168.1.103
Wed Jan  3 18:45:46 2024 daemon.info dnsmasq[1]: 34 192.168.1.103/33229 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:49 2024 daemon.info dnsmasq[1]: 35 192.168.1.103/55413 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:49 2024 daemon.info dnsmasq[1]: 35 192.168.1.103/55413 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:49 2024 daemon.info dnsmasq[1]: 36 192.168.1.103/60729 query[A] youtube.com from 192.168.1.103
Wed Jan  3 18:45:49 2024 daemon.info dnsmasq[1]: 36 192.168.1.103/60729 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:49 2024 daemon.info dnsmasq[1]: 37 192.168.1.103/47519 query[A] amazon.com from 192.168.1.103
Wed Jan  3 18:45:49 2024 daemon.info dnsmasq[1]: 37 192.168.1.103/47519 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:50 2024 daemon.warn dnsmasq-dhcp[1]: no address range available for DHCP request via eth2
Wed Jan  3 18:45:51 2024 daemon.info dnsmasq[1]: 38 192.168.1.103/47225 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:51 2024 daemon.info dnsmasq[1]: 38 192.168.1.103/47225 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:52 2024 daemon.info dnsmasq[1]: 39 192.168.1.103/47495 query[A] youtube.com from 192.168.1.103
Wed Jan  3 18:45:52 2024 daemon.info dnsmasq[1]: 39 192.168.1.103/47495 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:52 2024 daemon.info dnsmasq[1]: 40 192.168.1.103/39173 query[A] linkedin.com from 192.168.1.103
Wed Jan  3 18:45:52 2024 daemon.info dnsmasq[1]: 40 192.168.1.103/39173 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:52 2024 daemon.info dnsmasq[1]: 41 192.168.1.103/52916 query[A] a.root-servers.net from 192.168.1.103
Wed Jan  3 18:45:52 2024 daemon.info dnsmasq[1]: 41 192.168.1.103/52916 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:53 2024 daemon.info dnsmasq[1]: 42 192.168.1.103/47225 query[A] n-devs-gw.tplinkcloud.com from 192.168.1.103
Wed Jan  3 18:45:53 2024 daemon.info dnsmasq[1]: 42 192.168.1.103/47225 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:55 2024 daemon.info dnsmasq[1]: 43 192.168.1.103/34384 query[A] reddit.com from 192.168.1.103
Wed Jan  3 18:45:55 2024 daemon.info dnsmasq[1]: 43 192.168.1.103/34384 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:55 2024 daemon.info dnsmasq[1]: 44 192.168.1.103/50892 query[A] live.com from 192.168.1.103
Wed Jan  3 18:45:55 2024 daemon.info dnsmasq[1]: 44 192.168.1.103/50892 config error is REFUSED (EDE: not ready)
Wed Jan  3 18:45:55 2024 daemon.info dnsmasq[1]: 45 192.168.1.103/43156 query[A] google.com from 192.168.1.103
Wed Jan  3 18:45:55 2024 daemon.info dnsmasq[1]: 45 192.168.1.103/43156 config error is REFUSED (EDE: not ready)

I don't know what is going on... it should work.

Can you try replacing the dnsmasq section of your config file with the default:

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.d/resolv.conf.auto'
	option nonwildcard '1'
	option localservice '1'
	option ednspacket_max '1232'

Then restart the dnsmasq service again and see if it works.

Does eth2 still actually exist? Does it have an IP address?
ip link show
ip addr show
logread | grep eth2

I checked the box on lan2 DHCP server to force it to come up and it seems to have done the trick ... what is not clear to me is why is it finding any DHCP server on this lan?

root@darkStar:/etc/config# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 38:c9:86:23:3e:1d brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:23:df:13 brd ff:ff:ff:ff:ff:ff
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:10:fe:4c brd ff:ff:ff:ff:ff:ff
root@darkStar:/etc/config# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 38:c9:86:23:3e:1d brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fd37:3f96:e5ac::1/60 scope global noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 fe80::3ac9:86ff:fe23:3e1d/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:23:df:13 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ae87:a3ff:fe23:df13/64 scope link 
       valid_lft forever preferred_lft forever
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:10:fe:4c brd ff:ff:ff:ff:ff:ff
    inet 192.168.22.1/24 brd 192.168.22.255 scope global eth2
       valid_lft forever preferred_lft forever
    inet6 fe80::ae87:a3ff:fe10:fe4c/64 scope link 
       valid_lft forever preferred_lft forever

Wed Jan  3 19:03:40 2024 daemon.info dnsmasq[1]: exiting on receipt of SIGTERM
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: started, version 2.89 cachesize 150
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: DNS service limited to local subnets
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: compile time options: IPv6 GNU-getopt no-DBus UBus no-i18n no-IDN DHCP no-DHCPv6 no-Lua TFTP no-conntrack no-ipset no-nftset no-auth no-cryptohash no-DNSSEC no-ID loop-detect inotify dumpfile
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: UBus support enabled: connected to system bus
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq-dhcp[1]: DHCP, IP range 192.168.22.100 -- 192.168.22.249, lease time 12h
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq-dhcp[1]: DHCP, IP range 192.168.1.100 -- 192.168.1.249, lease time 12h
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for test
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for local
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: using only locally-known addresses for lan
Wed Jan  3 19:03:44 2024 daemon.warn dnsmasq[1]: no servers found in /tmp/resolv.conf.d/resolv.conf.auto, will retry
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: read /etc/hosts - 12 names
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq[1]: read /tmp/hosts/dhcp.cfg01411c - 6 names
Wed Jan  3 19:03:44 2024 daemon.info dnsmasq-dhcp[1]: read /etc/ethers - 0 addresses
Wed Jan  3 19:03:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:03:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:04:20 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:04:20 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:04:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:04:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:05:20 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:05:20 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:05:34 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 66:16:3a:46:ab:34
Wed Jan  3 19:05:34 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.193 66:16:3a:46:ab:34
Wed Jan  3 19:05:34 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 66:16:3a:46:ab:34
Wed Jan  3 19:05:34 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.193 66:16:3a:46:ab:34
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 1e:76:e9:70:02:0c
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.173 1e:76:e9:70:02:0c
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 66:16:3a:46:ab:34
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.193 66:16:3a:46:ab:34
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(eth2) 192.168.7.242 1e:76:e9:70:02:0c
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPNAK(eth2) 192.168.7.242 1e:76:e9:70:02:0c wrong server-ID
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(eth2) 192.168.7.244 66:16:3a:46:ab:34
Wed Jan  3 19:05:37 2024 daemon.info dnsmasq-dhcp[1]: DHCPNAK(eth2) 192.168.7.244 66:16:3a:46:ab:34 wrong server-ID
Wed Jan  3 19:05:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:05:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:06:15 2024 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(eth2) 192.168.7.16 30:fd:38:fb:13:f3
Wed Jan  3 19:06:15 2024 daemon.info dnsmasq-dhcp[1]: DHCPNAK(eth2) 192.168.7.16 30:fd:38:fb:13:f3 wrong server-ID
Wed Jan  3 19:06:20 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:06:20 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d

root@darkStar:/etc/config# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 38:c9:86:23:3e:1d brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:23:df:13 brd ff:ff:ff:ff:ff:ff
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:10:fe:4c brd ff:ff:ff:ff:ff:ff
root@darkStar:/etc/config# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 38:c9:86:23:3e:1d brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fd37:3f96:e5ac::1/60 scope global noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 fe80::3ac9:86ff:fe23:3e1d/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:23:df:13 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ae87:a3ff:fe23:df13/64 scope link 
       valid_lft forever preferred_lft forever
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether ac:87:a3:10:fe:4c brd ff:ff:ff:ff:ff:ff
    inet 192.168.22.1/24 brd 192.168.22.255 scope global eth2
       valid_lft forever preferred_lft forever
    inet6 fe80::ae87:a3ff:fe10:fe4c/64 scope link 
       valid_lft forever preferred_lft forever

ed Jan  3 19:14:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:15:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:15:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:15:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:15:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:16:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:16:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:16:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:16:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:17:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:17:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:17:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:17:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:18:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:18:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:18:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:18:54 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
Wed Jan  3 19:19:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPDISCOVER(eth2) 30:fd:38:f2:88:3d
Wed Jan  3 19:19:21 2024 daemon.info dnsmasq-dhcp[1]: DHCPOFFER(eth2) 192.168.22.108 30:fd:38:f2:88:3d
root@darkStar:~# 

Are you positive there isn't another device on that subnet that has a DHCP server running? This indicates that clients are requesting a renewal in the 192.168.7.0/24 network and the server is responding with a NAK because it is the wrong server ID.

What is the physical topology of this network segment?