有人能详细解释一下veth对和tap接口的区别吗?这些设备是如何连接到linux桥或打开开关的。
我发现:"Veth是一种特殊的网络设备,是成对创建的,我认为它是一种改变流量方向的方法,也就是说,当从Linux协议栈发送给veth设备时,它被发送到它的另一个镜像veth设备,因此镜像设备将它作为一个正向通信,并将其返回Linux协议栈以供进一步使用。
Tap设备是逻辑网络设备,但与其他设备不同:它允许用户空间程序直接将流量注入Linux协议栈,还可以从堆栈中检索流量。它在用户空间中打开到Linux协议栈的隧道(或者在级别3的tun设备),该协议栈将用户空间中的数据视为方向通信。“
但它并没有告诉我整个情况。
提前谢谢!
发布于 2015-05-17 15:46:36
不能使用使用ip创建的linuxbridges接口将网络命名空间附加到linuxbridge或openvswitch,因此我们需要依赖于对。
虚拟以太网接口成对出现,它们像管子一样连接--一个veth接口中的任何东西都会产生另一个对等veth接口。因此,您可以使用接口通过物理接口存在的“默认”或“全局”命名空间将网络命名空间连接到外部世界。
抽头设备(如vnet0 )是KVM和Xen等虚拟机监控程序如何实现虚拟网络接口卡(通常称为VIF或vNIC)。客户操作系统接收发送到TAP设备的以太网帧。
发布于 2016-01-13 17:36:16
这些虚拟网络构件的用途是相似的。但它们之间有细微的差别,因此它们在不同的情况下使用:
请注意,当我们使用OVS时,我们不应该误解我们需要使用VETH而不是点击。我们总是可以在OVS中创建内部端口,这些端口的行为与tap接口完全一样。但这并不总是可能的,例如,当您想连接到一个无法合成类似点击的接口的实体时。即:
$ ovs-vsctl add-port ovs-switch-name tap0现在,您可以像我们使用tap接口一样使用tap0。
https://stackoverflow.com/questions/25641630
复制相似问题