RouterOS创建Bridge时,可以选择VLAN的设置, vlan-filtering 是用于桥接下全局的VLAN识别和VLAN tags标记处理。如果 vlan-filtering=no, Bridge将忽略VLAN tag标记。只能工作在shared-VLAN-learning (SVL) 模式,也不能修改VLAN数据包的tags。设置为yes,相关的VLAN功能和independent-VLAN-learning (IVL) 模式将启用。当Bridge加入端口,实现二层转发,bridge自身也将会成为一个接口,并拥有自己的PVID(Port VLAN ID)

目前只有CRS3xx系列设备能够支持基于hardware offloading(下发交换芯片处理)使用Bridge VLAN filtering下所有功能,其他设备在启用桥接VLAN过滤时,不能完全使用内置交换芯片处理,大部分需要通过CPU完成。

VLAN实例1 (不同VLAN配置Access接口)

这个实例介绍常见二层不同VLAN的access接口配置

创建一个bridge接口,并禁用 vlan-filtering ,在配置完成VLAN之前,避免丢失路由器的管理

/interface bridge

add name=bridge1 vlan-filtering=no

添加bridge ports的接口成员,并指定每个access接口的PVID。

/interface bridge port

add bridge=bridge1 interface=ether2

add bridge=bridge1 interface=ether6 pvid=300

add bridge=bridge1 interface=ether7 pvid=300

add bridge=bridge1 interface=ether8 pvid=400

add bridge=bridge1 interface=ether9 pvid=400

最后,当VLAN配置完成,启用vlan-filtering

/interface bridge set bridge1 vlan-filtering=yes

VLAN实例2 (配置Trunk和Access接口)

这个实例介绍常见二层VLAN的trunk和access接口配置

创建一个bridge接口,并禁用 vlan-filtering ,在配置完成VLAN之前,避免丢失路由器的管理

/interface bridge

add name=bridge1 vlan-filtering=no

添加bridge ports的接口成员,并指定每个access接口的PVID,trunk接口不用指定。

/interface bridge port

add bridge=bridge1 interface=ether2

add bridge=bridge1 interface=ether6 pvid=200

add bridge=bridge1 interface=ether7 pvid=300

add bridge=bridge1 interface=ether8 pvid=400

添加bridge VLAN,并指定tagged和untagged接口

/interface bridge vlan

add bridge=bridge1 tagged=ether2 untagged=ether6 vlan-ids=200

add bridge=bridge1 tagged=ether2 untagged=ether7 vlan-ids=300

add bridge=bridge1 tagged=ether2 untagged=ether8 vlan-ids=400

最后,当VLAN配置完成,启用vlan-filtering

/interface bridge set bridge1 vlan-filtering=yes

VLAN实例3 (配置Trunk和Hybrid接口)

该实例介绍二层VLAN混杂模式的配置

创建一个bridge接口,并禁用 vlan-filtering ,在配置完成VLAN之前,避免丢失路由器的管理

/interface bridge

add name=bridge1 vlan-filtering=no

添加bridge ports的接口成员,并指定每个access接口的PVID,trunk接口不用指定。

/interface bridge port

add bridge=bridge1 interface=ether2

add bridge=bridge1 interface=ether6 pvid=200

add bridge=bridge1 interface=ether7 pvid=300

add bridge=bridge1 interface=ether8 pvid=400

添加Bridge VLAN,并指定tagged and untagged端口,设置ether6.ether7和ether8为Hybrid端口

/interface bridge vlan

add bridge=bridge1 tagged=ether2,ether7,ether8 untagged=ether6 vlan-ids=200

add bridge=bridge1 tagged=ether2,ether6,ether8 untagged=ether7 vlan-ids=300

add bridge=bridge1 tagged=ether2,ether6,ether7 untagged=ether8 vlan-ids=400

最后,当VLAN配置完成,启用vlan-filtering

/interface bridge set bridge1 vlan-filtering=yes

VLAN实例4(配置VLAN三层接口)

该实例介绍,如何二层VLAN上创建三层接口

创建一个bridge接口,并禁用 vlan-filtering ,在配置完成VLAN之前,避免丢失路由器的管理

/interface bridge

add name=bridge1 vlan-filtering=no

添加bridge ports的接口成员,并指定每个access接口的PVID,trunk接口不用指定。

/interface bridge port

add bridge=bridge1 interface=ether6 pvid=200

add bridge=bridge1 interface=ether7 pvid=300

add bridge=bridge1 interface=ether8 pvid=400

添加bridge VLAN,并指定tagged和untagged接口,在这个实例中设置tagged为bridge1,即将VLAN trunk到路由器内部

/interface bridge vlan

add bridge=bridge1 tagged=bridge1 untagged=ether6 vlan-ids=200

add bridge=bridge1 tagged=bridge1 untagged=ether7 vlan-ids=300

add bridge=bridge1 tagged=bridge1 untagged=ether8 vlan-ids=400

进入/interface vlan菜单,创建bridge1接口下对应的vlan id,允许处理来之二层的vlan数据

/interface vlan

add interface=bridge1 name=vlan200 vlan-id=200

add interface=bridge1 name=vlan300 vlan-id=300

add interface=bridge1 name=vlan400 vlan-id=400

在/ip address菜单下添加对应VLAN的IP地址

/ip address

add address=20.0.0.1/24 interface=vlan200 network=20.0.0.0

add address=30.0.0.1/24 interface=vlan300 network=30.0.0.0

add address=40.0.0.1/24 interface=vlan400 network=40.0.0.0

最后,当VLAN配置完成,启用vlan-filtering

/interface bridge set bridge1 vlan-filtering=yes

VLAN实例5 (配置VLAN三层管理IP)

该实例如何是二层VLAN配置三层管理IP和网关

创建一个bridge接口,并禁用 vlan-filtering ,在配置完成VLAN之前,避免丢失路由器的管理

/interface bridge

add name=bridge1 vlan-filtering=no

添加bridge ports的接口成员,并指定每个access接口的PVID,trunk接口不用指定。

/interface bridge port

add bridge=bridge1 interface=ether2

add bridge=bridge1 interface=ether3 pvid=300

添加bridge VLAN,并指定tagged和untagged接口,在这个实例中设置tagged为bridge1,即将VLAN trunk到路由器内部

/interface bridge vlan

add bridge=bridge1 tagged=ether2,bridge1 vlan-ids=200

add bridge=bridge1 tagged=ether2 untagged=ether3 vlan-ids=300

进入/interface vlan菜单,创建bridge1接口下对应的vlan id,允许处理来之二层的vlan数据

/interface vlan

add interface=bridge1 name=vlan200 vlan-id=200

在/ip address菜单下添加对应VLAN的IP地址

/ip address

add address=20.0.0.2/24 interface=vlan200

在/ip route菜单下添加对应网关

/ip route

add gateway=20.0.0.1

最后,当VLAN配置完成,启用vlan-filtering

/interface bridge set bridge1 vlan-filtering=yes

注意:如果你仅仅是通过二层协议(如MAC-telnet)连接CRS设备,那可以跳过添加IP地址的步骤,仅把VLAN传递给CPU。