我在运行 docker 的来宾服务器上有一个 IPv6 IP
301b:e0d0:401:0348:lk19:7:0:2
中的配置/etc/resolv.conf
domain my.domain
nameserver ::1
nameserver 301b:e0d0:401:0348:505:7:0:2
nameserver 301b:e0d0:401:0348:506:7:0:2
如何获取它的子网?我们可以从右侧开始更改第四个值。但保持其他值相同。
我试图在我的网络中为其设置子网。在我的 docker-compose.yml 文件中设置它
networks:
default:
driver: bridge
enable_ipv6: true
ipam:
config:
- subnet: 301b:e0d0:401:0348::/64
services:
ipv6nat:
container_name: ipv6nat
restart: always
image: robbertkl/ipv6nat
privileged: true
network_mode: host
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /lib/modules:/lib/modules:ro
但它不起作用。无法使用 ping6 到具有此格式的容器中的其他网络
# ping6 301b:e0d0:401:0348:[DIFFERENT_VALUE_HERE]:7:0:2
unreachable
向您的提供商、ISP 或任何其他机构询问地址空间的授权。如果你只有一个
/64
,你还不够。理想情况下,您应该能够请求 a/48
,但如果他们很吝啬,他们可能会给您类似 a 的东西/56
。不,你不能。您的网络是 a
/64
,这意味着一半的位用于主机地址。Docker 主机和您在该组合中创建的网络必须位于不同的子网中。但是你们都是同一个子网上的网络。
地址的
301b:e0d0:401:0348::
一部分定义了/64
所有内容的子网,之后我只用于同一子网上的主机。