Featured image of post docker在一块网卡上创建多个macvlan子网

docker在一块网卡上创建多个macvlan子网

docker在一块网卡上创建多个macvlan子网,不可以进行多次创建,需要在一次创建中把多个子网同时创建好。说明及创建命令如下:

  • 一个subnet对应一个gatewaygateway必须在subnet的范围内,直接改为你所使用的真实的gateway即可。这样可以不同的subnet设置不同的gateway,控制不同的容器走不同的线路(比如有的需要代理,有的不能代理)。

  • --subnet=fe80::/64 --ipv6可以打开ipv6,无需设置公网ipv6的subnet,只要这样设置在这个macvlan网络上的容器就能自动获取到公网ipv6。

  • --opt parent=eth0指定本macvlan网络绑定到父级网卡eth0上。

  • --opt com.docker.network.bridge.name=mymacvlan指定macvlan网络名称为mymacvlan

  • 最后的mymacvlan是docker中的网络名称。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
docker network create \
    --driver macvlan \
    --subnet=10.0.0.0/24 --gateway "10.0.0.2" \
    --subnet=10.0.1.0/24 --gateway "10.0.1.1" \
    --subnet=10.0.2.0/24 --gateway "10.0.2.254" \    
    --subnet=fe80::/64 --ipv6 \
    --opt parent=eth0 \
    --opt macvlan_mode=bridge \
    --opt com.docker.network.bridge.name=mymacvlan \
    mymacvlan
Built with Hugo
主题 StackJimmy 设计