获取请求的真实ip

一、node代码

javascript 复制代码
const app = express();
app.get("/abc", (req, res) => {
 const forwardedForHeader = req.get("X-Forwarded-For");
 const realIpHeader = req.get("X-Real-IP");
 let realIp = null;

 if (forwardedForHeader && forwardedForHeader.length > 0) {
   // 逗号分隔的IP地址列表,取第一个地址为真实IP
   realIp = forwardedForHeader.split(",")[0].trim();
 } else if (realIpHeader) {
   // 如果X-Forwarded-For未设置,则使用X-Real-IP
   realIp = realIpHeader.trim();
 }
 if (!realIp) {
   realIp = req.socket.remoteAddress;
 }
 logger.info(realIp, "------真实ip------");
})

二、nginx配置(必须配置)

bash 复制代码
location ^~ /api {
    proxy_pass http://127.0.0.1:1111/a/;
    proxy_set_header Host 127.0.0.1;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

如果没配置,那么就可能拿不到真实ip

三、完成

相关推荐
我药打十个10 小时前
搭建稳定的ip代理池方法
爬虫·计算机网络·ip·ip代理池
阿巴~阿巴~1 天前
“可达”方能“可靠”:深入解析网络层在TCP通信中的基石作用
运维·服务器·网络·网络协议·tcp/ip·ip·tcp
GateWorld1 天前
FPGA DSP模块使用中不易察觉的坑
fpga开发·ip·实战经验·fpga dsp使用
阿巴~阿巴~2 天前
深入解析IP分片:从原理到现代实践的全面指南
运维·服务器·网络·网络协议·tcp/ip·ip
阿巴~阿巴~2 天前
路由的本质:从逐跳转发到全球互联的决策机制解析
网络·网络协议·tcp/ip·智能路由器·ip·tcp·路由
阿巴~阿巴~2 天前
私网与公网的协同之道:NAT、IP架构与互联网连接全景解析
网络·网络协议·tcp/ip·架构·ip·tcp·公网私网ip
源远流长jerry2 天前
curl、ping、iptables、iperf、tcpdump解析
网络·网络协议·测试工具·ip·tcpdump
27669582922 天前
dy x-tt-session-dtrait 逆向分析
python·node·dy·dy逆向·抖音请求头逆向·session-dtrait·dtrait
科技块儿4 天前
跨境电商用户IP真实性评估:高精度查询与离线库的融合策略
数据库·网络协议·tcp/ip·ip
xiangxiongfly9155 天前
Node http
http·node·文件上传·请求·文件下载·响应