如何在三层架构中获取客户端IP?
问题描述:
我目前正在研究具有以下体系结构的模块:如何在三层架构中获取客户端IP?
当客户端发出请求时,它将被转发到在其前面具有ELB的节点服务器。节点服务器使用不同的调用从另一台服务器托管的后端.NET代码中获取数据。
考虑到这种架构,是否可以在.NET编写的后端代码中访问客户端IP?
答
您可以在节点
在你请求对象有一个叫做连接属性,这是一个net.Socket对象获得IP地址。该net.Socket对象有一个属性remoteAddress,但有可能IP服务器后面代理服务器,因此尝试下面的代码来获得IP
request.headers['x-forwarded-for']
检查下方堆叠链路更多的答案