wget 和 cURL 显式 IPv6 地址

wget 和 cURL 显式 IPv6 地址

您可以使用-6cURL 或 wget 中的标志来使用域的 IPv6 地址,例如google.com.

我无法通过显式传递 IPv6 地址来获取页面。

我试过:

wget -6 http://[fe80::a00:27ff:fe00:80b9]:8080/

8080该主机肯定在我的本地网络上通过 IPv6 运行服务器,通过netstat和进行确认ifconfig。当我运行上面的代码时,我得到了Connecting to fe80:a00:27ff:fe00:80b9:8080... failed: Invalid argument.从错误消息中可以明显看出,IPv6 地址和端口没有按照我的预期进行解释。

当我谷歌时,所有示例都是使用-6域名,找不到具有明确 IPv6 地址的示例。

答案1

这似乎是 wget 中的一个错误:https://bugs.launchpad.net/ubuntu/+source/wget/+bug/1566930

显然,wget 无法正确解析添加到链路本地 IPv6 地址的范围。

我建议为您的服务器提供实际的 IPv6 地址(公共地址),或者,如果您无法获得这些地址,则提供 ULA(唯一本地地址)。这些在没有范围标识符的情况下也可以工作,因此也可以在 wget 中工作。

相关内容