OpenVswitch的安装
https://blog.csdn.net/dandanfengyun/article/details/107976035
安装完成并启动后如下 版本2.5.10
大致命令有
[root@ovs-singlenic ~]# ovs
ovs-appctl ovsdb-server ovs-dpctl ovs-pki ovs-vswitchd
ovs-bugtool ovsdb-tool ovs-dpctl-top ovs-testcontroller
ovsdb-client ovs-docker ovs-ofctl ovs-vsctl
比较常用 ovs-vsctl 和 ovs-vswitchd
基本概念
交换机(英文:Switch,意为“开关”)是一种用于电信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。
最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。
最通俗易懂的解释就是可以让一根网线变成多根去使用,还不会让这根线上的数据产生冲突
VLAN (Virtual LAN)虚拟局域网,不合适的类比方法是网段,如
10.10.10.1/24
10.10.20.1/24
相互之间隔离。。。
-
Bridge: Bridge 代表一个以太网交换机(Switch),一个主机中可以创建一个或者多个 Bridge 设备。
-
Port: 端口与物理交换机的端口概念类似,每个 Port 都隶属于一个 Bridge。
-
Interface: 连接到 Port 的网络接口设备。在通常情况下,Port 和 Interface 是一对一的关系, 只有在配置 Port 为 bond 模式后,Port 和 Interface 是一对多的关系。
ovs中port有四种类型
类型 | 说明 |
---|---|
Normal | 用户可以把操作系统中的网卡绑定到ovs上,ovs会生成一个普通端口处理这块网卡进出的数据包。 |
Internal | 端口类型为internal时,ovs会创建一块虚拟网卡,虚拟网卡会与端口自动绑定。当ovs创建一个新网桥时,默认会创建一个与网桥同名的Internal Port |
Patch | 当机器中有多个ovs网桥时,可以使用Patch Port把两个网桥连起来。Patch Port总是成对出现,分别连接在两个网桥上,在两个网桥之间交换数据 |
Tunne | 隧道端口是一种虚拟端口,支持使用gre或vxlan等隧道技术与位于网络上其他位置的远程端口通讯 |
一般来说 Internal 类型的端口 可以设置 IP。。。Normal类型就是网络接口设置 port无法设置IP
端口的VLAN_MODE几种模式
模式 | 说明 |
---|---|
默认 | 在默认模式下(VLAN_mode没被设置),如果指定了端口的tag属性,那么这个端口就工作在access模式,并且其trunk属性的值应该保持为空。否则,这个port就工作在trunk模式下,如果trunk被指定,则使用指定的trunk值。 |
trunk | trunk模式的端口允许传输所有在其trunk属性中指定的那些VLAN对应的数据包。其他VLAN的数据包就会被丢弃。从trunk模式的端口中进入的数据包其VLAN ID不会发生变化。如果进入的数据包不含有VLAN ID,则该数据包进入交换机后的VLAN为0。从trunk模式的端口出去的数据包,如果VLAN ID不为空,则依然保持该VLAN ID,如果VLAN ID为空,则出去后不再包含802.1Q头部 |
access | access模式的端口只允许不带VLAN的数据包进入,不管数据包的VLAN ID是否与其tag相同,只要含有VLAN ID,这个数据包都会被端口drop。数据包进入access端口后会被打上和端口tag相同的VLAN,而再从access端口出去时,数据包的VLAN会被删除,也就是说从access的端口出去的数据包和进来时一样是不带VLAN的 |
native-tagged | native-tagged端口类似于trunk端口,它们之间的区别是如果进入native-tagged端口的数据包不含有802.1Q头部,即没有指定VLAN,那么该数据包会被当作native VLAN,其VLAN ID由端口的tag指定。 |
native-untagged | native-untagged端口类似于native-tagged端口,不同点是native VLAN中的数据包从native-untagged端口出去时,会被去掉802.1Q头部。 |
通常来讲,只使用 trunk port 连接两个交换机,而不是用来连接机器和交换机,因为机器不想看到它们收到的数据包带有 VLAN Header。
VLAN TAG是一个数字 0-4096
首先学习 一下 ovs-vsctl 命令
-
展示OVS的状态。print