Falacias que los programadores creen sobre las redes LAN

Fuentes: Falsehoods Programmers Believe About LANs

Las redes de área local (LAN) son una infraestructura cotidiana en hogares, oficinas y centros de datos, pero suposiciones muy extendidas entre quienes escriben software resultan incorrectas o, en el mejor de los casos, ocasionalmente verdaderas. Este compendio repasa, organizadas por bloques temáticos, las creencias erróneas más comunes sobre el funcionamiento real de una LAN.

En el apartado de NAT, se desmonta la idea de que basta con tener o no una dirección RFC 1918 para saber si se está detrás de un traductor de direcciones, o de que este solo modifica cabeceras y puertos. La realidad incluye NAT anidados, NAT IPv6 y NAT que reescriben partes del cuerpo del paquete.

Sobre protocolos, el texto recuerda que en una LAN pueden coexistir IPv4, IPv6, IPX/SPX, AppleTalk, NetBEUI o SNA, y que rara vez el programador tiene un inventario fiable de qué tráfico circula. El bloque de direcciones MAC cuestiona su unicidad global, la posibilidad de cambiarlas y la interpretación del prefijo OUI como identificador de fabricante en todos los casos.

En alcance y rendimiento, se asume de forma errónea que la LAN es rápida, que dos equipos del mismo subred se ven siempre directamente, o que Ethernet y Wi-Fi son pares equivalentes. También se cuestiona la unicidad local de los nombres de host y la fiabilidad de mDNS.

Por último, DHCP e direccionamiento: no siempre hay un servidor DHCP, puede haber varios, la dirección puede cambiar durante una sesión y las suposiciones sobre puerta de enlace, DNS o el rango 169.254.0.0/16 como sinónimo de fallo DHCP tampoco son verdades universales. La lista sirve como aviso para programadores: nada en una LAN está garantizado.