Node.js 错误-getHostByAddr ENOTFOUND::ffff:18.234.32.226
当我将此实用程序与nodejs一起使用时: 像这样:Node.js 错误-getHostByAddr ENOTFOUND::ffff:18.234.32.226,node.js,dns,reverse-dns,Node.js,Dns,Reverse Dns,当我将此实用程序与nodejs一起使用时: 像这样: const {remoteAddress, remotePort} = req.connection; dns.reverse(remoteAddress, (err, hostnames) => { if(err){ console.error(err.message); } }); 我知道这个错误- getHostByAddr ENOTFOUND::ffff:18.234.32.22
const {remoteAddress, remotePort} = req.connection;
dns.reverse(remoteAddress, (err, hostnames) => {
if(err){
console.error(err.message);
}
});
我知道这个错误-
getHostByAddr ENOTFOUND::ffff:18.234.32.226
地址/ip开头的ffff内容是什么?我假设我应该在传递到dns.reverse lookup调用之前去掉它?
:ffff:18.234.32.226
是一个IPv4地址(18.234.32.226
),映射为IPv6地址,您可以通过使用:
检测到它
这是一种常见的情况,发生在配置为首选IPv6而非IPv4的系统上(您可以在Unix系统中使用文件/etc/gai.conf
进行配置)
第3.7节对此进行了解释:
API还提供了不同类型的兼容性:能力用于IPv6应用程序与IPv4应用程序互操作。这
功能使用IPv6中定义的IPv4映射IPv6地址格式
寻址体系结构规范[2]。此地址格式
允许将IPv4节点的IPv4地址表示为IPv6
地址。IPv4地址被编码为
IPv6地址和高阶96位保留固定前缀
0:0:0:0:0:FFFF。IPv4映射地址的写入方式如下:
::FFFF:<IPv4-address>
::FFFF:
您需要将系统配置为不将IPv4地址映射为IPv6地址,或者使用知道如何处理这些IP地址(完全合法)的库。或者在更糟糕的情况下,确实要从一开始就删除
::ffff:
。:ffff:18.234.32.226
是一个IPv4地址(18.234.32.226
),映射为IPv6地址,您可以通过使用:
检测到该地址
这是一种常见的情况,发生在配置为首选IPv6而非IPv4的系统上(您可以在Unix系统中使用文件/etc/gai.conf
进行配置)
第3.7节对此进行了解释:
API还提供了不同类型的兼容性:能力用于IPv6应用程序与IPv4应用程序互操作。这
功能使用IPv6中定义的IPv4映射IPv6地址格式
寻址体系结构规范[2]。此地址格式
允许将IPv4节点的IPv4地址表示为IPv6
地址。IPv4地址被编码为
IPv6地址和高阶96位保留固定前缀
0:0:0:0:0:FFFF。IPv4映射地址的写入方式如下:
::FFFF:<IPv4-address>
::FFFF:
您需要将系统配置为不将IPv4地址映射为IPv6地址,或者使用知道如何处理这些IP地址(完全合法)的库。或者,在更糟糕的情况下,确实要删除开头的::ffff: