I've got a particular use-case and possible bug I've found, maybe?
Here's the scenario:
I have a device that is very old - So old it doesn't even use TCP/IP; it uses Ethernet II Broadcast frames. I am using ZeroTier to connect to another like device at another location over the internet, using their Ethernet Bridging function. Hence, I bridge the ZeroTier and eth0.1 interfaces together and plug my device into the switch ports on my router, which is a Netgear WNDR4300, running OpenWrt 23.05.2. Everything is fine until I commit the config change to bridge the ZeroTier interface with eth0.1. After that, every 5-30 seconds I get kicked out of LuCI with a message saying my session has expired. Load on the router according to LuCI shows around 0.35-0.55 - Perhaps a bit high but nothing too crazy I'd feel like. Additionally, another symptom is that pinging the router's local IP via a Gigabit Ethernet connection on the switch side gets me about 20-40 packets with sub millisecond latency as one would expect, but then randomly I get anywhere from 50-1000ms, before going back to normal. These older devices are only 10Mbit Half Duplex, if that is of any relevance. I am happy to share my config backup to see if anyone can replicate. So far I have tried:
Different locations for upstream connections to internet (WiFi, two separate physical locations with different internet providers)
Different devices of the same model (both experience the same behavior when using the same config)
Different Ethernet cabling to connect to the endpoint devices
Different endpoint devices
Different router power bricks for each of the routers
Based on the fact that I can replicate this on multiple devices I am guessing it could be a bug? Or I am doing something terrible that OpenWrt or the device model I have selected just simply cannot cope; if so I would love suggestions for very cheap (~20-40USD range) devices that could handle this usage.
Any suggestions on what to try are welcome - and as mentioned I am happy to share my config here.
Half duplex induce, a lot of, collisions (even more when a protocol is not set up to deal with them) and while 1-10MBs networks expected them and just dealt with them (by establishing a take a turn approach) modern networks may not play nice with collisions/half duplex.
Packets that are resent need to be buffered and put back in order.
I can imagine this could get packets so far out of the correct time/order something could believe more time has passed than actually does. Or just , flat out, confuse modern networks.
The VLAN config is what came with the default install of OpenWrt - I did not change anything. I can certainly try to remove it and bridge directly to the switch - as well as try to set the ports to run at half duplex where the endpoint devices are connected. If you have any other thoughts of things to try I'm all ears.
LuCI should not care at all about your underlying network setup. The behavior sounds more like Browser side confusion to me. Maybe you do have two OpenWrt installations with the same IP or DNS name in your network and your browser is flapping between those? When you present LuCI with an invalid authentication cookie (e.g. one which was created by another LuCI instance on another router), you will see that "session expired" message.