Einführung in die IP-Adresse

Um 'IP-Adresse in PHP ermitteln' zu lernen, untersuchen wir zunächst die IP-Adresse. Eine IP-Adresse oder eine Internetprotokolladresse ist eine numerische Adresse oder Bezeichnung, die für jedes mit einem Netzwerk verbundene System oder Gerät gilt. Die IP-Adresse wird jedem solchen Gerät zugewiesen. Diese Geräte verwenden das Internetprotokoll für jede Art von Kommunikation.

IP-Version

Die folgenden Punkte erläutern die IP-Version:

  • Eine IP-Version wird gemäß dem Bit des Internetprotokolls definiert. Beispielsweise definiert IPv4, eine frühere Version, eine 32-Bit-Internetprotokolladresse. Mit dem Wachstum des Internets ist IPv6 entstanden, das ein 128-Bit-Nummern-IP-Label definiert. IPv6 wird seit 1995 bis heute verwendet. Die Internet Protocol-Adresse ist in einer für Menschen verständlichen Sprache verfasst. Ein Beispiel für IPv4 ist 170.17.260.2 und ein Beispiel für IPv6 ist 2001: db8: 2: 1434: 1: 587: 5: 2.
  • Der durch Internetprotokolladressen erfasste Speicherplatz wird global verwaltet. Eine Registrierung mit dem Namen "Internet Assigned Numbers Authority" sowie die anderen fünf regionalen Registrierungen ermöglichen die Speicherverwaltung für Internetprotokolladressen. Die IANA ist verantwortlich für die Zuweisung und Verwaltung von Speicherplätzen für Internetprotokolladressen an alle Endbenutzer und andere Internetanbieter in ihren festgelegten Bereichen oder Gebieten. In ähnlicher Weise wird allen Geräten, die mit einem Internetdienstanbieternetzwerk verbunden sind, eine eindeutige Internetprotokolladresse zugewiesen.
  • Es gibt statische Internetprotokolladressen, die sich nicht häufig ändern. Sie werden den Servern bereitgestellt. Die Internetdienstanbieter stellen einer Maschine, die ein Modem verwendet, eine spezifische und eindeutige Internetprotokolladresse zur Verfügung. Diese IP-Adresse ist für eine Sitzung eindeutig und kann sich für die nächste Sitzung ändern.

IP-Adresse in PHP identifizieren und zurückgeben

Aus Sicherheitsgründen sammeln die Sites die IP-Adressen der Besucher ihrer Sites. Es gibt eine einfache Möglichkeit, diese Adresse in PHP abzurufen. In PHP gibt es ein bestimmtes Array, das die IP-Adresse Ihres Computers unterstützt und zurückgibt. Ein Array wird als '$ _SERVER' bezeichnet. Es enthält Informationen zu den Pfaden, Überschriften und Skriptpositionen. Der Webserver erstellt die für das Array $ _SERVER erforderlichen Informationen. In einigen Fällen erstellt der Server nicht alle für das Array erforderlichen Informationen oder stellt diese nicht zur Verfügung. Einige Informationen werden möglicherweise weggelassen. Somit gibt es ein anderes Array, das in solchen Fällen verwendet werden kann. Es wird als "SERVER_ADDR" geschrieben. Dieses Array gibt die IP-Adresse des Servers zurück, unter dem das Skript ausgeführt wird.

Methoden Verwenden Sie diese Methode, um die IP-Adresse in PHP abzurufen

Unten sehen Sie das Beispiel, mit dem Sie eine IP-Adresse in PHP erhalten:

Beispiele # 1

Am einfachsten ist es, $ _SERVER mit 'REMOTE_ADDR' zu verwenden. Dabei wird die IP-Adresse des Benutzers zurückgegeben, der gerade die Seite anzeigt.

  • Beispiel mit ('REMOTE_ADDR') zur Identifizierung der IP-Adresse des Servers in PHP.

Code:

<_?php
echo 'User IP - '.$_SERVER('REMOTE_ADDR');
?>

Ausgabe:

Beispiel # 2

Eine andere Methode mit dem Namen "SERVER_ADDR", mit der auch die IP-Adresse des Servers abgerufen wird.

  • Beispiel mit ('SERVER_ADDR') zur Identifizierung der IP-Adresse des Servers in PHP.

Code:

<_?php
// PHP program to retrieve server's Internet Protocol address
// Creating a variable to store the server address
$ip_server = $_SERVER('SERVER_ADDR');
// Displaying the retrieved address
echo "Server IP Address is: $ip_server";
?>

Ausgabe:

