Configure IPv6 network
ip -6 addr show eth0 | grep global
ip -6 addr show eth0 | grep global
inet6 2a01:4f8:c013:ae57::1/64 scope global
This implies pool is 2a01:4f8:c013:ae57::/64
Next, determine /80 slices from it for use in container network
Pool | Note |
---|---|
2a01:4f8:c013:ae57:0000::/80 | Pool 1 |
2a01:4f8:c013:ae57:0001::/80 | Pool 2 |
2a01:4f8:c013:ae57:0002::/80 | Pool 3 |
… |
docker network create --ipv6 --subnet 2a01:4f8:c013:ae57:0001::/80 proxy
Verify network is created and inspect it
docker network list
docker network inspect proxy
By default docker does IPv6 NAT as well. Disable NAT in ip6tables by creating daemon.json
sudo vim /etc/docker/daemon.json
{
"ip6tables": false
}
Next, restarted docker engine with sudo systemctl restart docker
Flush any old rules came as result of previous config
sudo ip6tables -t nat -F POSTROUTING
Once verified, moved deploy NGINX Proxy Manager.