docker0网桥

安装Docker之后,宿主机会多出docker0。同时在宿主机的内核路由表会增加一条静态路由

$ route -n
...
172.17.0.0    0.0.0.0    255.255.0.0    U    0    0    0    docker0

当使用docker run 运行容器时,在容器中会看到两个网卡lo和eth0,其中eth0的IP为172.17.0.2/16和宿主机网桥docker0在同一个网段。在查看容器的路由,默认网关恰恰是docker0。此时查看宿主机的网络设备,可以发现veth开头的网卡。

在Linux中,可以使用brctl查看和管理网桥

$ sudo brctl show

docker0网桥是Docker daemon启动时自动创建的,IP默认为172.17.0.1/16,Docker提供参数帮助用户自定义docker0.

  • --bip=CIDR 设置docker0的IP地址和子网范围,使用CIDR格式

  • --fixed-cidr=CIDR 限制IP范围

  • --mtu=BYTES

自定义网桥

$ sudo brctl addbr br0
$ sudo ifconfig br0 188.18.0.1

启动Docker daemon时,使用--bridge=br0

在Ubuntu中,可以将参数在/etc/default/dockerDOCKER_OPTS 配置

results matching ""

    No results matching ""