nginx中配置的X-Forwared-For拿到的是真实IP还是NAT转换后的外网IP
现在运营商用NAT技术转换了IP,那X-Forward-For中拿到的是客户端真实的内网IP还是出口网关的外网IP, 还是都记录到了?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
现在运营商用NAT技术转换了IP,那X-Forward-For中拿到的是客户端真实的内网IP还是出口网关的外网IP, 还是都记录到了?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
X-Forward-For 一般会都记录的,但也可能是伪造的。
引一段 aws 的文档
客户端IP地址
如果查看者向CloudFront发送请求并且不包含
X-Forwarded-For
请求标头,则CloudFront从TCP连接获取查看者的IP地址,添加X-Forwarded-For
包含IP地址的标头,然后将请求转发到源。例如,如果CloudFront192.0.2.2
从TCP连接获取IP地址 ,则它将以下标头转发到源:X-Forwarded-For: 192.0.2.2
如果查看者将请求发送到CloudFront并包括
X-Forwarded-For
请求标头,则CloudFront将从TCP连接获取查看者的IP地址,将其附加到X-Forwarded-For
标头的末尾,然后将请求转发到源。例如,如果查看器请求包括X-Forwarded-For: 192.0.2.4,192.0.2.3
并且CloudFront192.0.2.2
从TCP连接获取IP地址,则它将以下标头转发到源:X-Forwarded-For: 192.0.2.4,192.0.2.3,192.0.2.2
某些应用程序(例如负载平衡器(包括Elastic Load Balancing),Web应用程序防火墙,反向代理,入侵防御系统和API网关)会将转发请求的CloudFront边缘服务器的IP地址附加到
X-Forwarded-For
标头的末尾。例如,如果CloudFront包括X-Forwarded-For: 192.0.2.2
在将其转发到ELB的请求中,如果CloudFront边缘服务器的IP地址是192.0.2.199,则您的EC2实例收到的请求包含以下标头:X-Forwarded-For: 192.0.2.2,192.0.2.199
注意
更多参见:
https://docs.aws.amazon.com/A...
出口网关的外网 IP
肯定是出口的IP了,用户的内网地址在公网上是不能被识别的,比如:你的电脑IP192.168.1.10 ,这个在公网上无法被记录的。