https://docs.docker.com/config/daemon/ipv6/
/etc/docker/daemon.json
#官方
{
"experimental": true,
"ip6tables": true
}
或者
{
"ipv6": true,
"experimental": true,
"ip6tables": true,
"fixed-cidr-v6": "2001:db8:1::/64"
}
ipv6设置为true,启用对ipv6的支持
experimental,启用实验特性,ip6tables是docker的一个实验功能,所以需要设为true。
ip6tables,启用ip6tables,docker会在ip6tables中配置docker网络相关的规则链。
fixed-cidr-v6,设置默认网络IPv6网段(必填)。
如果不启动ip6tables功能,则不会自动创建ip6tables策略,无法实现跨节点通信;
docker network create --ipv6 --subnet 2001:0DB8::/112 ip6net
docker network create --ipv6 --subnet 2001:0DB8::/112 lnet6
docker network create -d bridge --ipv6 --subnet "fd00:db8:2:ddee::/64" --gateway="fd00:db8:2:ddee::1" --subnet=172.104.1.0/24 --gateway=172.104.1.1 ipv6bridge
##不配置ipv4 network,则会自动创建:"Subnet": "172.103.2.0/24","Gateway": "172.103.2.1"
docker network create --ipv6 --subnet "fd00:db8:2:ddff::/64" --gateway="fd00:db8:2:ddff::1" ipv6only
## 创建的ipv6 network不指定gateway,但是创建容器时,使用该network,容器的ipv6默认网关为:fd00:db8:2:de00::1
docker network create --ipv6 --subnet "fd00:db8:2:de00::/64" ipv6only-nogateway
#查看ipv6网络
docker network inspect bridge
networks:
my-network:
enable_ipv6: true
driver: bridge
ipam:
driver: default
config:
- subnet: fd01:3200:3200::/64
gateway: fd01:3200:3200::1
#或者使用外部网络
networks:
harbor:
external: true
name: ipv6bridge
curl http://[::1]:80
curl http://[2001:da8:100d:ad::942:216]:80