2016-04-21 156 views
1

我跑码头工人守护与全局IPv6使用它的容器:无法ping泊坞窗IPv6的容器

docker daemon --ipv6 --fixed-cidr-v6="xxxx:xxxx:xxxx:xxxx::/64" 

后它,我跑码头工人容器:

docker run -d --name my-container some-image 

它成功地得到了全球IPv6地址(我检查了docker inspect my-container)。但我不能给这个IP的Ping我的容器:

Destination unreachable: Address unreachable 

但我可以成功地ping docker0桥通过它的IPv6地址。的route -n -6 输出包含下一行:

Destination      Next Hop     Flag Met Ref Use If 
    xxxx:xxxx:xxxx:xxxx::/64   ::       U 256 0  0 docker0 
    xxxx:xxxx:xxxx:xxxx::/64   ::       U 1024 0  0 docker0 
    fe80::/64      ::       U 256 0  0 docker0 

docker0接口具有全局IPv6地址:

inet6 addr: xxxx:xxxx:xxxx:xxxx::1/64 Scope:Global 

xxxx:xxxx:xxxx:xxxx::处处是一样的,这是我eth0接口的全局IPv6地址

是否泊坞窗需要一些额外的配置来通过IPv6访问我的容器?

回答

0

Mb您使用错误的ping命令。对于ipv6是ping6。

$ ping6 2607:f0d0:1002:51::4 
+0

我使用ping6 – Cortwave

0

在你的客户操作系统假设IPv6的正确配置可能你是从主机OS不查验集装箱,但外面和网络发现协议未配置。其他主机不知道您的容器是否位于主机后面。我用的IPv6(在主机操作系统)容器开始后这样做(在Systemd。服务文件的ExecStartPost条款)

  1. /usr/sbin目录/ sysctl的net.ipv6.conf。 接口名称 .proxy_ndp = 1
  2. 的/ usr/bin中/ IP -6嘶附加代理$(搬运工检查--format {{.NetworkSettings.GlobalIPv6Address}} CONTAINER_NAME)dev的接口名称

小心IPv6:码头开发人员在回复错误报告时说,他们没有足够的时间在版本1.10中准备IPv6生产,并且没有提到1.11。