欢迎来到文档下载导航网!

Docker网络原理解析报告.pdf

时间:2020-11-26|当前位置:首页 > 计算机 > 计算机资料/编程 > |用户下载:

Docker网络原理解析报告.pdf


本文档部分文本预览

.. . .. . .. Docker 网络原理分析 Docker 使用 linux 的 bridge 和 veth 虚拟网络设备 ,以及 network namespace 对网络进行虚拟化 。Bridge 看其名字是网桥 ,但实际上 它的功能和交换机 (switch) 相似 。Veth 则是一对网络接口 ,像是用一 条网线连接起来的两块网卡 。阅读这篇文章前 ,应该先了解 linux 的 bridge 和 veth 的原理和用法 ,熟悉 brctl, ip, iptables 三个重要命令 的使用方法 。 一 、Docker 经典网络架构 : 从上图可知 ,每个 docker 容器通过一对 veth 连入 bridge br0 。Veth 的一端在 docker netns 中,通常改名为 eth0 ;另一端在 default 或 . 专业学习资料 . .. . .. . .. global netns 中,通常命名为 vethXXXXXXXX 。上图中将其命名为 vnic11 和 vnic21 。 Bridge br0 自带一个网络接口 ,相当于主机的一张网卡 ,它的名字 也叫 br0 。上图相当于一个 bridge br0 连接了三台机器 :host , docker1 ,docker2 ,它们形成了一个独立的 LAN 。而主机的 eth0 则 将主机连接到外部的交换机 ,和交换上的其它主机形成一个 LAN 。 现在配置网络的 IP: Host 的 eth0 :将主机连接到外部交换机 。Ip=81/24, 主 机的网关为 dev eth0 。 Host 的 br0 网 络 接 口 : 将 主 机 连 接 到 内 部 交 换 机 br0 。 Ip=/16 。注意 ,当同时为主机的 eth0 和 br0 设置 IP 时 ,它 俩不能处于同一网段 。 Docker1 的 eth0: 将 docker1 连接到交换机 br0 。Ip=00/16 。 Docker1 网关为 。 Docker2 的 eth0: 将 docker2 连接到交换机 br0 。Ip=00/16 。 Docker2 网关为 。 这样 docker1,docker2 以及 host 所形成的 LAN 就配置好了 ,它的网 段为 /16 。现在 ,docker1 、docker2 以及主机 ,这三台设备 可以正常通信了 。 那么 ,docker1 和 docker2 如何才能访问 host 以外的世界呢 ?答案 是 NAT 。也就是需要配置转发机 制 , 在网络接口 host:br0 和 host:eth0 之间转发数据包 。配置转发机制首先要开启 linux 的网络 . 专业学习资料 . .. . .. . .. 转发功能 ,然后要在 iptables 中配置 SNAT 源地址转换 。 上面就是 docker 默认使用的网络模式 (--net=bridge) 。 Docker daemon 一启动 ,就会创建 bridge ,不过名字叫做 docker0 。并将 网口 docker0 的 IP 配成了 /16 。以后每启动一个容器 ,就 自动为该容器创建 veth pair ,将一端连到 bridge docker0 ,将另一 端 放 入 容 器 内 , 改 名 为 eth0 。 容 器 内 的 eth0 的 ip 配 置 为 172.17.x.x/16 ,容器的网关配置为 。 下面 ,我们用命令一步一步创建该网络 , 以加深对 docker 网络原理 的理解 。 1. 启动两个 docker 容器 ,不要让 docker 自动配置网络 docker run –itd --name=docker1 --net=none test/ubuntu:14 /bin/bash docker run –itd --name=docker2 --net=none test/ubuntu:14 /bin/bash 2. 找到容器的 netns ,将其连接到 /var/run/netns/ 下 , 以便为其配 置网卡 。 先找到 docker 容器的 PID : docker1Pid=$(docker inspect –-format= ’{{.State.Pid}} ’ docker1) docker2Pid=$(docker inspect –-format= ’{{.State.Pid}} ’

继续预览文档剩余内容

温馨提示:本页预览文本内容并非错乱,是从文档中提取部分无格式预览!如您需要正常预览文档全文,请点击下方按钮↓↓↓

上一篇:泵与泵站第七章.doc

栏    目:计算机资料/编程

下一篇:数据库原理与应用 复习模拟试卷2.doc

本文标题:Docker网络原理解析报告.pdf

本文地址:https://www.365weibook.com/html/20201126/376927.html

    正常预览或下载提示:

    本页面文档预览是由服务器自动提取的部分内容,并不是文档错乱。如您需要预览全文或下载文档,请点击页面左侧(点击去预览文档全文或下载文档)按钮,进行全文预览或下载。

推荐下载

联系我们 | 广告投放 |网站地图

免责申明:本网站不提供任何形式的下载服务,因此与之有关的知识产权纠纷本网站不承担任何责任。

如果侵犯了您的权利,请与我们联系,我们将进行删除处理。