虚拟网络技术:veth设备

本文介绍了Linux的veth设备,这是一种虚拟网口,常用于连接虚拟机和容器。veth设备总是成对出现,数据包在一对veth间双向传输。文章通过示例展示了在同一和不同namespace下veth设备的通信情况,强调了veth在本地网络中的作用和限制。
摘要由CSDN通过智能技术生成

本文首发于我的公众号码农之屋(id: Spider1818),专注于干货分享,包含但不限于Java编程、网络技术、Linux内核及实操、容器技术等。欢迎大家关注,二维码文末可以扫。

导读:云化场景到处都是虚拟机和容器,它们背后的网络管理都离不开虚拟网络设备,了解虚拟网络设备将有助于我们更好地理解云化场景的网络架构。本篇文章将对Linux的veth进行介绍。


一、veth设备

Virtual Ethernet,即veth设备,从字面意思可以理解为是虚拟网口,它总是成双成对出现(有时也用veth-pairs表示)。和其他网络设备一样,一端连接的是内核协议栈,而另一端则是两veth相连。veth的一端收到数据包发送请求之后,会将数据包发往另一veth上去(工作在L2数据链路层,转发数据包时不会篡改数据包内容)。

 

VETH: Typically usedwhen you are trying to connect two entities which would want to "get holdof" (for lack of better phrase) an interface to forward/receive frames.These entities could be containers/bridges/ovs-switch etc. Say you want toconnect a docker/lxc container to OVS. You can create a veth pair and push thefirst interface to the docker/lxc (say, as a phys interface) and push the otherinterface to OVS. You cannot do this with TAP.

从维基百科查询veth的描述信息,不同容器间的通信(包含本宿主机和跨宿主机场景),单靠veth-pairs设备是不够的,还需要结合bridge相关的技术,才能实现容器访问网络。


二、示例

我们将以示例的方式,一步步地观测veth的特点。

示例一

1、我们先创建一对veth设备(veth0和veth1),并配置veth0和veth1的IP,接着将2个设备都启动起来。

[root@nod
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值