Docker Macvlan 介绍 or 工作原理

Docker Macvlan Network

  • Macvlan Network:属于Docker的网络驱动。
  • Macvlan Network:Docker主机网卡接口逻辑上分为多个子接口,每个子接口标识一个VLAN。容器接口直接连接Docker主机网卡接口,通过路由策略转发到另一台Docker主机。
  • Macvlan  Network :macvlan最大的优势,它支持能去连接子接口,linux 网卡子接口最大 4094个。

工作原理解析

1、两边节点分别创建macvlan网络,并创建子网段。
2、docker0网卡会通过NET去访问外网。
3、容器内的eth0是由macvlan所在物理接口ens33创建的一个逻辑网口。
4、当节点1向节点2发送数据包时,容器内的子网网卡会向它的网关发送一个mac地址请求。
5、虚拟网关接受请求后会先查询本地的路由表查找发送目标,如果找不到它会转交给eth1来发ARP送广播,来获取目标IP地址是多少。
6、节点2收到ARP广播后它会查找本地是否存在目标IP地址,通过IP来获取自定IP的mac地址。
7、获取mac地址后它会转发给eth0真机网卡,然后通过宿主级网卡发送给节点1的外网网卡,然后再转给容器内网卡。
 
posted @ 2018-11-03 10:35  kevin.Xiang  阅读(2918)  评论(0编辑  收藏  举报