AWS上的Python获取远程IP地址

时间:2017-10-03 10:28:42

标签: javascript python flask ip-address

我在AWS Elastic Beanstalk上运行了一个Python / Flask应用程序。

我需要在触发Python脚本时获取用户的远程IP地址,但在python脚本中使用request.environ [' REMOTE_ADDR']是不行的。它返回的是我服务器的私有IP地址,而不是用户的IP地址。

http://xxxxxx-env.eu-west-2.elasticbeanstalk.com/xxx

xxx解析为我的Python应用程序包含:

if ('REMOTE_ADDR' in request.headers):
    print (request.environ['REMOTE_ADDR'])

但结果是: 172.31.xx.xxx

当我的实际IP是:

83.164.xx.xxx

有人能指出我如何获取用户的远程IP吗?

1 个答案:

答案 0 :(得分:2)

我设法解决了这个问题。 Elastic Beanstalk自动传递远程IP地址,可以按如下方式检索:

if (request.access_route):
    #return remote ip
    remoteIP = request.access_route[0]
    #return full ip list (if more than one passed through)
    remoteIPRaw = request.access_route