NewFuture / DDNS

:triangular_flag_on_post: 自动更新域名解析到本机IP(支持dnspod,阿里DNS,CloudFlare,华为云,DNSCOM...)
https://ddns.newfuture.cc/
MIT License
4.23k stars 650 forks source link

[debug]无法从指定网卡获取 IPv6 地址 #259

Closed 10935336 closed 1 year ago

10935336 commented 3 years ago

Describe the bug [描述]

指定获取 em1 或 em2 网卡的 IPv6 地址,提示 Fail to get ipv6 address。 该网卡确实有 IPv6 全球可路由地址,使用 index6:"default" 可以正常获取。

To Reproduce [复现]

在config.josn 中填入下方的配置,并运行 ddns -c /nvme/ddns/config.json(pip 安装与二进制均试过)

version info [基本信息]

config file [配置文件]

{
  "$schema": "https://ddns.newfuture.cc/schema/v2.8.json",
  "debug": true,
  "dns": "dnspod",
  "id": "xxxxx",
  "token": "xxxxxxxx",
  "index4": "default",
  "index6": ["interface:em1"],
  "proxy": null,
  "ttl": null,
  "ipv4": [],
  "ipv6": ["xxxxxxx"]
}

debug output [调试输出]

# ddns -c /nvme/ddns/config.json
DDNS[ v2.9.10@2021-04-16T10:44:04+00:00 ] run: posix linux
Configuration was loaded from <== /nvme/ddns/config.json
========================= Mon Apr 26 22:48:04 2021 =========================
2021-04-26 22:48:04,952 <cache.load> 48@/usr/local/lib/python3.6/site-packages/util/cache.py 
[DEBUG] load cache data from /tmp/ddns.cache
2021-04-26 22:48:04,952 <run.main> 193@/usr/local/lib/python3.6/site-packages/run.py 
[DEBUG] Cache is empty.
2021-04-26 22:48:04,957 <run.update_ip> 141@/usr/local/lib/python3.6/site-packages/run.py 
[ERROR] Fail to get ipv6 address
# ./ddns -c /nvme/ddns/config.json
DDNS[ v2.9.10@2021-04-16T10:44:04+00:00 ] run: posix linux
Configuration was loaded from <== /nvme/ddns/config.json
========================= Mon Apr 26 22:55:03 2021 =========================
2021-04-26 22:55:03,550 <cache.load> 48@util/cache.py 
[DEBUG] load cache data from /tmp/ddns.cache
2021-04-26 22:55:03,550 <run.main> 193@run.py 
[DEBUG] Cache is empty.
2021-04-26 22:55:03,555 <run.update_ip> 141@run.py 
[ERROR] Fail to get ipv6 address!

Additional context

dell 服务器网卡默认名称即为 em1 em2 em3 em4

# ifconfig
em1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1492
        inet 10.1.1.241  netmask 255.255.255.0  broadcast 10.1.1.255
        inet6 240e:xxxxxxxxxxx  prefixlen 128  scopeid 0x0<global>
        inet6 240e:xxxxxxxxxxxxxx  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::xxxxxxxxxx  prefixlen 64  scopeid 0x20<link>
        ether a4:ba:xxxxxxxx  txqueuelen 1000  (Ethernet)
        RX packets 240384920  bytes 54949796556 (51.1 GiB)
        RX errors 27  dropped 0  overruns 0  frame 27
        TX packets 491767733  bytes 273022598078 (254.2 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

em2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1492
        inet 10.1.2.241  netmask 255.255.255.0  broadcast 10.1.2.255
        inet6 240e:xxxxxxxxxx  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::xxxxxxxxxxxxx  prefixlen 64  scopeid 0x20<link>
        inet6 240e:xxxxxxxxxxxxx  prefixlen 64  scopeid 0x0<global>
        inet6 240e:xxxxxxxxxxxxxx  prefixlen 64  scopeid 0x0<global>
        inet6 240e:xxxxxxxxxxx  prefixlen 128  scopeid 0x0<global>
        inet6 240e:xxxxxxxxxxxxxxx  prefixlen 64  scopeid 0x0<global>
        ether a4:xxxxxxxxxx  txqueuelen 1000  (Ethernet)
        RX packets 224563611  bytes 24496714804 (22.8 GiB)
        RX errors 87  dropped 0  overruns 0  frame 87
        TX packets 365851530  bytes 119438807565 (111.2 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
NewFuture commented 1 year ago

这个功能还没实现,文档上的一处错误。 用 #144 这个来跟踪这个问题