查看网卡信息

查看ip信息:centos7:ip add或ip addr

  • lo:localhost网卡
  • ens33:对外网卡以太网,本机ip
  • docker0:docker容器和宿主机通信的网卡,Docker容器网桥
    • Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。因为在同一宿主机内的容器都接入同一个网桥,这样容器之间就能够通过容器的Container-IP直接通信。
    • Docker网桥是宿主机虚拟出来的,并不是真实存在的网络设备,外部网络是无法寻址到的,这意味着外部网络无法通过直接Container-IP访问到容器。如果容器希望外部访问能够访问到,可以通过映射容器端口到宿主主机(端口映射),即docker run创建容器时候通过 -p 或 -P 参数来启用,访问容器的时候就通过[宿主机IP]:[容器端口]访问容器。

四种网络模式

docker run 创建docker容器时,可以使用-net指定容器网络模式如下

docker run –net=bridge …等等

  • bridge模式:是docker的默认网络模式 ,不写–net参数,就是bridge模式。
  • host模式:容器和宿主机共享Network namespace
  • container模式:容器和另外一个容器共享Network namespace。 kubernetes中的pod就是多个容器共享一个Network namespace。
  • none模式:容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配veth pair 和网桥连接,配置IP等。

bridge模式

bridge模式是docker默认的网络设置,此模式会为每一个容器分配Network namespace、设置ip等

进入一个bridge模式的容器查看网卡信息如下图

  • lo:localhost网卡,与宿主机网卡一致
  • eth0:容器的网卡,ip等信息

当 Docker 启动时,会自动在主机上创建一个 docker0 虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机。它会在挂载到它的网口之间进行转发。同时,Docker 随机分配一个本地未占用的私有网段(在 RFC1918 中定义)中的一个地址给 docker0 接口。比如典型的 172.17.42.1,掩码为 255.255.0.0。此后启动的容器内的网口也会自动分配一个同一网段(172.17.0.0/16)的地址。

当创建一个 Docker 容器的时候,同时会创建了一对 veth pair 接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包)。这对接口一端在容器内,即 eth0;另一端在本地并被挂载到 docker0 网桥,名称以 veth 开头(例如 vethAQI2QT)。通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。Docker 就创建了在主机和所有容器之间一个虚拟共享网络。

容器ip地址不会暴露到外部,外部无法通过ip寻址

host模式

和宿主机共用一个Network Namespace。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。

如图容器并没有分配PORTS信息

可以访问(如果不能访问请查看防火墙是否关闭或者是否开放此端口)

使用host模式需要考虑安全性,使用host模式启动容器,可以在容器中查看到宿主机中的网络信息。如果隔离性良好的环境(租户的虚拟机中)使用问题不大

none模式

docker容器拥有自己的Network Namespace 但是不为docker容器进行任何网络配置,这个docker 容器没有网卡、ip、路由等信息,需要自己为docker容器添加网卡、ip、路由等信息

container模式

创建的容器和已经存在的容器共享一个Netword Namepace,而不是与宿主机共享,新建的容器不会创建网卡、ip,而是与指定的容器共享IP、端口范围等,容器之间除了网络方面共享,其余都是隔离的



Dockerfile精编细作(六)四种网络模式bridge、host、container、none相关推荐

  1. Dockerfile精编细作(四)构建centos并配置jdk环境

    下载jdk Oracle官方下载 .csdn下载 创建目录 :mkdir -p /root/mycentos/dockerFile 将下载好的jdk复制到dockerFile目录下 在dockerFi ...

  2. Dockerfile精编细作(五)编辑可应用到正式环境的Dockerfile并构建java项目

    java项目 构建Dockerfile 在root目录下创建目录 mkdir myproject 进入myproject创建Dockerfile文件 将可运行的jar包复制到myproject目录下. ...

  3. Docker四种网络模式

    四种网络模式 host模式 使用docker run时使用–net=host指定 Docker使用的网络实际上和宿主机一样,在容器内看到的网卡ip是宿主机上的ip. [root@localhost ~ ...

  4. Docker的四种网络模式和相关网络命令等操作

    Docker网络模式 一.实现原理 二.Docker四种网络模式 三.Docker命令 1.查看网络列表 2.自定义网络固定IP 3.暴露端口 4.在宿主机环境执行容器内命令 5.怎么把宿主机的文件传 ...

  5. Docker网络资源详解 ---(四种网络模式)

    文章目录 前言 一:Dcker网络资源详解 简单云平台生态环境图 普通单节点 桥接图 1.1:网络资源详解:Docker0网卡与四种网络模式 二 . Docker0网卡的解释 1. host模式 2. ...

  6. Docker的四种网络模式

    docker run创建Docker容器时,可以用–net选项指定容器的网络模式,Docker有以下4种网络模式: bridge模式:使用–net =bridge指定,默认设置: host模式:使用– ...

  7. 5、Docker 的四种网络模式

    5.1 Docker 的四种网络模式 网络模式 网络配置 说明 host(开放式网络模式) –network host 容器和宿主机共享 Network namespace container(联合挂 ...

  8. docker容器的四种网络模式

    容器的四种网络模式 docker容器的四种网络模式:bridge 桥接模式.host 模式.container 模式和 none 模式 启动容器时可以使用 –net 参数指定,默认是桥接模式. 以下是 ...

  9. (三)Docker四种网络模式

    实现原理 Docker使用Linux桥接(参考<Linux虚拟网络技术>),在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分 ...

最新文章

  1. django admin组件
  2. java与ios的区别_好奇?Android与iOS究竟有什么区别?终于知道了!
  3. java foreach 删除_为什么java不要在foreach循环里进行元素的remove/add操作
  4. 比较某两个时间的时间戳相等
  5. php连接redis 主从复制,redis怎么进行主从复制
  6. wxWidgets:wxHashTable类用法
  7. 微软.Net开发中的多线程编程总结
  8. C语言中include““与include<>的区别(自定义头文件、预设头文件)
  9. 牛客网【每日一题】4月21日题目精讲 糖糖别胡说,我真的不是签到题目
  10. Python爬取抖音app视频
  11. 蔚来宣布部分车型涨价1万元
  12. 京东发布虎年春晚互动攻略 春晚联名款金碗套装首次曝光
  13. Failure to find com.rongpd:rpd:pom:1.0 in xxx was cached in the local repository, resolution will no
  14. Atitit.信息论原理概论attilax总结
  15. 角度换算数字在线计算机,角度换算成数字(计算器数字转角度换算)
  16. 经纬度在线查询 地名 批量 查询经纬度 经纬度 批量 查询地名
  17. Qt数据可视化(QPieSeries饼状图)
  18. 微信授权登录后,把获取的信息存储到本地数据库中(超详细有用)!
  19. ncbi查找目的基因序列_如何获得基因序列——在NCBI中查找目的基因实例.PDF
  20. 面向对象:余愿,知你冷暖,懂你悲欢,与你共黄昏,也能问你粥可温

热门文章

  1. 一维线搜索确定最优步长
  2. 去除面部黑色素小妙招_减轻面部色素沉着的10种小妙招
  3. Visio Studio Code 图标美化
  4. 使用flask实现图书管理
  5. 王兴终入场:滴滴拉锯,ofo危局
  6. 复合句 - 状语从句
  7. 微信小程序日记、微信小程序个人空间、个人日记
  8. 两台PC通过网线传输文件方法
  9. 人像摄影技巧——镜头差异可改变脸部印象
  10. 资本扎堆?自动驾驶“梦幻开局”