合 Docker修改docker_gwbridge的默认网段
简介
docker_gwbridge
是一个本地桥接网络,在以下两种情况会自动创建:
- 初始化或者加入一个 swarm 集群时,用来在不同 hosts 主机的不同节点间进行通信;
- 再容器中的所有网络都不能访问外部时,Docker 会将
docker_gwbridge
网络加入到容器中,用来访问外部网络或者其他的集群节点。
docker_gwbridge接口为使用多主机群覆盖网络的所有容器和任务提供默认网关功能。它是在每个Docker主机上创建的,当它们加入集群时。
docker_gwbridge是一个本地桥接网络,在以下两种情况会自动创建:
(1)初始化或者加入一个 swarm 集群时,用来在不同 hosts 主机的不同节点间进行通信;
(2)再容器中的所有网络都不能访问外部时,Docker 会将docker_gwbridge网络加入到容器中,用来访问外部网络或者其他的集群节点。
网关的作用就是网络转发,所以172.18请求在本地的docker_gwbridge虚拟网关拦截后就会进入虚拟网段中,导致无法向外转发网络请求
docker_gwbridge
默认使用172.18.0.0/16
作为子网范围,但是会遇到 host 所在网络环境也存在172.18.0.0/16
的情况,因此需要修改docker_gwbridge
的子网范围,以避免正常172.18.0.0/16
网段终端的连接问题。
要删除docker_gwbridge这个网络,但是一般是无法直接删除的,因为被很多容器使用,可以通过docker network inspect docker_gwbridge
查看被哪些容器占用,返回结果中的Containers中的Name就是容器。