sanjusss / aliyun-ddns

阿里云动态域名工具,支持docker和ipv6。
BSD 3-Clause "New" or "Revised" License
500 stars 94 forks source link

只能获取到IIPV4,不能获取到IPV6 #37

Closed nituowei closed 3 years ago

nituowei commented 3 years ago

我是在威联通NAS中用的docker,然后用Host模式,只能获取到IIPV4,不能获取到IPV6

[12/06/2020 13:26:51]从 test-ipv6.com接口 获取公网IPv6失败。
[12/06/2020 13:26:51]从 dyndns.com接口 获取公网IPv6失败。
[12/06/2020 13:26:51]从 ip.sb接口 获取公网IPv6失败。
[12/06/2020 13:26:51]从 ident.me接口 获取公网IPv6失败。
[12/06/2020 13:26:51]从 ipify.org接口 获取公网IPv6失败。
[12/06/2020 13:26:51]获取公网IPv6失败,所有API接口均无法返回IPv6地

sanjusss commented 3 years ago

查看一下系统设置,nas本身已经获取了ipv6了吧?nas获取的ipv6的前几位是什么?

nituowei commented 3 years ago

查看一下系统设置,nas本身已经获取了ipv6了吧?nas获取的ipv6的前几位是什么?

作者您好: 首先非常感谢您看到我的问题并回复我,这对我这个入门级选手很重要 ,非常感动。 跟您汇报一下情况,我使用的是IKUAI和IOPENWRT双路由系统,然后我的IKUAI是可以使用IPV6的,而我的OPENWRT因为相当于是胖路由吧,就是不负责DHCP服务,只是分发一个网关用来扶墙,所以我就没有开启IPV6,恰巧我用的OP的版本也是不支持IPV6的获取的,所以我怎么样折腾都不行。后来我升级了一下功能,很好的支持了IPV6,开启功能后 ,使用您的插件可以正常货期到我NAS对应的IPV6了,但是还有些小担心,因为不知道为什么,您设置了这么多的IPV6网站来获取IPV6公网地址 ,而我的地址只能被最后一个网站识别出来,具体如下:

[12/07/2020 11:15:37]从 dyndns.com接口 获取公网IPv6失败。
[12/07/2020 11:15:37]从 ip.sb接口 获取公网IPv6失败。
[12/07/2020 11:15:37]从 ident.me接口 获取公网IPv6失败。
[12/07/2020 11:15:37]从 test-ipv6.com接口 获取公网IPv6失败。
[12/07/2020 11:15:38]当前公网IPv6为 2408:XXXX:810:4f:XXXX:5b99:ce40:XXXX(ipify.org接口)。

然后我进入 http://test-ipv6.com/ 测试网站是可以测试出我的IPV6的,但是有时候也测不出来,当前情况是可以的。 具体显示如下:

你的公网 IPv4 地址是 XXX 你的公网 IPv6 地址是 2408:XXXX:810:4f:XXXX:5b99:ce40:XXXX 你已接入 IPv6,因此我们增加了一个标签页,显示你能否访问其他 IPv6 网站。 你正在使用 IPv4 或 IPv6 隧道。 如果你使用了 VPN,则此 VPN 只对一套协议起作用。

以上就是我当前的反馈,感谢您的无私奉献,以及对我的帮助,祝身体健康。

sanjusss commented 3 years ago

ipv6接口基本都在国外,部分地区访问可能会有问题。 如果你只需要IPv6,可以考虑使用CHECKLOCAL变量,直接读取网卡获取ipv6。 也可以开两个容器,一个获取ipv4(在线接口模式),一个获取ipv6(读取网卡模式)

hexiaofire commented 3 years ago

ipv6接口基本都在国外,部分地区访问可能会有问题。 如果你只需要IPv6,可以考虑使用CHECKLOCAL变量,直接读取网卡获取ipv6。 也可以开两个容器,一个获取ipv4(在线接口模式),一个获取ipv6(读取网卡模式)

请问checklocal 变量 直接读取网卡,值填什么?我也是相同问题。

sanjusss commented 3 years ago

请问checklocal 变量 直接读取网卡,值填什么?我也是相同问题。

@hexiaofire
直接读取网卡,首先要设置容器的网络模式为host。然后需要修改以下环境变量:
CHECKLOCAL:设置为true IPV4NETS:如果要获取本地IPv4地址,设置这个变量,本地网卡的IPv4网段。格式示例:“192.168.1.0/24”。多个可选网段用“,”隔开。 IPV6NETS:如果要获取本地IPv6地址,设置这个变量,本地网卡的IPv4网段。格式示例:“240e::/16”。多个可选网段用“,”隔开。

hexiaofire commented 3 years ago

请问checklocal 变量 直接读取网卡,值填什么?我也是相同问题。

@hexiaofire 直接读取网卡,首先要设置容器的网络模式为host。然后需要修改以下环境变量: CHECKLOCAL:设置为true IPV4NETS:如果要获取本地IPv4地址,设置这个变量,本地网卡的IPv4网段。格式示例:“192.168.1.0/24”。多个可选网段用“,”隔开。 IPV6NETS:如果要获取本地IPv6地址,设置这个变量,本地网卡的IPv4网段。格式示例:“240e::/16”。多个可选网段用“,”隔开。

非常感谢!!!!!