Docker 网络 面试题及答案
所属分类 docker
浏览量 9
Docker 网络 面试题及答案
1. Docker CNM 网络模型由哪三部分组成?
Sandbox(沙盒):容器独立网络栈,包含 IP、路由、网卡。
Endpoint(端点):容器接入网络的接口。
Network(网络):一组可互通的端点集合。
2. Docker 有哪几种默认网络?各自特点?
bridge:默认网络,docker0 网桥,容器有独立 IP,单机互通。
host:共享宿主机网络,无独立 IP,性能高、隔离差。
none:无网络,安全场景使用。
overlay:跨主机容器通信,用于集群(Swarm)。
3. bridge 和 host 网络最大区别?
bridge:隔离好,需端口映射,有独立 IP。
host:无隔离,直接占用主机端口,性能最优。
4. docker0 网桥是什么?容器如何通信?
docker0 是 Docker 默认虚拟网桥。
每个容器有一对 veth pair 网卡,一端在容器,一端挂在 docker0,
同一网桥下二层互通,外网通过 iptables NAT 转发。
5. 为什么默认 bridge 不能用容器名访问?
默认 bridge 不开启 Docker DNS,只能 IP 访问;
自定义 bridge 才支持容器名自动解析。
6. 如何实现容器名互相访问?
创建自定义 bridge 网络
容器启动时指定 --network
同一网络内可直接 ping 容器名
7. -p 和 -P 的区别?
-p 主机端口:容器端口:手动指定端口映射
-P:随机映射主机高端口
8. 一个容器能属于多个网络吗?
可以。
使用 docker network connect 可加入多个网络,实现精细隔离。
9. 生产为什么推荐自定义 bridge?
支持容器名 DNS 解析
网络隔离更好
可自定义子网、网关
更易维护和排错
10. overlay 网络作用?
实现不同宿主机上容器直接互通,用于 Docker Swarm 等集群环境。
11. 外部如何访问容器服务?
通过端口映射 -p 主机端口:容器端口,
访问 宿主机IP:主机端口,Docker 通过 DNAT 转发到容器。
12. 容器访问外网流程?
容器 → veth 网卡 → docker0 → 宿主机 IP 转发 → iptables SNAT → 外网。
上一篇
胜者成事的人性规则
数据库的关键字和保留字
《用心带孩子:为人父母不可不知的十门必修课》笔记