当前位置: 首页 > news >正文

docker进阶——docker网络简解

在这里插入图片描述

0:我们需要先知道的是:

网桥

网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器。

网关

网关是一个大概念,不具体特指一类产品,只要连接两个不同的网络的设备都可以叫网关;而‘路由器’么一般特指能够实现路由寻找和转发的特定类产品,路由器很显然能够实现网关的功能。

交换机

工作在数据链路层,原理等同于多端口网桥。作用是连接数个相同网段的不同主机,减少网内冲突,隔离冲突域。利用存储转发和过滤技术来从物理上分割网段。

1:Docker网络模式:

docker网络有五种模式

包括
bridge 网桥模式
host 宿主机模式
none 无网络模式
container 容器模式
自定义模式

使用sheel命令可以查看默认网络

docker network ls

在这里插入图片描述
docker中默认的网络有:bridge,host,none,而前两个则是docker常用的网络模式。

1.1:网桥模式:

在这里插入图片描述
所有的未指定网络类型的将由docker为你分配在默认docker网桥的对应网段下。

图中我的青龙面板就划分在默认网桥下,ip为172.168.0.2

自然,相同网段的容器是可以ping通的

需要注意的是默认网桥是无法通过容器名进行访问的
在这里插入图片描述

在这里插入图片描述
docker0网桥将默认网络的容器进行统一的网络管理,然后再和宿主机网络进行联系。


1.2:宿主机模式:

在这里插入图片描述
宿主机模式同样是常用的网络模式,相对于bridge,他没有网桥直接和eth0进行通信。

其就相当于直接使用docker宿主机的网络,是该主机的主人,所以称之为host
它的有点是少了一层自然要快一点,缺点是不容器区分隔离,有碍于容器的隔离性。

1.3:none模式:

无网络模式,就是没有配置网络。。。。

1.4:container模式:

在这里插入图片描述
container模式就是可以两个或多个容器公用一个网络ip进行数据通信转发。图中只是一个例子,实际需求往往按照需求进行配置。

1.5:自定义模式:

1.5.1: overlay模式网络

使用–net=overlay,覆盖网络将多个Docker守护程序连接在一起,并使群集服务能够相互通信。还可以使用覆盖网络来促进群集服务和独立容器之间的通信,或者在不同Docker守护程序上的两个独立容器之间进行通信

1.5.2:macvlan网络

Macvlan网络允许您为容器分配MAC地址,使其显示为网络上的物理设备。Docker守护程序通过其MAC地址将流量路由到容器。macvlan 在处理期望直接连接到物理网络的传统应用程序时,使用驱动程序有时是最佳选择,而不是通过Docker主机的网络堆叠进行路由

3:后言:

希望能一起学习,一起进步!

相关文章:

  • 2022/09/01 day01:Git概述
  • 2022/09/02 day02:连接远程仓库,推送、克隆
  • 第18章linux系统-备份与恢复
  • 2022/09/03 day03:搭建私有git服务器与IDEA中使用Git
  • VScode+esp-idf:例程(esp32-web-camera)保存图片到sd卡
  • 读书笔记<高速上手C11 14 17>
  • Transformer,浅析归纳偏置对模型缩放的影响
  • 两款Java中小医院信息管理系统源码
  • CS:GO开服架设服务器搭建游戏配置方法教程教学插件配置下载资源配置
  • 微服务分布式架构中,如何实现优雅发版?
  • PCB电路设计规范细节
  • APS智能排产助力啤酒行业实施“利润优先”策略
  • 【JavaWeb】JDBC实战
  • 系统篇: squashfs 文件系统
  • Ubuntu 搭建小熊派 hi3861 环境
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • co.js - 让异步代码同步化
  • ES6系列(二)变量的解构赋值
  • idea + plantuml 画流程图
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • Lucene解析 - 基本概念
  • Mysql优化
  • Redis中的lru算法实现
  • 创建一个Struts2项目maven 方式
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 日剧·日综资源集合(建议收藏)
  • 如何进阶一名有竞争力的程序员?
  • 少走弯路,给Java 1~5 年程序员的建议
  • 设计模式 开闭原则
  • 世界上最简单的无等待算法(getAndIncrement)
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 微信支付JSAPI,实测!终极方案
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • 大数据全解:定义、价值及挑战
  • 如何在招聘中考核.NET架构师
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (poj1.3.2)1791(构造法模拟)
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (五)关系数据库标准语言SQL
  • (一) storm的集群安装与配置
  • (原)Matlab的svmtrain和svmclassify
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (原創) 如何讓IE7按第二次Ctrl + Tab時,回到原來的索引標籤? (Web) (IE) (OS) (Windows)...
  • (转)人的集合论——移山之道
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • .bat批处理(六):替换字符串中匹配的子串