summaryrefslogtreecommitdiff
path: root/scripts/remote_host_test.py
blob: c38e3c7f4c0dc649dc8c6958f01540b3926e1605 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from flask import request
from flask import jsonify
from flask import Flask
import re
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

@app.route("/testme", methods=["GET"])
def get_my_ip():
    host = request.headers.getlist("X-Forwarded-For")[0]
    regex = re.compile(r'[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+')
    forwarded_ip = regex.search(host).group()
    return jsonify(
      {
        'ip1': request.remote_addr,
        'ip2': request.environ['REMOTE_ADDR'],
        'ip3': request.environ.get('HTTP_HOST', "nothing yet"),
        'ip4': forwarded_ip,
        'ip5': request.environ.get('HTTP_X_REAL_IP', request.remote_addr)
      }
    ), 200
if __name__ == "__main__":
    app.run(port=9994)