DSA trunk not working

Hello everyone!

I am having trouble getting a trunk to work between my set of Zyxel WSM20 routers.

As you can see on the pictures, it does connect (if i take the cable out it says "no link" instead of "1 GbE"), but they don't receive anything from eachother.

I have tried multiple ethernet cables with the same outcome.

Any and all help will greatly be appreciated!

(Am new user, can only embed one image, but R2 is identical, except different amount of data sent)
R1image

{
	"kernel": "5.15.137",
	"hostname": "R1",
	"system": "MediaTek MT7621 ver:1 eco:3",
	"model": "ZyXEL WSM20",
	"board_name": "zyxel,wsm20",
	"rootfs_type": "squashfs",
	"release": {
		"distribution": "OpenWrt",
		"version": "23.05.2",
		"revision": "r23630-842932a63d",
		"target": "ramips/mt7621",
		"description": "OpenWrt 23.05.2 r23630-842932a63d"
	}
}

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 ula_prefix 'fdf1:4319:d5b6::/48'
	option packet_steering '1'

config interface 'wan'
	option device 'wan'
	option proto 'dhcp'

config interface 'wan6'
	option device 'wan'
	option proto 'dhcpv6'

config device 'lan_dev'
	option type 'bridge'
	option name 'br-lan'
	list ports 'lan1'
	list ports 'lan3'

config bridge-vlan 'lan_vlan'
	option device 'br-lan'
	option vlan '11'
	list ports 'lan1'
	list ports 'lan3:t'

config interface 'lan'
	option proto 'static'
	option ipaddr '192.168.11.1'
	option netmask '255.255.255.0'
	option device 'br-lan.11'

config device 'guest_dev'
	option type 'bridge'
	option name 'br-guest'
	list ports 'lan3'

config bridge-vlan 'guest_vlan'
	option device 'br-guest'
	option vlan '12'
	list ports 'lan3:t'

config interface 'guest'
	option proto 'static'
	option ipaddr '192.168.12.1'
	option netmask '255.255.255.0'
	option device 'br-guest.12'

config device 'iot_dev'
	option type 'bridge'
	option name 'br-iot'
	list ports 'lan3'

config bridge-vlan 'iot_vlan'
	option device 'br-iot'
	option vlan '13'
	list ports 'lan3:t'

config interface 'iot'
	option proto 'static'
	option ipaddr '192.168.13.1'
	option netmask '255.255.255.0'
	option device 'br-iot.13'

config device 'dmz_dev'
	option type 'bridge'
	option name 'br-dmz'
	list ports 'lan2'

config bridge-vlan 'dmz_vlan'
	option device 'br-dmz'
	option vlan '14'

config interface 'dmz'
	option proto 'static'
	option ipaddr '192.168.14.1'
	option netmask '255.255.255.0'
	option device 'br-dmz.14'
{
	"kernel": "5.15.134",
	"hostname": "R2",
	"system": "MediaTek MT7621 ver:1 eco:3",
	"model": "ZyXEL WSM20",
	"board_name": "zyxel,wsm20",
	"rootfs_type": "squashfs",
	"release": {
		"distribution": "OpenWrt",
		"version": "23.05.0",
		"revision": "r23497-6637af95aa",
		"target": "ramips/mt7621",
		"description": "OpenWrt 23.05.0 r23497-6637af95aa"
	}
}

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 ula_prefix 'fd25:5701:f2bc::/48'
	option packet_steering '1'

config interface 'wan'
	option device 'wan'
	option proto 'dhcp'

config interface 'wan6'
	option device 'wan'
	option proto 'dhcpv6'

config device 'lan_dev'
	option type 'bridge'
	option name 'br-lan'
	list ports 'lan1'
	list ports 'lan2'
	list ports 'lan3'

config bridge-vlan 'lan_vlan'
	option device 'br-lan'
	option vlan '11'
	list ports 'lan1'
	list ports 'lan2'
	list ports 'lan3:t'

config interface 'lan'
	option proto 'static'
	option ipaddr '192.168.11.2'
	option netmask '255.255.255.0'
	option device 'br-lan.11'

config device 'guest_dev'
	option type 'bridge'
	option name 'br-guest'
	list ports 'lan3'

config bridge-vlan 'guest_vlan'
	option device 'br-guest'
	option vlan '12'
	list ports 'lan3:t'

config device 'iot_dev'
	option type 'bridge'
	option name 'br-iot'
	list ports 'lan3'

config bridge-vlan 'iot_vlan'
	option device 'br-iot'
	option vlan '13'
	list ports 'lan3:t'

A physical port can only be in one bridge. All the ports except wan are in br-lan by default, so it is OK to use that. Create bridge-vlans within that bridge for different vlans. Then attach an interface 1:1 to each bridge-vlan with the notation option device 'br-lan.N' where N is the vlan number. VLANs that are only used to hardware switch between two external ports still need to be referenced in an interface of proto none, or the hardware will not be set up properly.

2 Likes

Thank you so much!

It took some time, and a ton of mistakes, but i finally got it working...

R1:

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 ula_prefix 'fd90:2a55:47c1::/48'
        option packet_steering '1'

config interface 'wan'
        option device 'wan'
        option proto 'dhcp'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'

config device 'switch'
        option type 'bridge'
        option name 'br-switch'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3'

config bridge-vlan 'lan_vlan'
        option device 'br-switch'
        option vlan '11'
        list ports 'lan1'
        list ports 'lan3:t'

config bridge-vlan 'guest_vlan'
        option device 'br-switch'
        option vlan '12'
        list ports 'lan3:t'

config bridge-vlan 'iot_vlan'
        option device 'br-switch'
        option vlan '13'
        list ports 'lan3:t'

config bridge-vlan 'dmz_vlan'
        option device 'br-switch'
        option vlan '14'
        list ports 'lan2'

config interface 'lan'
        option proto 'static'
        option ipaddr '192.168.11.1'
        option netmask '255.255.255.0'
        option device 'br-switch.11'

config interface 'guest'
        option proto 'static'
        option ipaddr '192.168.12.1'
        option netmask '255.255.255.0'
        option device 'br-switch.12'

config interface 'iot'
        option proto 'static'
        option ipaddr '192.168.13.1'
        option netmask '255.255.255.0'
        option device 'br-switch.13'

config interface 'dmz'
        option proto 'static'
        option ipaddr '192.168.14.1'
        option netmask '255.255.255.0'
        option device 'br-switch.14'

R2:

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 ula_prefix 'fd85:6fd0:3bbf::/48'
        option packet_steering '1'

config device 'switch'
        option type 'bridge'
        option name 'br-switch'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3'

config bridge-vlan 'lan_vlan'
        option device 'br-switch'
        option vlan '11'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3:t'

config bridge-vlan 'guest_vlan'
        option device 'br-switch'
        option vlan '12'
        list ports 'lan3:t'

config bridge-vlan 'iot_vlan'
        option device 'br-switch'
        option vlan '13'
        list ports 'lan3:t'

config interface 'lan'
        option proto 'static'
        option ipaddr '192.168.11.2'
        option netmask '255.255.255.0'
        option device 'br-switch.11'

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.