最近学习docker的时候发现多了很多网卡,这些似乎都和docker有关,所以我便往下深入了解了一番;
一、docker网卡
docker 0是安装 docker 的时候生成的虚拟网桥,它在内核层连通了其他物理或者虚拟网卡,这就可以将所有容器和宿主机都放在了同一个物理网络。docker默认指定了docker0接口的IP和子网掩码,让宿主机和容器之间可以通过网桥相互通信;
veth5f51206@if6 和 veth563fabf@if10 这两个网卡是我启动容器以后生成的,进入
到容器中,容器里面也有一个类似的网卡,使用的是evth-pair技术,一段连着协议,一段彼此相连,充当一个桥梁,并连接各种虚拟网络设备;
二、docker 容器的网络模式
使用docker network ls 命令可以看到dockernetwork一共有三种模式
docker网络模式 | 说明 | docker 设置命令 |
bridge | 默认模式,容器启动后会通过自动获取一个地址 | --net =bridge |
host | 指共享宿主机的网络 | --net =host |
none | 创建的容器没有网络地址,只有 lo 网卡; | --net =none/3、 |
1、bridge模式
指定bridge模式的时候,会在docker0 之上分配一个地址,是evth-pair技术;
2、host模式
使用host 模式,就是和宿主机的网络配置一样了;
3、none模式
指定为none模式的时候,网卡就只有本地lo回环地址;
我是chililopp,正在学习k8s,之后如果有新的总结或者体验也会发出来,如果有说的不对的地方,还请指点,十分感谢阅读!