理解Docker0
清空所有环境
ping + ip
Ping发送一个ICMP(Internet Control Messages Protocol)即因特网信报控制协议;回声请求消息给目的地并报告是否收到所希望的ICMPecho (ICMP回声应答)。它是用来检查网络是否通畅或者网络连接速度的命令。
原理
- 1、我们每启动一个 docker容器, docker就会给 docker容器分配一个ip,我们只要安装了 docker,就会有一个网卡 docker0。
桥接模式,使用的技术是evth-pair技术!
再次测试ip addr - 2、在启动一个容器测试,发现又多了一对网卡!
- 3、我们来测试下 tomcat01和 tomcat02是否可以ping通!
绘制一个网络模型图:
结论: tomcat01和 tomcat(02是公用的一个路由器, docker0
所有的容器不指定网络的情况下,都是 docker0路由的, docker:会给我们的容器分配一个默认的可用IP
小结
Docker使用的是 Linux的桥接 ,通过veth-pari技术
启动容器,不指定网络就会一直往下分配,最多分配65535个
Docker中的所有的网络接口都是虚拟的。虚拟的转发效率高!
只要容器删除,对应网桥一对就没了!
尚硅谷
docker network网络模式有几种
bridge
docker0默认就是bridge
host
none
自定义的网络
docker容器内部的ip是有可能会发生改变的,在重启时启动顺改变之后
bridge到底是什么
网桥说明
代码
两两验证
host 直接使用宿主机的P地址与外界进行通信,不再需要额外进行NAT转换
用host模式的话端口映射就没有意义了
网络配置情况和宿主机的外网几乎是一摸一样的
好处,外部主机可以和容器直接通信
none模式
container模式
Alpine