¿Cómo obtener la dirección MAC e IP de un cliente conectado en PHP?

¿Qué es una dirección MAC?
MAC es la abreviatura de «Control de acceso a medios» y es una dirección física de 48 bits asociada con cada dispositivo de red. Está impreso en la NIC (tarjeta de interfaz de red) y es globalmente único para cada dispositivo de red. La dirección MAC es utilizada por la capa de enlace de datos para enrutar un paquete de datos desde el origen hasta el destino.

¿Qué es una dirección IP?
El proveedor de servicios de Internet (ISP) proporciona una dirección de Protocolo de Internet (IP), también conocida como dirección lógica, que identifica de forma única un sistema en la red. La dirección IP sigue cambiando de vez en cuando.

Cómo obtener la dirección IP del cliente conectado en PHP: $_SERVER es una variable superglobal de PHP que contiene información sobre las ubicaciones del encabezado, la ruta y el script. Las variables superglobales son las variables predefinidas que siempre están accesibles. Estos superglobales almacenan información en forma de array asociativa, y aquí vamos a obtener la clave ‘REMOTE_ADDR’ de la array asociativa $_SERVER para obtener la dirección IP del cliente. ‘REMOTE_ADDR’ devuelve la dirección IP del cliente

Ejemplo 1: Este ejemplo ilustra cómo obtener la dirección IP del cliente usando $_SERVER[‘REMOTE_ADDR’].

<?php
  
// PHP program to get IP address of client
$IP = $_SERVER['REMOTE_ADDR'];
  
// $IP stores the ip address of client
echo "Client's IP address is: $IP";
  
// Print the ip address of client
?>

Producción:

Client's IP address is: ::1

Nota: para un IDE en línea, puede mostrar un error de tiempo de ejecución o no mostrará ningún resultado porque los dominios privados no comparten su IP. Para localhost, la dirección IP es 127.0.0.1, que es una dirección de bucle invertido, por lo que la dirección IP del cliente es ::1.

Cómo obtener la dirección MAC del cliente conectado en PHP: El ‘exec()’ es una función que se utiliza para ejecutar un programa externo en PHP. Devuelve la última línea del resultado del comando. Para obtener la dirección MAC, pase el parámetro ‘getmac’ que devuelve la dirección MAC del cliente. ‘getmac’ es un comando CMD para obtener la dirección MAC.

Ejemplo 2: Este ejemplo obtiene la dirección MAC usando la función exec().

<?php
  
// PHP code to get the MAC address of Server
$MAC = exec('getmac');
  
// Storing 'getmac' value in $MAC
$MAC = strtok($MAC, ' ');
  
// Updating $MAC value using strtok function, 
// strtok is used to split the string into tokens
// split character of strtok is defined as a space
// because getmac returns transport name after
// MAC address   
echo "MAC address of Server is: $MAC";
?>

Producción:

MAC address of Server is: 00-20-10-2A-03-0A

Nota: este código no funcionará en el IDE en línea, porque ‘getmac’ es un comando CMD. Intente ejecutarlo en localhost.

PHP es un lenguaje de secuencias de comandos del lado del servidor diseñado específicamente para el desarrollo web. Puede aprender PHP desde cero siguiendo este tutorial de PHP y ejemplos de PHP .

Publicación traducida automáticamente

Artículo escrito por AvinashMishra25 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *