IP Adresse via PHP auslesen und speichern

Moin,

da hierzulande derzeit eine Diskussion darüber entbrannt ist, ob die IP möglicherweise Rückschlüsse auf den Surfer zulässt (ganz deutlich: ob er damit identifizierbar ist => Verstoß gg. das Datenschutzgesetz) und einige sogar fordern, die IPs nicht mal mehr auf dem Server mitzuloggen, täte jede Community prophylaktisch aus Selbstschutz schon mal gut daran, sie zumindest nicht mehr zu veröffentlichen.

Ich persönlich finde die Diskussion Quatsch, denn wie sollte z.B. ich rauskriegen, wer am 30.9.2010 um 14:28 Uhr mit der IP xx.xx.xx.xx unterwegs war? Okay, wenn ich bei einem Provider arbeiten würde und an einer signifikanten Betriebsschnittstelle säße, die Zugriff auf diese Daten hat. Allerdings wäre in dem Falle die Weitergabe ohnehin illegal (also Personendaten zur IP). Etwas anderes wäre, wenn z.B. die Großindustrie (oder auch die Strafverfolgungsbehörden ohne Anlass) auf diese Datenbanken Zugriff hätte. Dagegen würde ich an vorderster Stelle mitdemonstrieren. Aber soweit sind wir (noch) nicht. Wenngleich ich mich schon manchmal frage, wie die Musikindustrie an diese Daten kommt.

Ich weiß auch gar nicht, was man als "Normalsterblicher" mit der IP anfangen wollte. Aus eigenen Erfahrungen weiß ich, dass man damit jemanden bestenfalls auf einen Radius von ca. 10km vermuten könnte (Selbstversuch Wohnung -> Büro bei gleichem Provider) Da gab es gelegentlich schon mal 'ne Übereinstimmung bei den ersten beiden IP-Blöcken. Und ob die Strecken nicht noch weiter auseinanderliegen können, kann ich nicht mal sagen. Das einzige, was man damit erfahren kann, ist, bei welchem Provider jemand ist. Aber damit auf eine bestimmte Person zurückzuschließen, halte ich für mehr als gewagt (solange diese keine feste IP hat).
Okay, wie das allerdings auf dem Dorf ist, kann ich nicht beurteilen. In der Großstadt ist das aus meiner Sicht Humbug. Ich würd' mir jedenfalls viel mehr Sorgen über die Browser-Fingerprints und Super-Cookies machen. Wer mal spaßeshalber einen Test machen möchte: http://panopticlick.eff.org/

Greetz
cw
 
Zuletzt bearbeitet:
Die Diskussion ist m. E. n. scheinheilig... Denn grundsätzlich speichert jeder Apache (in der Standardkonfiguration) die Zeit, die IP Adresse und die Seite die aufgerufen wurde in einem Log...
 
Eben. Allerdings kann man es ja den Serverbetreibern zur Auflage machen, die IP künftig nicht mehr zu speichern. Bleibt nur die Frage, wer das und wie es geprüft werden soll ;-)
Aber nichts ist so unsinnig, als dass es nicht auch beschlossen werden könnte.

Greetz
cw
 
In D noch nicht ganz so verbreitet, aber auch auf dem Vormarsch sind Provider, die dem User überhaupt keine public IP mehr geben.
Insbesondere Billig-Provider können es sich überhaupt nicht leisten aus dem begrenzten Vorrat an public IP´s genug für sich zu reservieren um allen Usern eine davon zu geben, auch nicht dynamisch.
Nachdem IPv6 sich nicht besonders durchsetzt, heisst die Lösung der Provider NAT, sprich sämtliche User einer ganzen Stadt werden über die selbe public IP geroutet, und die User bekommen nur noch private IP´s.

Daraus folgen 2 Dinge:
1) Jeder Versuch IP´s zu loggen scheitert kläglich, denn das Einzige was da geloggt wird ist die public IP vom NAT des Providers, eine (nachträgliche) Identifizierung des Users ist selbst für den Provider nahezu unmöglich, selbst wenn zur Strafverfolgung eine Behörde zum Provider geht und fragt, welcher User am xx um xx Uhr mit IP xxx unterwegs war, dann kann der Provider nur die Stadt angeben, aus der der User kommt, bestenfalls noch eine Liste der zig1000 User die an dem Tag um die Zeit online waren.
2) Alle Services die auf IP´s basieren funktionieren nicht mehr richtig, P2P Programme bekommen (selbst mit noch so ausgefeilten NAT-Traversals) oft überhaupt keine Verbindung mehr, Server wie Rapidshare erlauben plötzlich nicht mehr einen download pro User, sondern einen Download pro Stadt, usw.

