Я создал колбу API.Кто бы ни посещал этот API, я могу отслеживать его IP-адрес.В моей ситуации я могу отслеживать локальный IP-адрес из любой системы, которая подключена к моему интернету, где я запускал код локально.Я развернул код при запуске API.Он может отслеживать публичный адрес.Я хочу, чтобы после развертывания отслеживались как общедоступные, так и локальные IP-адреса.
Есть ли способ отследить локальный адрес вместе с общедоступным адресом даже после развертывания с использованием фляги и python?
from netifaces import interfaces, ifaddresses, AF_INET
for ifaceName in interfaces():
addresses = [i['addr'] for i in
ifaddresses(ifaceName).setdefault(AF_INET, [{'addr':'No IP addr'}] )]
print '%s: %s' % (ifaceName, ', '.join(addresses))
import socket
hostname = socket.gethostname()
IPAddr = socket.gethostbyname(hostname)
Я попробовал все это, но безрезультатно, не смог получить желаемый результат
@app.route("/get_my_ip", methods=["GET"])
def get_my_ip():
return jsonify({'ip': request.environ['REMOTE_ADDR']}), 200
Result:10.0.0.1
После развертывания кода я могу получить только публичный IP.Мне нужно отслеживать локальный IP-адрес вместе с общедоступным IP-адресом.
Например: если 10 различных систем, подключенных к одному Интернету, использовали развернутый API, я должен получить 10 разных IP-адресов, но я получаю общедоступный IP-адрес, которыйявляется общим для всех.Но я ожидаю, что и публичный IP, и локальный UP, например, 106.89.78.90 (публичный IP) 10.0.0.1 (приватный IP) из одной системы, затем 106.89.78.90/10.0.0.2 из другой системы и т. Д.