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'
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
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
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?