我正在跟踪向特定端点发出请求的用户IP地址。
这是我跟踪IP地址的方式:
const ipAddress = req.headers['x-forwarded-for'] ||
req.connection.remoteAddress ||
req.socket.remoteAddress ||
(req.connection.socket ? req.connection.socket.remoteAddress : null)
记录结果时,我得到一个带有两个数字的字符串。
例如:XX.XX.XX.117, XXX.XX.XX.234
两个数字分别是什么?
如果请求从代理服务器转发到您的端点,则您将从req.headers['x-forwarded-for']
中获得多个IP地址。第一个将是客户端IP,随后的IP地址将依次是代理的IP。在您的情况下,客户端和服务器之间只有一个代理,因此您只能看到两个IP。简而言之,第一个是客户端IP,第二个是代理IP。
有关X-Forwarded-For的更多参考