vm1和vm2通过虚拟交换机与主机进行交换,
虚拟交换机:(通过软件虚拟出来的交换机)
1、LinuxBridge虚拟交换机
2、OVS(Open Virtual Switch)虚拟交换机
虚拟机的传输是通过虚拟交换机,然后连到物理网卡上
如果同网段的话,直接通过ovs实现内部虚拟机的互通,能够提高效率
虚拟交换机的端口 连接 物理网卡的端口(mgmt管理端口) 的链路就是上行链路
DVS分布式交换机,可以横跨主机1和主机2
基于CNA1和CNA2都使用底层的共享存储,如果CNA1宕机了,然后想在CNA02上启动,但是CNA1上的vm1端口是100,CNA2上没有100,就需要在CNA2上重新创建一个100的端口组
端口组是可以承载拥有共同端口的集合
但是生产环境中,CNA非常多,重新创建很麻烦
如果使用DVS,它可以横跨两个主机,
注意:一个DVS,对于一台主机,只能有一条上行链路,
如果物理交换机存在多个端口(业务口),会绑定它们成为一个(逻辑上是一个),执行主备策略
bond可以实现高可用策略
如果VM1被迁到CNA2上,vm1可以直接连接在100上
,分布式交换机,横跨所有主机
先创建端口组的范围,在这个范围可以创建端口号
在创建虚拟机的时候,可以选择网卡进行隔离,进行流量隔离
1、vm1和vm2流量互访:vm1——ovs——vm2
2、vm1和vm3流量互访:
因为跨主机了,所以要经过物理交换机
3、vm1访问vm2:
vm1——ovs——物理网卡——物理交换机(找网关254)
跨网段要找网关(物理交换机里面)
4、vm1访问vm3
默认的话客户1要发送一个数据包,自己复制给2、3、4客户,全部发送过去,浪费网络资源,造成网络阻塞,数据安全性不高
VLAN:数据隔离通过VLAN,不同VLAN之间不能通信
1、access
①客户1发送数据给客户3,数据进入交换机之后,没有带标签,被打上了一个10的标签,然后第二个access口也是10,可以把数据发送出来,由于是access口,发现传输的数据一样都是10,就会剥离掉10的标签
②如果第二个口是20,就不能出去,携带的标签与默认的标签如果不一样,直接丢弃,不允许互通
默认不带标签,access端口
③如果客户1发送一个数据,打上10的标签,经过第二个access口时,发现标签不一样,不允许出去,就考虑第二个交换机
交换机与交换机相连就是trunk
2、trunk
trunk口允许发送的列表有1,10,20,如果客户1发送10的标签,
发送的时候与端口的默认PVID一样,就剥离,不一样就保留,
比如说默认是1,发送是10,就不用剥离
比如说默认是10,发送是10,就要剥离
接收的时候,不包含Tag,添加PVID,如果包含就不改变
基于刚刚发的是10,默认端口也是10,就被剥离了,一个没有Tag的数据发送到第二个虚拟交换机,重新被打上了10,只能通过客户3出去,标签一样,10标签也要被剥去
默认都是1,但是可以改
3、hybrid混杂模式
决定允许发送列表
数据帧是否可以出去,是否剥去标签(管理员手工决定)
就是有一个范围
交换机某个端口PVID是24
- int g0/0/1
- hybrid tagged 10-30
- hybrid untagged 40
进来的时候
1、一个不带标签的数据帧进来,打上24的tag
2、如果一个带了tag=16的数据帧,它可以通过001进来(
(hybrid tagged 10-30)
3、如果一个带了tag=40的数据帧,它可以通过001进来(hybrid untagged 40)
untagged和tagged都放行
出去的时候
4、如果一个带了tag=16的数据帧,它可以通过001出去,要带标签
5、如果一个带了tag=40的数据帧,它可以通过001出去,剥离标签
只剥离untagged的标签