I live in an apartment where the building has a Ruckus AP that does the building’s wifi and has a 1G out (before they used this they used to provide a dumb switch to network to the den, living room and bedroom).
I wanted to upgrade my homelab setup so I am trying to make my life as difficult as possible by having a CRS305 in this small network hovel, that uplinks to a CRS317 I got, to then uplink to my RB5009 I’ve been using.
I acquired 3 mini PCs and have a dual 10G NIC for my NAS system so I can have all these systems have 2 SFP+ uplinks that I can bond, or have 1 be tagged with multiple VLANs for a hypervisor and the other be tagged with a SAN VLAN for iSCSI connections.
I have spent 2 weekends now, doing nothing but failing to appropriately configure VLANs, and I have no clue what I am doing wrong.
I am recreating this 3 RouterOS layout in Cisco’s Modeling Lab and I have no clue what I am doing wrong.
This is my home layout, I feel that This should be very simple, but I cannot make it work for the life of me.

RB5009
/interface bridge
add name=rb5009br vlan-filtering=yes
/interface vlan
add interface=rb5009br name=vlan10 vlan-id=10
add interface=rb5009br name=vlan99 vlan-id=99
/interface bridge port
add bridge=rb5009br interface=sfp-plus1
add bridge=rb5009br interface=ether1 pvid=10
/interface bridge vlan
add bridge=rb5009br tagged=sfp-plus1 vlan-ids=10
add bridge=rb5009br tagged=sfp-plus1,rb5009br vlan-ids=99
/ip address
add address=10.0.10.1/24 interface=vlan10 network=10.0.10.0
add address=10.0.99.1/24 interface=vlan99 network=10.0.99.0
/ip route
add distance=5 gateway=10.0.99.3
CRS317
/interface bridge
add name=crs317br vlan-filtering=yes
/interface vlan
add interface=crs317br name=vlan99 vlan-id=99
/interface bridge port
add bridge=crs317br interface=sfp-plus[1-14] pvid=whatever-this-isnt-important
add bridge=crs317br interface=sfp-plus15
add bridge=crs317br interface=sfp-plus16
/interface bridge vlan
add bridge=crs317br tagged=sfp-plus15,sfp-plus16 vlan-ids=10
add bridge=crs317br tagged=sfp-plus15,sfp-plus16,crs317br vlan-ids=99
/ip address
add address=10.0.99.2/24 interface=vlan99 network=10.0.99.0
CRS305
/interface bridge
add name=crs305br vlan-filter=yes
/interface vlan
add interface=crs305br name=vlan99 vlan-id=99
/interface bridge port
add bridge=crs305br interface=sfp-plus4 pvid=10
add bridge=crs305br interface=sfp-plus1
/interface bridge vlan
add bridge=crs305br tagged=sfp-plus1 vlan-ids=10
add bridge=crs305br tagged=sfp-plus1,crs305br vlan-ids=99
/ip address
add address=10.0.99.3/24 interface=vlan99 network=10.0.99.0
/ip dhcp-client
add interface=ether1
This is me typing it all out by hand, but as I said, I can’t even get something simple running in CML. I can do frame-types=vlan-tagged-only on the trunk ports but I lose all connection and my windows DHCP on the mini-pcs fail.
In CML if I were to have a pvid on the CHR running as a switch with pvid 10, a linux instance connected to a pvid switch won’t get a DHCP address from the router CHR, and if I set an IP I can’t ping back to the 10.0.10.1 IP that is configured on the router.
My goal is to be able to create vlans as needed on the rb5009 and crs317 to facilitate networks within the hyper-visors, the crs305 doesn’t need to know.
Ideally if I could have wrapped ether1 from the ruckus and just sent it back to be handled by the rb5009 I’d love to do that, however they have a bunch of random tags it seems based on the vlan neighbors in swos when I tried to run that, so all my vlans would have to be 2000+ but I’m not sure how I would appropriately handle however many dozens or hundreds of tags they put on their stuff
