Maison > développement back-end > tutoriel php > Comment puis-je obtenir les adresses MAC et IP des clients connectés à l'aide de PHP ?

Comment puis-je obtenir les adresses MAC et IP des clients connectés à l'aide de PHP ?

Mary-Kate Olsen
Libérer: 2024-12-18 03:59:16
original
872 Les gens l'ont consulté

How Can I Get the MAC and IP Addresses of Connected Clients Using PHP?

Obtention des adresses MAC et IP des clients connectés en PHP

Cet article vise à aider les développeurs à récupérer les adresses MAC et IP des clients connectés à leurs scripts PHP. Comprendre comment acquérir ces informations est crucial pour diverses applications liées au réseau.

Adresse IP du serveur

La récupération de l'adresse IP du serveur est simple en PHP en utilisant $_SERVER['SERVER_ADDR'].

Adresse MAC du serveur

L'obtention de l'adresse MAC du serveur n'est pas une fonctionnalité native de PHP. Cependant, une approche consiste à analyser le résultat de commandes externes telles que netstat -ie sous Linux ou ipconfig /all sous Windows.

Adresse IP du client

L'adresse IP du client est facilement disponible via $_SERVER ['REMOTE_ADDR'].

Adresse MAC du client

Malheureusement, PHP ne fournit pas d'adresse moyen direct de récupérer l’adresse MAC du client. Néanmoins, cela est possible sous une condition précise : si le client est sur le même segment Ethernet que le serveur. Dans de tels cas, vous pouvez analyser la sortie de arp -n (Linux) ou arp -a (Windows).

Récupération de la sortie d'une commande externe

Voici un exemple de en utilisant des backticks pour récupérer le résultat de la commande externe :

$ipAddress = $_SERVER['REMOTE_ADDR'];
$macAddr = false;

$arp = `arp -a $ipAddress`;
$lines = explode("\n", $arp);

foreach ($lines as $line) {
   $cols = preg_split('/\s+/', trim($line));
   if ($cols[0] == $ipAddress) {
       $macAddr = $cols[1];
   }
}
Copier après la connexion

Limitations et Considérations

Sachez que si le client n'est pas sur un réseau local, vous ne pouvez pas déterminer son adresse MAC sans mécanismes supplémentaires côté client pour la fournir.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal