博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
flannel 的连通与隔离 - 每天5分钟玩转 Docker 容器技术(61)
阅读量:6866 次
发布时间:2019-06-26

本文共 830 字,大约阅读时间需要 2 分钟。

hot3.png

上一节我们在 flannel 网络中部署了容器,本节讨论 flannel 的连通和隔离特性。

flannel 网络连通性

测试 bbox1 和 bbxo2 的连通性:

bbox1 能够 ping 到位于不同 subnet 的 bbox2,通过 traceroute 分析一下 bbox1 到 bbox2 的路径。

  1. bbox1 与 bbox2 不是一个 subnet,数据包发送给默认网关 10.2.40.1(docker0)。

  2. 根据 host1 的路由表(下图),数据包会发给 flannel.1。

  3. flannel.1 将数据包封装成 VxLAN,通过 enp0s8 发送给 host2。

  4. host2 收到包解封装,发现数据包目的地址为 10.2.17.2,根据路由表(下图)将数据包发送给 flannel.1,并通过 docker0 到达 bbox2。

数据流向如图所示:

另外,flannel 是没有 DNS 服务的,容器无法通过 hostname 通信。

flannel 网络隔离

flannel 为每个主机分配了独立的 subnet,但 flannel.1 将这些 subnet 连接起来了,相互之间可以路由。本质上,flannel 将各主机上相互独立的 docker0 容器网络组成了一个互通的大网络,实现了容器跨主机通信。flannel 没有提供隔离。

flannel 与外网连通性

因为 flannel 网络利用的是默认的 bridge 网络,所以容器与外网的连通方式与 bridge 网络一样,即:

  1. 容器通过 docker0 NAT 访问外网

  2. 通过主机端口映射,外网可以访问容器

详细讨论可参考前面 bridge 网络相关章节。

以上是 flannel vxlan 的相关知识点,下一节我们讨论 flannel host-gw backend。

二维码+指纹.png

转载于:https://my.oschina.net/u/2397560/blog/1525889

你可能感兴趣的文章
打印hibernate的SQL语句的几种办法
查看>>
nginx 高级配置示例.
查看>>
HTML知识点笔记(持续添加+++++++)
查看>>
忘记了root密码怎么办
查看>>
Tomcat 警告:consider increasing the maximum size of the cache
查看>>
Linux 用户,组,权限小练习
查看>>
DNS服务在网络中的应用
查看>>
大步迈入3G 时代,如何选择性价比高的资费呢?
查看>>
iPhone异常关机怎么解决?中国消费者协会请苹果10日内答复
查看>>
Sbo通用数据选择功能的实现
查看>>
Oracle 快照控制文件(snapshot control file)
查看>>
11家小微贷机构签约费埃哲云平台 提升P2P风险管理
查看>>
Linux系统下文件类型解析
查看>>
Nginx做tomcat代理
查看>>
.NET开发者常会忽略的几个错误
查看>>
方便适用的企业监控之---CactiEZ 0.6
查看>>
Cisco交换机与路由器的密码恢复_路由交换
查看>>
python 一些有趣的模块
查看>>
haproxy实现均衡负载(linux)
查看>>
[Unity 3D]摄像机Clear Flags和Culling Mask属性用途详解
查看>>