Docker网络

理解Docker0

清空所有镜像

测试
查看容器的内部网络地址 ip addr
image
三个网络

首先 docker是如何处理容器网络访问的?
image

查看容器的内部网络地址 ip addr 发现容器启动的时候会得到一个 eth0@if71 ip地址 docker分配的!
docker exec -it tomcat01 ip addr 不用进容器就能直接查看ip
image
尝试ping容器内部
image
成功!

原理

1.我们每启动一个docker容器,docker就会给docker容器分配一个ip,我们只要安装了docker,就会有一个网卡docker0
桥接模式,使用的技术是veth-pair技术

启动一个tomcat
image

再启动一个tommcat,发现又多了一对网卡
image

发现容器带来网卡都是一对一对出现的

容器内
image

容器外
image

veth-pair就是一对的虚拟设备接口,他们都是成对出现的,一段连着协议,一段彼此相连
正因为这个特性,veth-pair充当一个桥梁,连接各种虚拟网络设备
OpenStac,Docekr容器直接连接,OVS的连接,都是使用veth-pair技术

测试tomcatwjn和tomcatwjn1 是否可以ping通

docker exec -it tomcatwjn ping 172.17.0.5

image
成功!

结论 容器与容器之间可以ping通

网络模型图
image

结论 tomcatwjn 和 tomcatwjn1 是共用一个路由器,docker0.
所有的容器不指定网络的情况下,都是docker0路由的,docker会给我们的容器分配一个默认的可用ip

小结

Docker使用的是Linux的桥接,宿主机中是一个Docker容器的网桥 docker0
image
Docker中所有的网络接口都是虚拟的。虚拟的转发效率高!(内网传递文件!)

posted @ 2022-10-19 17:59  习惯有点小脾气  阅读(30)  评论(0编辑  收藏  举报