首页 > 其他 > 详细

docker知识5---docker网络

时间:2021-07-29 22:26:46      阅读:27      评论:0      收藏:0      [点我收藏+]

docker容器网络
  在顶层设计中,Docker 网络架构由 3 个主要部分构成:CNM、Libnetwork 和驱动。
    1)CNM 是设计标准。在 CNM 中,规定了 Docker 网络架构的基础组成要素。
    2)Libnetwork 是 CNM 的具体实现,并且被 Docker 采用,Libnetwork 通过 Go 语言编写,并实现了 CNM 中列举的核心组件。
    3)驱动通过实现特定网络拓扑的方式来拓展该模型的能力。

  network namespace 是实现网络虚拟化的重要功能,它能创建多个隔离的网络空间,它们有独自的网络栈信息。不管是虚拟机还是容器,运行的时候仿佛自己就在独立的网络中。
  有了不同 network namespace 之后,也就有了网络的隔离,但是如果它们之间没有办法通信,也没有实际用处。要把两个网络连接起来,linux 提供了 veth pair 。可以把 veth pair 当做是双向的 pipe(管道),从一个方向发送的网络数据,可以直接被另外一端接收到;或者也可以想象成两个 namespace 直接通过一个特殊的虚拟网卡连接起来,可以直接通信。

docker run -d --name test1 busybox /bin/sh -c "while true;do sleep 3600;done"
docker exec -it test1 ip a
docker run -d --name test2 busybox /bin/sh -c "while true;do sleep 3600;done"
docker exec -it test2 ip a
docker exec -it test1 /bin/sh
ping 172.17.0.3 -c 3
exit 
ip a

技术分享图片

 

docker知识5---docker网络

原文:https://www.cnblogs.com/chalon/p/15076916.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!