Docker默认网桥驱动为bridge,不可通过daemon.json更改驱动类型,仅能配置其行为参数:bip指定子网、default-address-pools定义地址池、ip-masq控制SNAT、mtu设置MTU、bridge指定已有网桥设备,修改后需重启Docker生效。
docker 的默认网桥驱动是 bridge,它由守护进程自动启用,不能也不需要在 daemon.json 中显式配置“驱动类型”。所谓“配置默认网桥”,实际是指调整它的行为参数(如子网、网关、mtu、是否启用 ip 伪装等),而不是切换驱动——bridge 驱动本身是硬编码的默认值,无法通过 daemon.json 改为 host、macvlan 等其他驱动。
真正可配、也最常配的几项如下:
bip:指定docker0网桥的 IPv4 地址和子网,例如"bip": "192.168.100.1/24"
→ 它会直接覆盖默认的172.17.0.1/16,并重建docker0接口fixed-cidr(已弃用,不推荐):旧版用于限制容器 IP 分配范围,新版应使用default-address-pools-
default-address-pools:定义后续docker network create自动分配时的地址池,支持多段、避开内网冲突
例如:"default-address-pools": [ {"base": "172.28.0.0/16", "size": 24}, {"base": "10.200.0.0/16", "size": 24} ]→ Docker 会按顺序从中取
/24子网分配给新 bridge 网络(如br-xxxx) ip-masq:控制是否对容器出向流量做 SNAT,默认true;若宿主机已路由可达,可设为falsemtu:设置docker0的 MTU 值,如"mtu": 1450(适配某些云平台或 VXLAN 封装)bridge:指定自定义网桥设备名(非驱动),例如"bridge": "my-docker0"
→ 要求该网桥设备已存在且已配置好 IP,Docker 启动时将复用它,不再新建docker0
注意:修改后必须重启 Docker 才生效
sudo systemctl restart docker
重启后可通过 ip addr show docker0 或 docker network inspect bridge 验证配置是否落地。
不支持在 daemon.json 中写 "driver": "bridge" 或类似字段——这既无效,也会导致守护进程启动失败。



















