My Linksys RE6500 "range extender" (not actually used as an extender, but as an external WiFi radio for a group of older devices that have only Ethernet) is able to associate with my router running OpenWrt 19.07.8, but then cannot get an IP address for itself. It refuses to forward packets on behalf of anything else if it doesn't have its own IP address, so this is a showstopper.
Running tcpdump on the router I see an endless loop of DHCP discover and offer packets being exchanged:
19:46:23.372263 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 576)
0.0.0.0.68 > 255.255.255.255.67: [no cksum] BOOTP/DHCP, Request from 14:91:82:19:18:75 (oui Unknown), length 548, xid 0x5e71c955, Flags [Broadcast] (0x8000)
Client-Ethernet-Address 14:91:82:19:18:75 (oui Unknown)
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: Discover
Client-ID Option 61, length 7: ether 14:91:82:19:18:75
Hostname Option 12, length 10: "RE6500-875"
Vendor-Class Option 60, length 12: "udhcp 1.12.1"
MSZ Option 57, length 2: 576
Parameter-Request Option 55, length 10:
Subnet-Mask, Default-Gateway, Domain-Name-Server, Hostname
Domain-Name, BR, Static-Route, NTP
Classless-Static-Route, Classless-Static-Route-Microsoft
END Option 255, length 0
PAD Option 0, length 0, occurs 253
19:46:23.372568 IP (tos 0xc0, ttl 64, id 58970, offset 0, flags [none], proto UDP (17), length 328)
openwrt.67 > 255.255.255.255.68: [bad udp cksum 0x0b46 -> 0xc463!] BOOTP/DHCP, Reply, length 300, xid 0x5e71c955, Flags [Broadcast] (0x8000)
Your-IP 10.0.0.239
Server-IP openwrt
Client-Ethernet-Address 14:91:82:19:18:75 (oui Unknown)
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: Offer
Server-ID Option 54, length 4: openwrt
Lease-Time Option 51, length 4: 43200
RN Option 58, length 4: 21600
RB Option 59, length 4: 37800
Subnet-Mask Option 1, length 4: 255.255.255.0
BR Option 28, length 4: 10.0.0.255
MTU Option 26, length 2: 1500
Default-Gateway Option 3, length 4: openwrt
Domain-Name-Server Option 6, length 4: openwrt
END Option 255, length 0
PAD Option 0, length 0, occurs 4
19:46:26.404130 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 576)
0.0.0.0.68 > 255.255.255.255.67: [no cksum] BOOTP/DHCP, Request from 14:91:82:19:18:75 (oui Unknown), length 548, xid 0x5e71c955, Flags [Broadcast] (0x8000)
Client-Ethernet-Address 14:91:82:19:18:75 (oui Unknown)
Vendor-rfc1048 Extensions
Magic Cookie 0x63825363
DHCP-Message Option 53, length 1: Discover
...
(I reconfigured OpenWrt to use 10.x.x.x instead of 192.168.x.x for the internal LAN, for unrelated reasons.)
Unfortunately the troubleshooting capabilities of the RE6500 firmware are essentially nil. I can't do a packet dump from its point of view, and this is all of the logs it will give me:
Dec 31 16:00:36 syslogd started: BusyBox v1.12.1
Dec 31 16:00:36 syslog: Firmware Version: 1.0.012_build_001
Dec 31 16:00:36 syslog: S/N: 14S10P0A519033
Dec 31 16:00:36 syslog: SKU Code: FFP
Dec 31 16:00:36 syslog: 2.4GHz Extended Network: Disable
Dec 31 16:00:36 syslog: 2.4GHz CH: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
Dec 31 16:00:36 syslog: 5GHz Extended Network: Disable
Dec 31 16:00:36 syslog: 5GHz CH: 36, 40, 44, 48,149, 153, 157, 161, 165
(yes, busybox 1.12 is heinously out of date; this is nonetheless the newest available vendor firmware. I'd prefer not to mess with non-vendor firmware on this small single-function device if I can avoid it.)
I'm using odhcp for DHCP on the router. Here's a config dump:
root@OpenWrt:~# uci show dhcp
dhcp.lan=dhcp
dhcp.lan.interface='lan'
dhcp.lan.start='100'
dhcp.lan.limit='150'
dhcp.lan.leasetime='12h'
dhcp.lan.dhcpv4='server'
dhcp.lan.dns='10.0.0.1'
dhcp.wan=dhcp
dhcp.wan.interface='wan'
dhcp.wan.ignore='1'
dhcp.odhcpd=odhcpd
dhcp.odhcpd.leasefile='/tmp/hosts/odhcpd'
dhcp.odhcpd.loglevel='4'
dhcp.odhcpd.maindhcp='1'
dhcp.odhcpd.leasetrigger='/usr/lib/unbound/odhcpd.sh'
Any ideas?