![获取 registry.npmjs.org IPv6 地址的 EHOSTUNREACH](https://linux22.com/image/1027064/%E8%8E%B7%E5%8F%96%20registry.npmjs.org%20IPv6%20%E5%9C%B0%E5%9D%80%E7%9A%84%20EHOSTUNREACH.png)
我的笔记本电脑运行的是 22.04,我的 DSL 路由器允许在 LAN 上使用 IPv6 地址。我的网络没有公共 IPv6 地址,只有 IPv4 地址。
我可以正常访问所有类型的地址。但是,如果我运行“npm install”或类似命令,包括“ping registry.npmjs.org”,连接就会失败,并出现 EHOSTUNREACH 错误。
运行这些命令后,我可以访问 registry.npmjs.org
$ sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
[sudo] password for david:
net.ipv6.conf.all.disable_ipv6 = 1
$ sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6 = 1
我希望有一种干净的方法来获取 IPv6 地址,而无需禁用 IPv6 支持。