gpt4 book ai didi

node.js - 为什么 node/Express 中的 req.ip 返回冒号分隔的 IP 地址?

转载 作者:搜寻专家 更新时间:2023-10-31 23:47:30 25 4
gpt4 key购买 nike

我正在尝试记录远程客户端 IP。听起来很基本,Express 在请求对象上提供了“ip”属性,如在 req.ip 中,以获取此信息。此外,还有 req.ips 从涉及代理的 X-Forwarded-For 获取多个 IP 地址。我还尝试了 npm 模块 request -ip。我的问题是它们都返回客户端 IP 地址,如

 ::ffff:A.B.C.D

其中 A.B.C.D 确实是我要查找的地址。但是,我的问题是:那里的前缀是什么?我可以理解 req.ips 或 X-Forwarded-For 返回多个 IP 地址,但即使在那里我也希望真实的 IP 地址不是空值。

当然我可以获得最后一个地址,但我想知道以冒号分隔的空白条目是什么意思,即使是在尝试仅获取单个 req.ip 地址时也是如此?

最佳答案

双冒号 :: 是 IPv6 中的快捷方式,用于表示 this Server Fault question 中提到的一串零。 .第一部分 ::fff: 是 IPv4 地址的前缀,作为 the transition 的一部分嵌入 IPv6 地址中到 IPv6。

::ffff:A.B.C.D
--v6-- --v4--

关于node.js - 为什么 node/Express 中的 req.ip 返回冒号分隔的 IP 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33120858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com