Empecemos diciendo que durante las etapas de creación de Internet, se pretendía que cada ordenador tuviera su propia dirección IP única. Esto permitiría a cada dispositivo conectado a Internet hablar con todos los demás dispositivos utilizando la dirección IP única.
Pero, IPv4 utiliza direcciones IP de 32 bits, y con 32 bits el número máximo de direcciones IP es 2^32 o 4.294.967.296. Esto proporciona un poco más de cuatro mil millones de direcciones IPv4 (en teoría). El número de direcciones IPv4 disponibles es en realidad menor que el número máximo teórico.
Si echas un vistazo a ¿Cuántas conexiones a Internet hay en el mundo? Bien. Ahora, puede ver el creciente número de conexiones a Internet por minuto.
Afortunadamente, la gente que construye Internet previó este problema y comenzó a trabajar en las soluciones para soportar el creciente número de dispositivos conectados a Internet.
Una de esas soluciones es NAT (Network Address Translation). Esto permite que una red completa, digamos la de tu casa, tenga una única dirección IP sin importar cuántos dispositivos tengas conectados a tu router Wi-Fi.
¿Cómo es posible?
Su router asigna a sus dispositivos direcciones locales/privadas o direcciones IP no enrutables. Estas direcciones no son enrutables directamente desde Internet, es decir, alguien que esté en otra red no puede hacer ping directamente a su dispositivo o no puede establecer una conexión con su dispositivo utilizando esta dirección IP privada.
Supongamos que está conectado a Internet, y está solicitando una página web en un servidor de Google.
1. Envías una solicitud HTTP con la dirección de origen como tu dirección IP privada.
2. Cuando esta solicitud llega a tu router, éste sustituye esta dirección IP privada por la dirección IP pública (estática/dinámica) que le asignó tu proveedor de servicios de Internet (ISP).
3. La solicitud llega a Google, que ve la dirección IP de origen como la dirección IP pública de su red, crea una respuesta y la envía de vuelta con la dirección IP pública como destino.
4. Una vez que la respuesta llega a su router, cambia el destino y la dirige de nuevo a su dispositivo que solicitó esa página web.
Otra solución es IPv6. La principal ventaja de IPv6 sobre IPv4 es su mayor espacio de direcciones. La longitud de una dirección IPv6 es de 128 bits, frente a los 32 bits de IPv4. Por lo tanto, el espacio de direcciones tiene 2^128 o aproximadamente 3,4×10^38 direcciones.
IPv6 puede proporcionar direcciones IP únicas a cada dispositivo que pueda conectarse a la Internet de las cosas (IoT), incluidos los dispositivos, y no tenemos que preocuparnos por agotarlas en un futuro próximo.