玩转Openvwitch第五站:Port和VLAN

以下内容已屏蔽图片优化访问速度
Port在数据库中的结构如下:



[IMG]


一般来说一个Port就是一个Interface,当然也有一个Port对应多个Interface的情况,成为Bond


Port的一个重要的方面就是VLAN Configuration,有两种模式:
trunk port
这个port不配置tag,配置trunks
如果trunks为空,则所有的VLAN都trunk,也就意味着对于所有的VLAN的包,本身带什么VLAN ID,就是携带者什么VLAN ID,如果没有设置VLAN,就属于VLAN 0,全部允许通过。
如果trunks不为空,则仅仅带着这些VLAN ID的包通过。
access port
这个port配置tag,从这个port进来的包会被打上这个tag
如果从其他的trunk port中进来的本身就带有VLAN ID的包,如果VLAN ID等于tag,则会从这个port发出
从其他的access port上来的包,如果tag相同,也会被forward到这个port
从access port发出的包不带VLAN ID
如果一个本身带VLAN ID的包到达access port,即便VLAN ID等于tag,也会被抛弃。


我们做一个实验来测试Port的VLAN


[IMG]


创建拓扑结构


ovs-vsctl add-port ubuntu_br first_br
ovs-vsctl add-port ubuntu_br second_br
ovs-vsctl add-port ubuntu_br third_br
ovs-vsctl set Port vnet0 tag=101
ovs-vsctl set Port vnet1 tag=102
ovs-vsctl set Port vnet2 tag=103
ovs-vsctl set Port first_br tag=103
ovs-vsctl clear Port second_br tag
ovs-vsctl set Port third_br trunks=101,102
需要监听ARP,所以禁止MAC地址学习
ovs-vsctl set bridge ubuntu_br flood-vlans=101,102,103


[IMG]


从192.168.100.102来ping 192.168.100.103,应该first_if和second_if能够收到包


first_if收到包了,从first_br出来的包头是没有VLAN ID的


[IMG]


second_if也收到包了,由于second_br是trunk port,因而出来的包头是有VLAN ID的,103


[IMG]


third_if收不到包


从192.168.100.100在ping 192.168.100.105, 则second_if和third_if可以收到包(当然ping不通,因为third_if不属于某个VLAN)


first_if收不到包


second_if能够收到包,而且包头里面是VLAN ID = 101


[IMG]


third_if也能收到包,而且包头里面是VLAN ID =101


[IMG]


从192.168.100.101来ping 192.168.100.104, 则second_if和third_if可以收到包


first_if收不到包


second_br能够收到包,而且包头里面是VLAN ID = 102


[IMG]


third_if也能收到包,而且包头里面是VLAN ID =102


[IMG]


清理环境


ovs-vsctl clear Bridge ubuntu_br flood_vlans
ovs-vsctl list Port
ovs-vsctl clear Port vnet1 tag
ovs-vsctl clear Port vnet0 tag
ovs-vsctl clear Port first_br tag
ovs-vsctl clear Port third_br trunks
KVM半虚拟化设备virtio及性能调优最佳实践 1分钟搞定Nginx版本的平滑升级与回滚 60岁拍裸照,63岁拍孕妇照,还培养出一个身价200亿的儿子!这个妈妈才他妈是真超人! 互联网要变天了,BAT下半场拼什么? 学会这三招,你也可以拥有流量收割神器
好看吗?
总执行时间0.01328730583190918,文章查询时间0.0021445751190185547,分类查询时间0.010142326354980469,其他脚本8.106231689453125e-05,模板渲染0.000919342041015625