Es kann sehr hilfreich sein, auf einen Dienst zuzugreifen, um Ihre öffentliche IP-Adresse zu erfahren. Wie funktioniert der Prozess? Der heutige SuperUser Q & A-Beitrag enthält die Antwort auf die Frage eines neugierigen Lesers.
Die heutige Frage-Antwort-Sitzung wird uns mit freundlicher Genehmigung von SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-gesteuerten Gruppierung von Q & A-Websites.
Screenshot mit freundlicher Genehmigung von Douglas Porter (Flickr) .
Die Frage
SuperUser-Leser Harry möchte wissen, wie die öffentliche IP-Adresse eines Computers ermittelt wird:
Mir sind Dienstleistungen wie bekannt Was ist meine IP-Adresse? Dadurch kann ein Benutzer seine öffentliche IP-Adresse finden. Ich möchte jedoch wissen, wie ein solcher Dienst von Grund auf neu geschrieben wird. Ich brauche den Code selbst nicht, ich möchte nur die Konzepte und die damit verbundenen Schritte kennen (Pseudocode, wenn Sie so wollen).
Folgendes weiß ich bereits über die Erstellung eines solchen Dienstes:
- Ich würde eine Webanwendung im Internet einrichten, die Port 80 abhört.
- Wenn eine Anfrage eingeht, überprüfe ich die Quell-IP-Adresse und packe sie dann in eine gut formatierte HTML-Antwort, die der Benutzer sehen kann.
Ist es das oder gibt es hier noch etwas anderes?
Was sind die Schritte, um die öffentliche IP-Adresse eines Computers zu ermitteln?
Die Antwort
Der SuperUser-Mitarbeiter Scott Chamberlain hat die Antwort für uns:
Zum größten Teil ist das, was Sie aufgelistet haben, alles, was Sie für die Grundfunktionalität tun müssen.
Es gibt jedoch noch eine weitere Möglichkeit. Sie könnten das überprüfen X-Forwarded-For Header, der von einigen Proxys (der für das Caching verwendeten Art) und / oder Load Balancern hinzugefügt wurde, und meldet stattdessen diese Adresse, da die Adresse, die Sie von der Quelladresse erhalten, die Adresse des Proxys ist, nicht die des Benutzers.
Dieser Header wird jedoch vom Benutzer bereitgestellt, sodass nicht nachgewiesen werden kann, dass die Adresse in aufgeführt ist X-Forwarded-For ist die tatsächliche Quelladresse des Benutzers.
Haben Sie der Erklärung etwas hinzuzufügen? Ton aus in den Kommentaren. Möchten Sie weitere Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Den vollständigen Diskussionsthread finden Sie hier .