深入解析docker三种网络模式

目录
  • 1.docker默认的三种网络模式:
  • 2.桥接模式
  • 3.host模式
  • 4.none模式

1.docker默认的三种网络模式:

bridge:桥接模式

host:主机模式

none:无网络模式

查看网络模式: docker network ls

2.桥接模式

简介:桥接模式是docker 的默认网络设置,当Docker服务启动时,会在主机上创建一个名为docker0的虚拟网桥,并选择一个和宿主机不同的IP地址和子网分配给docker0网桥

如下图所示:eno16777728是宿主机的网卡,192.168.0.156是宿主机的ip地址,docker0就是docker服务的虚拟网桥。

桥接拓扑图:

网络模式选择桥接模式的容器,就会连接上docker0这个网桥,在通过nat的转换,通过宿主机的网卡,连接外网,就能达到上外网的目的。

如下图所示,我启动了两个容器,就会有两个容器网卡,以及一个docker0虚拟网卡,如果启动三个就会有三个容器网卡,这几个容器网卡都会桥接到docker0网卡,docker0网卡与物理机网卡连接使用的是nat技术

进入某一个容器查看路由情况:

在容器内安装工具:yum -y install net-tools

容器的ip地址是172.17.0.3,他的网关是172.17.0.1,他的数据是发往172.17.0.1这个网关,这个网关也是虚拟网桥的地址,如下图所示,docker0这个虚拟网桥的ip地址就是172.17.0.1。

在宿主机安装工具:yum install -y bridge-utils

然后使用brctl show命令查看桥接情况:

如下图所示就可以看到,docker0这个网桥桥接了30和17这两个容器的网卡.

需要注意的一点如下:

宿主机能访问docker容器是因为有docker0这个虚拟网卡,除宿主机外的机器想访问容器,只能够访问宿主机,这时候正常方式都是使用端口映射,也就是将容器的端口与宿主机的端口进行映射,供外面的机器访问

3.host模式

host 模式:该模式下容器是不会拥有自己的ip地址,而是使用宿主机的ip地址和端口。这种模式的好处就是网络性能比桥接模式的好。缺点就是会占用宿主机的端口,网络的隔离性不太好

以nginx容器为例:启动nginx容器命令并防火墙放开80端口:

docker run -d --net=host mycentos:nginx /usr/local/nginx/sbin/nginx -g “daemon off;”

–net=host是指定网络模式为主机模式,如果不填就是桥接模式

注意:主机模式启动的容器没有自己的IP地址

4.none模式

加上后面的参数就行了 --net=none

none模式没有IP地址,无法连接外网,等于就是断网的状态,作用就是用于测试,生产环境一般不会用到这种

