Cómo obtener la dirección Mac de Client Machine en una aplicación web

Tengo que obtener la dirección MAC de la PC del cliente donde se está ejecutando mi sitio web. Entonces, ¿cómo obtener la dirección MAC de la máquina del cliente (no de la dirección MAC del servidor donde está alojado el sitio web)? Necesito un script que sea compatible con IE, Firefox, Safari y Chrome.

La única forma de lograr esto es mediante el uso de un applet o complemento que podría progtwigrse en java (aunque Java podría no permitirlo de acuerdo con Obtener la dirección MAC en una página web usando un applet de Java ), ya que javascript naturalmente no revelará este tipo de información Por último, también puede encontrar esta información desde el lado del servidor si está en una red interna, como suele hacerse con las páginas de aterrizaje semiprivadas de la red wifi.

Basado en los comentarios a continuación: Como es una red interna, puede recuperar la dirección MAC de la siguiente manera en el lado de asp.net. Ejecuta el siguiente comando arp -a que le devolverá una lista de todas las direcciones IP con las direcciones mac asociadas. A continuación, usando algo a lo largo de las líneas de

 Request.Servervariables("REMOTE_ADDR") 

debería poder encontrar la dirección IP de los usuarios que luego puede emparejar con los datos que obtuvo del comando arp y listo, tiene su dirección MAC para el usuario actual.

Tengo un escenario en el que se permite a algunos usuarios desde una PC fija (para la cual la dirección MAC ingresada por el administrador coincidirá con el sistema desde el que el usuario intenta iniciar sesión), él / ella no podrá iniciar sesión desde otra computadora.

Para lograr lo anterior de la manera correcta, debe confiar en los certificados de Cliente para realizar la autenticación. Si no se presenta un certificado de cliente válido, la solicitud será denegada.

Puede encontrar más información sobre Cómo proteger un sitio web utilizando certificados de cliente @ http://support.microsoft.com/kb/315588

Si los usuarios están en una red interna, la forma preferida de autenticarlos es utilizando la autenticación de Windows integrada como se describe en http://support.microsoft.com/kb/323176 y la autorización se basará en una lista de control de acceso.

Parece que esta es una red interna.

Otro método es que al usar la dirección MAC, el servidor dhcp puede asignar rangos de IP particulares. luego puede verificar ese rango de IP en su código de servidor. No hay forma de obtener la dirección MAC en javascript, pero puede obtenerla fácilmente. Además, quizás su servidor dhcp pueda publicar tablas de dirección IP de dirección MAC para que su servidor web las use a través de una API o algo, no estoy seguro de eso pero puede valer la pena investigarlo.