Ich persönliche denke mal, das ist durchaus ein Vorteil, im Sinne von Privatshäre.
Allerdings bedeutet es für den Fragesteller hier:
Das geht mit $_SERVER['REMOTE_ADDR']
Heutzutage macht das aber keinen Sinn mehr, selbst wenn du es hin bekommst, hast du zumindest mit dem Teil der User die hinter einem NAT sitzen diverse Probleme beim Auswerten der Adressen.
 
Guten Morgen zusammen.

Das Thema ist zwar schon eine ganze Weile nciht mehr in Nutzung,
aber meine Frage passt recht gut dazu, daher poste ich mal hier.

Unzwar geht es um Folgendes: ich bastel mir seit einigen Wochen
ein eigenes Browsergame zusammen. Jedes Browsergame braucht User.
Am Besten kommt daran durch Werbung, insbesondere Mund zu Mund
bzw. User zu User. Daher hab ich eine recht übliche Überlegung aufgegriffen,
nämlich den Freundschaftslink. Jemand spielt das Spiel verschickt einen
Link und wenn wer draufklickt, bekommt der User dafür eine Belohnung.

Nun kommen wir zum eigentlichen Thema. Ich will natürlich nciht,
dass sich jemand hinsetzt und immernur auf Refresh klickt um möglichst viel
von der Belohnung zu zehren. Einfachste Lösung wären wohl Cookies.
Problem dabei ist, dass diese ohne weiteres gelöscht werden können.
Daher war die Ersatzlösung logischerweise über die IP zu gehen.
Problem ist allerdings durch den Anbieter wird häufig die IP gewechselt,
vorzugsweise 1mal am Tag. Das macht die Abfrage, ob diese IP den Link
schon besucht hat, recht... unmöglich. Allerdings habe ich bei einem anderen
Browsergame bereits gesehen, dass es irgendwie funktioniert.
Sämtliche Cookies gelöscht, Router reconnected, also andere IP gehabt,
dennoch hat der Server erkannt, dass ich die selbe Person bin.

Jemand also vielleicht noch andere Ideen für dieses Problem?
Oder gibt es möglicherweise noch eine erweiterte Lösung mit IP-Adressen?

Danke schonmal für eure Zeit und Mühen.
Hoffe ich habe alles genau genug erklärt.
Beste Grüße
Simon
 
Nur das Verschicken sollte noch nix geben. Aber wenn sich der neue User anmeldet, dann ist eine Belohnung fällig.

Der Link der generiert wird, hat ein generierter Code als Parameter. Oder du gibst den generierten Code einfach so im Mail mit. Bei der Anmeldung des Neuusers wird dieser Code eingelöst. In deiner DB hast gespeichert, welcher bestehende User welchen Code versendet hat. Wird der Code eingelöst, bekommt der alte User den Bonus.

Da ist nix mit Refresh - jeder Code ist einmal Gültig.
 
Es gibt 100te Lösungsansätze, von irgendwelchen versteckten Einträgen in der Registry, über serverseitig gespeicherte IP, bis zu Mischprüfungen wo mehrere Sachen überprüft werden, z.B. IP + Browserversion.
Das Ganze scheitert aber grundsätzlich an 2 Dingen.
1) Alles was auf der Clientseite gespeichert wird, egal wie versteckt, ist komplett weg, wenn der User seinen PC neu installiert, oder einen VirtualPC verwendet.
2) Alles was auf der Serverseite gespeichert wird ist sinnlos, wenn der User hinter einem NAT sitzt oder einen Proxy verwendet.

Das Einzige was effektiv funktioniert ist die M$-Methode, wo bei der WGA-Prüfung dein PC Hardware-Daten an M$ schickt, die bei M$ gespeichert werden, so dass sie bei einer Neuinstallation anhand deiner Hardware feststellen können, dass es der selbe PC ist.
Wie wir aber alle wissen, funktioniert auch das nicht wirklich, weil der User ganz simpel das Programm zur WGA-Prüfung löschen kann.

Eine andere Lösung dazu lautet Memberliste und Bonus-Code.
Jede Neuanmeldung kann max von einem bestehenden User empfohlen worden sein.
Also kommt ins Anmeldeformular ein extra Feld für den Bonus-Code rein, und wenn der neue User da was angibt, kannst du dem passenden User seine Belohnung geben.
Allerdings hast du damit immer noch das Problem, dass ein User sich mehrmals anmelden kann und sich quasi selbst empfiehlt.
 
Hallo zusammen !

Die Idee mit dem Ref-Code, der sich nur auf die Anmeldung bezieht,
passt nciht ganz in mein System bzw. in meine Überlegung.
..aber der Vorschlag mit dem Test auf Browserversion macht das Ganze doch
schon etwas sicherer. Vielen Dank für diesen Tipp.

Beste Grüße
Simon.
 
Zurück