到此这篇关于详解docker三种网络模式的文章就介绍到这了,更多相关docker网络模式内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker的四种网络模式

    Docker 的四种网络模式 Docker 有 bridge.none.host.container 四种网络模式,提供网络隔离.端口映射.容器间互通网络等各种支持,下面开门见山地直接介绍这四种网络模式. 这四种网络模式可以通过启动容器的时候指定,其命令或参数个数如下: 网络模式 参数 说明 host模式 -–net=host 容器和宿主机共享 Network namespace. container模式 –-net={id} 容器和另外一个容器共享 Network namespace. kub

  • Docker安装方法与Docker四种网络模式详解

    1.安装docker yum -y install docker-io 出现complete说明安装完成 2.启动docker服务 service docker start 3.设置docker开机启动 chkconfig docker on 4.基本信息查看 docker version docker info docker images查看镜像 docker ps查看正在运行的容器 docker rmi删除镜像 docker save -o imageName:tag > path/name

  • Docker四种网络模式演示及连通性测试

    目录 Docker 的四种网络模式 host 模式 host 模式演示 container 模式 container 模式演示 none 模式 none 模式演示 bridge 模式 bridge 模式演示 Docker 的四种网络模式 网络模式 网络配置 说明 host(开放式网络模式) –network host 容器和宿主机共享 Network namespace container(联合挂载式网络模式) –network container 多个容器共享一个 Network namesp

  • Docker 网络模式及配置方式

    一.Docker网络模式 docker run 创建 Docker 容器时,可以用 –net 选项指定容器的网络模式,Docker 有以下 4 种网络模式: host 模式,使用 –net=host 指定. container 模式,使用 –net=container:NAME_or_ID 指定. none 模式,使用 –net=none 指定. bridge 模式,使用 –net=bridge 指定,默认设置. host 模式 如果启动容器的时候使用 host 模式,那么这个容器将不会获得一个

  • 深入解析docker三种网络模式

    目录 1.docker默认的三种网络模式: 2.桥接模式 3.host模式 4.none模式 1.docker默认的三种网络模式: bridge:桥接模式 host:主机模式 none:无网络模式 查看网络模式: docker network ls 2.桥接模式 简介:桥接模式是docker 的默认网络设置,当Docker服务启动时,会在主机上创建一个名为docker0的虚拟网桥,并选择一个和宿主机不同的IP地址和子网分配给docker0网桥 如下图所示:eno16777728是宿主机的网卡,1

  • VMware虚拟机三种网络模式区别

    我们知道VMware也分几种版本,普通用户最常用的就是Workstation,但是不管使用哪种版本,我们都能发现在安装过程中让我们选择 网络模式.在默认情况下会选中桥接模式,但有用户会问其他模式是干什么用的?有时候选择了其他模式之后就不能上网了.今天小编就和大家一起探讨一下 VMware 3种网络模式的功能和通信规则. 我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络下的虚拟交换机 VMnet8:用于虚拟NAT网

  • 详解Docker中VLAN网络模式的配置

    前言 Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理.然而,Docker同样有着很多不完善的地方,网络 方面就是Docker比较薄弱的部分.因此,我们有必要深入了解Docker的网络知识,以满足更高的网络需求. Docker网络模式选择 目前已有不少文章介绍了Docker的网络模型,但是在实际应用中还是有不少坑和需要注意的点 在Docker应用到生产环境的时候,网络模型的选择主要有以下几种 1.原生Bridge NAT模式 2.Linux Bridge

  • Docker使用Calico网络模式配置及问题处理方法

    目录 一.Calico介绍 二.Calico优势 三.环境介绍: 四.配置ETCD集群 五. 安装Docker,配置使用集群存储 六.配置calico基于sysinit方式启动 七.测试calico网络 参考: 一.Calico介绍 Calico是一种容器之间互通的网络方案,在虚拟化平台中,比如OpenStack.Docker等都需要实现workloads之间互连,但同时也需要对容器做隔离控制,就像在Internet中的服务仅开放80端口.公有云的多租户一样,提供隔离和管控机制.而在多数的虚拟化

  • VMware WorkStation的三种网络连接方式详解

    一. 首先贴出本人在网络上找到与VMware网络连接相关的知识 安装完虚拟机后,默认安装了两个虚拟网卡,VMnet1和VMnet8,其他的未安装(当然也可以手动安装其他的).其中VMnet1是host网卡,用于host方式连接网络的.VMnet8是NAT网卡,用于NAT方式连接网络的.它们的IP地址是随机生成的,如果要用虚拟机做实验的话,最好将VMnet1到VMnet8的IP地址改掉.习惯上把VMware虚拟网卡使用的网段"固定",使用如下原则:VMnet1对应的网段是192.168.

  • VMware的三种网络连接方式区别

    关于VMware的三种网络连接方式,NAT,Bridged,Host-Only ,在刚接触的时候通常会遇到主机Ping不通虚拟机而虚拟机能Ping得通主机:主机与虚拟机互不相通等等网络问题.本文就这三种连接方式作一一说明,也方便以后翻阅当参考用. 首先,要注意安装完VMware后,控制面板\网络和 Internet\网络连接会多出两块虚拟网卡VMnet1.VMnet2,两个网卡各有用途. 基本拓扑 NAT(网络地址转换) 依靠物理主机的VMnet8网卡上网.虚拟机可以互Ping通,前提是物理主机

  • 深入理解java三种工厂模式

    适用场合: 7.3 工厂模式的适用场合 创建新对象最简单的办法是使用new关键字和具体类.只有在某些场合下,创建和维护对象工厂所带来的额外复杂性才是物有所值.本节概括了这些场合. 7.3.1 动态实现 如果需要像前面自行车的例子一样,创建一些用不同方式实现同一接口的对象,那么可以使用一个工厂方法或简单工厂对象来简化选择实现的过程.这种选择可以是明确进行的也可以是隐含的.前者如自行车那个例子,顾客可以选择需要的自行车型号:而下一节所讲的XHR工厂那个例子则属于后者,该例中所返回的连接对象的类型取决

随机推荐