docker网络原理笔记

docker 网络,使用的是CNM 网络模型方案。 libnetwork是对CNM的实现, 提供docker核心网络架构的全部功能

Docker的网络子系统是可插拔的,使用驱动程序。默认情况下存在多个驱动程序,并提供核心网络功能:

bridge:默认网络驱动程序。如果未指定驱动程序,则这是您要创建的网络类型。当您的应用程序在需要通信的独立容器中运行时,通常会使用桥接网络。
host:对于独立容器,删除容器和Docker主机之间的网络隔离,并直接使用主机的网络。host 仅适用于Docker 17.06及更高版本的swarm服务
overlay:覆盖网络将多个Docker守护程序连接在一起,并使群集服务能够相互通信。您还可以使用覆盖网络来促进群集服务和独立容器之间的通信,或者在不同Docker守护程序上的两个独立容器之间进行通信。此策略消除了在这些容器之间执行OS级别路由的需要。
macvlan:Macvlan网络允许您为容器分配MAC地址,使其显示为网络上的物理设备。Docker守护程序通过其MAC地址将流量路由到容器。macvlan 在处理期望直接连接到物理网络的传统应用程序时,使用驱动程序有时是最佳选择,而不是通过Docker主机的网络堆栈进行路由。

none:对于此容器,禁用所有网络。通常与自定义网络驱动程序一起使用。none不适用于群组服务

  1. 单机桥接:

linux Docker 创建单机桥接网络采用内置的桥接驱动,而 Windows Docker 创建时使用内置的 NAT 驱动

在Linux 上网络名称为 bridge

查看:

[root@docker1 docker]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
5c3bb6e979f5        bridge              bridge              local
3f3eb1511ddd        host                host                local
3db9e188251c        none                null                local

查看详情:

[root@docker1 docker]# docker network inspect bridge
[
    {
        "Name": "bridge",
        "Id": "5c3bb6e979f54af8e7001a9a8d35647a657cb8fb7d610180214b782fb28bb9b2",
        "Created": "2019-08-10T05:10:14.092819245-04:00",
        "Scope": "local
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值