VLAN filtering broken in kernel 5.15.x (hbl)
In my setup, Mox acts both as a router for some vlans as well as a switch for others. I put all ports including eth0 into one bridge and use vlan filtering.
config device
option name 'br-lan'
option type 'bridge'
option bridge_empty '1'
option force_link '1'
list ports 'lan1'
list ports 'lan2'
list ports 'lan3'
list ports 'lan4'
list ports 'eth0'
config bridge-vlan
option device 'br-lan'
option vlan '22'
list ports 'lan3'
list ports 'lan4'
config bridge-vlan
option device 'br-lan'
option vlan '60'
list ports 'eth0:t'
list ports 'lan1'
config bridge-vlan
option device 'br-lan'
option vlan '62'
list ports 'lan2'
config bridge-vlan
option device 'br-lan'
option vlan '20'
list ports 'eth0'
config bridge-vlan
option device 'br-lan'
option vlan '21'
list ports 'eth0:t'
config interface 'wan'
option device 'br-lan.20'
…
config interface 'lan'
option device 'br-lan.22'
…
# bridge vlan show
port vlan-id
eth0 20 PVID Egress Untagged
21
60
lan1 60 PVID Egress Untagged
lan2 62 PVID Egress Untagged
lan3 22 PVID Egress Untagged
lan4 22 PVID Egress Untagged
br-lan 20
21
22
60
62
wlan0 22 PVID Egress Untagged
wlan0-1 62 PVID Egress Untagged
# uname -r
5.4.203
After upgrade to kernel 5.15.50 in HBL, I am having troubles with VLAN 60, that just traverses tagged on eth0
and untagged on lan1
port. The ingress traffic on lan1
gets tagged and delivered to eth0
but in egress direction, the tag is not stripped when leaving lan1
interface despite bridge vlan show
showing Egress Untagged
. There are no problems with other VLANs which don't traverse between ethernet ports. Alo if I use different LAN port in place of eth0 for uplink, problem is gone.