Antworten:
Ich würde nur das verwenden request.remote_ip
, das einfach ist und es funktioniert. Gibt es einen Grund, warum Sie eine andere Methode benötigen?
Siehe: Erhalten Sie eine echte IP-Adresse in der lokalen Rails-Entwicklungsumgebung für einige andere Dinge, die Sie mit Client-Server-IPs tun können.
request.remote_ip
ist eine Interpretation aller verfügbaren IP-Adressinformationen und wird eine Vermutung anstellen. Wenn Sie direkt auf die Variablen zugreifen, übernehmen Sie die Verantwortung dafür, sie in der richtigen Rangfolge zu testen. Proxies führen eine Reihe von Headern ein, die Umgebungsvariablen mit unterschiedlichen Namen erstellen.