通常来说,AWS ELB不会直接返回客户端的IP地址,而是返回其自身的IP地址。要获取客户端的IP地址,需要使用AWS ELB的“X-Forwarded-For”头部。以下是一个示例Node.js代码片段,说明如何获取客户端IP:
const http = require('http');
const server = http.createServer((req, res) => {
const ipAddress = req.headers['x-forwarded-for'] || req.connection.remoteAddress;
console.log('Client IP address is:', ipAddress);
res.end('Hello World!');
});
server.listen(3000);
在上述代码中,“x-forwarded-for”头部将包含客户端IP地址。如果该头部不存在,将使用“connection.remoteAddress”获取客户端IP地址。使用此代码片段可以解决AWS ELB不提供IP地址服务的问题。