docker (11)——不同宿主机上的容器进行通信

本文探讨了Docker中macvlan网络方案的实现,利用Linux的macvlan驱动在单块网卡上创建多个接口,实现容器与外界直接通信。通过开启混杂模式,容器能够通过macvlan网络访问外部网络,避免了NAT和端口映射。在server1和server2上,可以看到macvlan模式下,容器的eth0接口是宿主机eth1的虚拟接口,直接连接到网络。
摘要由CSDN通过智能技术生成

在这里插入图片描述
在这里插入图片描述

2. macvlan容器网络方案的实现

macvlan本身是linxu kernel的模块,本质上是一种网卡虚拟化技术。
其功能是允许在同一个物理网卡上虚拟出多个网卡,通过不同的MAC地址在数据链路层进行网络数据的转发,

一块网卡上配置多个 MAC 地址(即多个 interface),每个interface可以配置自己的IP,
Docker的macvlan网络实际上就是使用了Linux提供的macvlan驱动。
因为多个MAC地址的网络数据包都是从同一块网卡上传输,所以需要打开网卡的混杂模式ip link set eth1 promisc on。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值