Erläuterung zum obigen Programm: Das obige Beispiel-Array ($ _SERVER) ist hilfreich, wenn der Computer nicht über einen Proxy angeschlossen ist. Wenn der Computer über oder über den Proxyserver mit dem Internet verbunden ist, gibt $ _SERVER ('REMOTE_ADDR') in PHP nicht die richtige IP-Adresse zurück. Es wird nur die IP-Adresse des Proxy-Servers und des Computers des Benutzers oder Clients zurückgegeben. In diesem Fall wird eine andere Methode verwendet, um die richtige Adresse abzurufen.

Beispiel # 3

Das folgende Beispiel wird verwendet, um die richtige und echte IP-Adresse zurückzugeben, selbst wenn sich der Computer hinter einem Proxyserver versteckt. Es verwendet ein zusätzliches Paar von SERVER-Variablen, die verfügbar sind, um die genaue IP-Adresse des Client-Systems oder -Computers abzurufen. Sie sind als HTTP_CLIENT_IP und HTTP_X_FORWARDED_FOR bekannt.

  • Beispiel mit ('HTTP_CLIENT_IP') und ('HTTP_X_FORWARDED_FOR'), um die IP-Adresse des Servers in PHP zu identifizieren.

Code:

<_?php
function RetrieveUserIP()
(
if(!empty($_SERVER('HTTP_CLIENT_IP')))
(
$address=$_SERVER('HTTP_CLIENT_IP');
)
elseif(!empty($_SERVER('HTTP_X_FORWARDED_FOR')))
(
$address=$_SERVER('HTTP_X_FORWARDED_FOR');
)
else
(
$address=$_SERVER('REMOTE_ADDR');
)
return $address;
)
echo 'User IP Address is'.RetrieveUserIP();
?>

Ausgabe:

Um den Ablauf der Aktionen des obigen Codes zu verstehen, kann auf das folgende Ablaufdiagramm verwiesen werden.

Erläuterung zum obigen Programm: Im obigen Beispiel zum Abrufen der IP-Adresse werden zwei Variablen verwendet: ('HTTP_CLIENT_IP') und ('HTTP_X_FORWARDED_FOR'). Im Programm machen wir unseren ersten Versuch, ihn mit HTTP_CLIENT_IP direkt vom Computer zu entfernen. Ist dies nicht möglich, versuchen wir, die IP-Adresse über HTTP_X_FORWARDD_FOR weiterzuleiten. Wenn beide Bedingungen null sind, versuchen wir, die IP-Adresse mit der Variablen REMOTE_ADDR abzurufen.

Zu beachtende Punkte

Nachfolgend sind die Punkte zu beachten, um eine IP-Adresse in PHP zu erhalten:

1. Wenn wir den obigen Code ausgeführt haben, wird die zurückgegebene IP-Adresse als :: 1 angezeigt. Dies ist als Loopback-Adresse bekannt, die tatsächlich als 127-malige Nullen dargestellt wird, gefolgt von einer 1, die (0000 … 127-mal … 1) ist. Wenn wir es aufschreiben, wird es wie folgt geschrieben:

2. In IPv6 können wir dieses große Label jedoch in Kurzform darstellen. Wenn ein Block also nur Nullen enthält, kann er durch eine einzige Null ersetzt werden. Wenn also die obige Regel befolgt wird, wird es : 0: 0: 0: 0: 0: 0: 0001;

3. Auch hier können die Nullen beseitigt werden und es bleibt :: 0001 übrig

4. Was wiederum auf ' :: 1 ' reduziert wird, ist die Ausgabe.

Erläuterung zum obigen Code: Wenn sie ausgeführt werden, geben sie möglicherweise keine Ausgabe aus oder geben möglicherweise einen Laufzeitfehler zurück, da private Domänen ihre Internetprotokolladressen nicht bereitstellen. Wenn die obigen Codes auf einem lokalen Server oder einem lokalen Host ausgeführt werden, wie wir einen WAMP-Server verwendet haben, wird eine Ausgabe entsprechend der IP-Version bereitgestellt, dh, wenn es sich um eine IPv4-Adresse handelt, lautet die Internetprotokolladresse angezeigt als '127: 0: 0: 1', wenn es sich um ein IPv6 handelt, wird die Internetprotokolladresse wie oben angezeigt, dh ':: 1'

Empfohlene Artikel

Dies ist eine Anleitung zum Abrufen der IP-Adresse in PHP. Hier diskutieren wir das Identifizieren der IP-Adresse, Methoden in der IP-Adresse und Punkte, die in der IP-Adresse beachtet werden müssen. Sie können auch unsere anderen verwandten Artikel durchgehen, um mehr zu erfahren -

  1. PHP-Datenbankverbindung
  2. Was ist TCP / IP?
  3. Socket-Programmierung in PHP
  4. Palindrome in PHP
  5. Palindrom in C ++
  6. Palindrom in JavaScript
  7. Top 12 Vergleich von Mac- und IP-Adressen
  8. Socket-Programmierung in Python
  9. Was ist IPv4?