0.) I didnt search much if those "bugs" are known already and/or reported. So you can bash me for this. So just let me know if this are considered as bugs and worth to report.
1.) Theme Material is not working since a while. Its always black colored regardless what I choose (Material, Material Dark, Material Light). I don't know if this theme is not supported anymore.
Temporary fix (uci-defaults file):
THEME_DIR="/usr/share/ucode/luci/template/themes"
STATIC_DIR="/www/luci-static"
[ -d "$THEME_DIR/material" ] && [ ! -e "$THEME_DIR/material-light" ] && ln -s material "$THEME_DIR/material-light"
[ -d "$THEME_DIR/material" ] && [ ! -e "$THEME_DIR/material-dark" ] && ln -s material "$THEME_DIR/material-dark"
[ -d "$STATIC_DIR/material" ] && [ ! -e "$STATIC_DIR/material-light" ] && ln -s material "$STATIC_DIR/material-light"
[ -d "$STATIC_DIR/material" ] && [ ! -e "$STATIC_DIR/material-dark" ] && ln -s material "$STATIC_DIR/material-dark"
if [ -d /www/luci-static/material ]; then uci set luci.main.mediaurlbase='/luci-static/material-light' && uci commit; else uci set luci.main.mediaurlbase='/luci-static/bootstrap-light' && uci commit; fi
2.) I have two routers connected to an upstream router via WAN. Firewall is on -> NAT. To reach LuCI via upstream router firewall is opened for port 80 and 443. The WAN IP is added into uhttpd. So I have e. g.:
uhttpd.main.listen_http='10.1.1.1:80' '192.168.178.250:80'
uhttpd.main.listen_https='10.1.1.1:443' '192.168.178.250:443'
But as soon I do so uhttpd becomes "unhappy" on boot:
Mon Jul 27 14:09:22 2026 daemon.err uhttpd[4485]: bind(): Address not available
Mon Jul 27 14:09:22 2026 daemon.err uhttpd[4485]: bind(): Address not available
Mon Jul 27 14:09:24 2026 daemon.err uhttpd[6783]: bind(): Address not available
Mon Jul 27 14:09:24 2026 daemon.err uhttpd[6783]: bind(): Address not available
So sometimes it pick's up the WAN IP sometimes not. On one router it never pick's it up and the router cannot be reached over WAN IP. I have to restart uhttpd manually. So its kind a race condition.
I don't know if this is an supported configuration.
Temporary fix (iface hotplug script):
#!/bin/sh
[ "$ACTION" = "ifup" ] || exit 0
[ "$INTERFACE" = "wan" ] || exit 0
for i in $(seq 1 10); do
ip=$(ubus call network.interface.wan status | jsonfilter -e '@["ipv4-address"][0].address' 2>/dev/null)
[ -n "$ip" ] && break
sleep 1
done
[ -n "$ip" ] && /etc/init.d/uhttpd restart
Not ideal but it works.
3.) I'm running several DNSmasq instances since this was made possible on OpenWrt. Its one of the highlights on OpenWrt (compared to professional router software) which i like very much.
It runs very stable since a while now. For the record here I bind all instances to a seperate network and their corresponding network IP. Three of them are IPv4 only. Main network (default) is running both. I end up always with sth like this:
tcp 0 0 fe80::dd09:ebd4::df25:53 :::* LISTEN 10543/dnsmasq
tcp 0 0 fe80::dd09:ebd4::df25:53 :::* LISTEN 10542/dnsmasq
tcp 0 0 fe80::dd09:ebd4::df25:53 :::* LISTEN 10234/dnsmasq
tcp 0 0 fe80::dd09:ebd4::df25:53 :::* LISTEN 10235/dnsmasq
tcp 0 0 fdff:47dd:a746:b:2d0::fe04:4fa8:53 :::* LISTEN 10235/dnsmasq
Is this expected/normal or is it an issue? Why isn't it enforced for ipv6 like for ipv4?

