RB3011, VLAN switching/routing and DHCP server

I think we misunderstood each other.
E.g. in Cisco IOS VLAN switching & routing is completed by 3 commands (to simplify example, for one port):

  1. L2, define the actual VLAN


  • L2, assign the VLAN to a port


  • L3, create a virtual iface & assign IP to it

For MikroTik, I had to use 4 commands instead of 1 in step 2:

  1. /interface vlan - fair and logical


  • 2.1./interface bridge port


  • 2.2 /interface bridge vlan


  • 2.3. /interface ethernet switch vlan


  • 2.4. /interface ethernet switch port


    1. /ip address - clear & concise

I would love to simplify 2.1-2.4 into one single step. But every documentation piece has been linked above says otherwise.

Btw, I did have my “eureka” / “aha” moment (or after finding the problem, rather “WTF” and “f… me sideways”):

/interface bridge vlan
add bridge=bridge vlan-ids=100 tagged=bridge,ether10
add bridge=bridge vlan-ids=300 tagged=bridge,ether10

tagged=ether10 → tagged=bridge,ether10: really, add bridge to itself as “tagged” port?

That a very clear example of abstraction layer I was talking about: as a network admin, I don’t really care how the processing is done at the configuration stage (I do care at the design / pre-req one though). Of course, if the HW processing is available, I’ll take it - i.e. it shall be enabled by default whenever available and disabled only when explicitly told so within the same CLI command.

All everyone wants is a unified config process (whether UI or CLI) across all devices of the same vendor.

In Cisco IOS (many people here familiar as well), it’s done very simply:

# Catalyst Switch
interface GigabitEthernet1/0/1
 switchport trunk allowed vlan 1,100,200,...
 switchport mode trunk

interface GigabitEthernet1/0/5
 switchport access vlan 100
 switchport mode access

interface Vlan1
 no ip address
!
interface Vlan100
 ip address 10.0.100.21 255.255.255.0

# ASA/PIX FW 
!VLAN: 100,200,... - <- on some older ASA's vlan had to be created outside of running-config
interface GigabitEthernet1/2.100
 vlan 100
 nameif Vlan100

The syntax is simplified, precise, to the point and very logical as well as relates to each other even between different device families.
I.e. whatever chipset differences can exist within the same family but different models, they are masked by standardized CLI which might slightly differ in command args only.