¿Por qué las direcciones MAC no están disponibles para los servidores web?

Sin entrar en los caprichos del modelo OSI y cómo funcionan ARP y NAT, la respuesta breve es que las direcciones MAC solo son necesarias para las comunicaciones de la misma red (por ejemplo, hosts conectados al mismo cableado local). Tan pronto como un paquete pasa un enrutador, la información de MAC se elimina (y se reemplaza con el MAC del enrutador).

A menos que haya incorporado específicamente el MAC en la solicitud o haya utilizado un protocolo que no sea IP como IPX que incluye el MAC en la dirección de origen (y eso no es razonable intentarlo hoy), el extremo remoto no obtendrá su MAC en absoluto, ya que el paquete será eliminado / destrozado por cada salto en la ruta entre nodos.

Por supuesto, si el servidor y el cliente están en la misma red local, posiblemente podría obtener el MAC, pero ese no es un caso de uso súper útil.

Ah, y la mayoría de los sistemas operativos te permitirán cambiar tu MAC de todos modos, para que puedan ser falsificados.

Debido a que las direcciones MAC no se incluyen en los protocolos de red que salen de las redes de área local, con la única excepción de los protocolos de redes privadas virtuales que se utilizan para conectar LAN.

Porque las direcciones MAC son inútiles fuera de la red de área local del servidor. Los servidores solo dependen de las direcciones IP. Los enrutadores conocen las direcciones MAC locales y las asignan a direcciones IP para comunicaciones de Internet.