Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich mit PHP die MAC- und IP-Adressen verbundener Clients abrufen?

Wie kann ich mit PHP die MAC- und IP-Adressen verbundener Clients abrufen?

Susan Sarandon
Susan SarandonOriginal
2024-12-15 09:31:10738Durchsuche

How Can I Retrieve Connected Clients' MAC and IP Addresses Using PHP?

Abrufen der MAC- und IP-Adressen verbundener Clients in PHP

Abrufen der MAC- und IP-Adressen von Für verbundene Clients sind aufgrund der unterschiedlichen Verfügbarkeit unterschiedliche Ansätze erforderlich Informationen.

Server-IP- und MAC-Adressen

Die IP-Adresse des Servers ist über $_SERVER['SERVER_ADDR' leicht verfügbar ]. Die MAC-Adresse kann durch Parsen der Ausgabe von Befehlen wie netstat -ie (Linux) oder ipconfig /all (Windows) abgerufen werden.

Client-IP-Adresse< /h3>

Die IP-Adresse des Clients kann abgerufen werden $_SERVER['REMOTE_ADDR'].

Client-MAC-Adresse

Die Ermittlung der MAC-Adresse des Clients in PHP ist eine Herausforderung. da es im Allgemeinen für den Server nicht zugänglich ist, es sei denn, Clients befinden sich im selben Ethernet Segment.

Wenn sich Clients im selben LAN befinden, kann das Parsen der Ausgabe von arp -n (Linux) oder arp -a (Windows) die MAC-Adresse liefern. Hier ist ein Beispiel in PHP mit Backticks:

<br>$ipAddress=$_SERVER['REMOTE_ADDR'];<br>$macAddr=false;</p>
<h1>Führen Sie den externen Befehl aus und teilen Sie die Ausgabe in Zeilen auf</h1>
<p>$arp=arp -a $ipAddress;<br>$lines=explode("n", $arp);</p>
<h1>suchen Sie nach der Ausgabezeile, die unsere IP-Adresse beschreibt</h1>
<p>foreach($lines as $line) <br>{<br> $cols=preg_split('/s /', trim($line));<br> if ($cols[0]==$ipAddress)<br> {</p>
<pre class="brush:php;toolbar:false">   $macAddr=$cols[1];

}
}

Allerdings, wenn Da sich Clients nicht im selben LAN befinden, ist das Abrufen der MAC-Adresse über PHP ohne zusätzliche Mittel zur Informationsübertragung vom Client nicht möglich Kunde.

Das obige ist der detaillierte Inhalt vonWie kann ich mit PHP die MAC- und IP-Adressen verbundener Clients abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn