VLANs on ER-X (22.03)

I have an EdgeRouter X running 22.03 and can't get my desired VLAN configuration for my LAN working.
I have 3 LAN-site networks called, LAN, IoT, Guest. LAN is not using tagging, IoT is tagged with 102 and Guest with 108.
This is the port configuration I want:

  • eth0 = trunked connection to my 3rd party switch carrying all 3 VLANs
  • eth1/2 = LAN (untagged)

My base/current DEVICES configuration is as follows:

  • br-lan (bridge device) - bridge ports are eth0/1/2
  • dsa (network device)
  • eth0 (network device)
  • eth1 (network device)
  • eth2 (network device)

My base/current INTERFACES configuration is as follows:

  • LAN - device is br-lan

Whenever I make what I think are the correct configuration changes they get rolled back due to a connectivity issue (I'm connected to eth1 when making the change, since I expect eth0 to not work with a PC post-change due to it being a trunked port).

I've read upon DSA and tried a few options but aren't getting anywhere. Also whilst I can find explanations re. DSA what I do not understand is why I actually have a device called DSA (I haven't seen any mention of this in the documentation). FYI br-lan, dsa & eth0 all have the same MAC address.

Any thoughts appreciated.

Let’s see your config… easiest to debug when looking at the text.

Please copy the output of the following commands and post it here using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have:

cat /etc/config/network

Baseline config

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 packet_steering '1'
        option ula_prefix 'fd52:c579:8a2e::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        option ipv6 '0'
        list ports 'eth0'
        list ports 'eth1'
        list ports 'eth2'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option netmask '255.255.255.0'
        option ip6assign '60'
        option ipaddr '10.1.101.1'

config device
        option name 'dsa'
        option ipv6 '0'

config device
        option name 'eth0'
        option ipv6 '0'

config device
        option name 'eth1'
        option ipv6 '0'

config device
        option name 'eth2'
        option ipv6 '0'

In relation to the configuration I'm trying to apply, I'm not sure how to provide that since I assume it's not actually applied to the 'network' file until it's successful/valid?

This is what I was adding:

Capture1

uci add network bridge-vlan # =cfg0ba1b0
uci set network.@bridge-vlan[-1].device='br-lan'
uci set network.@bridge-vlan[-1].vlan='101'
uci add_list network.@bridge-vlan[-1].ports='eth0:u*'
uci add_list network.@bridge-vlan[-1].ports='eth1:u*'
uci add_list network.@bridge-vlan[-1].ports='eth2:u*'
uci add network bridge-vlan # =cfg0ca1b0
uci set network.@bridge-vlan[-1].device='br-lan'
uci set network.@bridge-vlan[-1].vlan='102'
uci add_list network.@bridge-vlan[-1].ports='eth0:t'
uci add network bridge-vlan # =cfg0da1b0
uci set network.@bridge-vlan[-1].device='br-lan'
uci set network.@bridge-vlan[-1].vlan='108'
uci add_list network.@bridge-vlan[-1].ports='eth0:t'

However I can see that trunking can also be configured like this:

So not entirely clear to me which is the correct configuration.

Lastly do I need to do anything with my DSA device?

Thanks again.

(apologies for the multiple posts but I can only add a single image to each post it seems).

I ran into the same problem while setting up my VLANs on the ER-X, the trick was to unselect the "Enable VLAN Filtering" checkmark before clicking on "Save and Apply" button, then it came back keeping the configuration.
I ran into the same problem while setting up my Linksys WRT3200, same solution, looks like it's a bug in LUCI.
The WRT3200 is faster (no Wi-Fi used, just routing with Ethernet), but using the ER-X as my main router because 22.03.3 is not available yet for the WRT3200 and there were a lot of security fixes on the last release of OpenWRT