Alexander (HH): REMOTE_ADDR oder SERVER_ADDR?

Beitrag lesen

Moin Moin!

Hallo,
im PHP-Server.Manual habe ich gefunden:

SERVER_ADDR: Die IP-Adresse des Servers, auf dem das aktuelle Skript ausgeführt wird.

Ja, in etwa.

REMOTE_ADDR: Die IP-Adresse, von der aus der Benutzer die aktuelle Seite ansieht.

Nein. Die IP-Adresse des "Gesprächspartners" des Servers. Das ist im einfachsten Fall tatsächlich die IP-Adresse des Rechners, auf dem der Browser läuft. Wenn ein Load Balancer oder Proxy vor dem Webserver steht, kann dort schon nur noch die Proxy-Adresse auftauchen. Wenn jemand hinter einem NAT-Router (DSL-User) oder Proxy (Firmen-User) sitzt, sieht man in aller Regel dessen Adresse (es sei denn, Proxy und Webserver sind sich darüber einig, X-Forwarded-For zu senden bzw. auszuwerten).

Mein Rechner hat aktuelle eine IP-Adresse aus dem 10.0.0.0/8-Netzwerk, jeder Webserver im Internet, den ich ansurfe, wird mir aber eine IP-Adresse aus dem Pool der DTAG (217.91.x.x) attestieren. Es sei denn, ich nutze einen SSH-Tunnel zu einem anderen Rechner, dann komme ich mit einer IP-Adresse aus dem Pool von Hansenet (92.224.x.x) an, obwohl der andere Rechner eine IP-Adresse aus dem 192.168.0.0/16-Netzwerk hat.

Letzteres verstehe ich nicht.
Bisher waren bei mir immer beide Werte gleich.

Laß mich raten: 127.0.0.1. Rechner im Selbstgespräch.

Wann weichen denn beide voneinander ab?

Wenn Du von einem anderen Rechner auf den Server zugreifst.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".