Docker容器网络与通信原理深度解析 一、Docker容器默认网络模型 1.1 原理图 1.2 名词解释 二、Docker容器默认网络模型工作原理 2.1 容器访问外网 2.2 外网访问容器 三、Docker容器四种网络模型 四、Docker容器四种网络模型应用案例 4.1 查看已有的网络模型 4.2 创建指定类型的网络模型 4.2.1 bridge 4.2.2 host 4.2.3 none 4.2.4 联盟网络 五、跨Docker Host容器间通信实现 5.1 跨Docker Host容器间通信必要性 5.2 跨Docker Host容器间通信实现方案 5.2.1 Docker原生方案 5.2.2 第三方方案 5.2.2.1 隧道方案 5.2.2.2 路由方案 5.3 Flannel 5.3.1 overlay network介绍 5.3.2 Flannel介绍 5.3.3 Flannel工作原理 5.4 ETCD 5.5 ETCD部署 5.5.1 主机名称配置 5.5.2 主机IP地址配置 5.5.3 主机名与IP地址解析 5.5.4 开启内核转发 5.5.5 etcd安装 5.5.6 etcd配置 5.5.7 启动etcd服务 5.5.8 检查端口状态 5.5.9 检查etcd集群是否健康 5.6 Flannel部署 5.6.1 Flannel安装 5.6.2 修改Flannel配置文件 5.6.3 配置etcd中关于flannel的key 5.6.4 启动Flannel服务 5.6.5 查看各node中flannel产生的配置信息 5.7 Docker网络配置 5.8 跨Docker Host容器间通信验证 一、Docker容器默认网络模型 1.1 原理图 1.2 名词解释 docker0 是一个二层网络设备,即网桥 通过网桥可以将Linux支持的不同的端口连接起来 实现类交换机多对多的通信 veth pair 虚拟以太网(Ethernet)设备 成对出现,用于解决网络命名空间之间的隔离 一端连接Container network namespace,另一端连接host network namespace 二、Docker容器默认网络模型工作原理 2.1 容器访问外网