Obtienen diferentes dispositivos una dirección IP diferente?

¿Cada dispositivo tiene una dirección IP única?

Hay dos esquemas de direccionamiento IP de uso común hoy en día. IPv4 e IPv6.

Brevemente, las direcciones IPv4 tienen 32 bits de longitud, y suelen escribirse (para los humanos) como 3.85.158.174, con cuatro números decimales entre 0 y 255 separados por puntos.

Las direcciones IPv6 tienen 128 bits de longitud, y suelen escribirse (para los humanos) como 2002:4559:1FE2:0:0:4559:1FE2 o comprimidas (sin los ceros) como 2002:4559:1FE2::4559:1FE2.

Como las direcciones IPv4 son a las que la mayoría de la gente está acostumbrada, esta respuesta sólo se centrará en IPv4 e ignorará IPv6.

P: ¡Deja de irte por las ramas! Dígame si cada dispositivo tiene una dirección IP única?

¿La respuesta corta? No. Si así fuera, hace tiempo que nos habríamos quedado sin direcciones IPv4, en parte porque en los primeros días de Internet se repartieron a discreción enormes bloques de direcciones IPv4 únicas a empresas que no necesitaban tantas, por ejemplo, Prudential, Ford, PSINet, etc., y en parte porque hoy en día tenemos muchos más dispositivos en Internet de los que se preveían a principios de los años 80.

Afortunadamente, tres rangos de direcciones IPv4 se reservaron como "no enrutables". Eso significa que esas direcciones IP no pueden estar en la Internet pública, pero pueden utilizarse en una red interna detrás de un router que proporcione NAT (traducción de direcciones de red). Y gracias a estos tres rangos no enrutables, hemos podido seguir utilizando IPv4 en la mayoría de los lugares.

Muchos ordenadores utilizan IPs en estos rangos no enrutables, por ejemplo 192.168.1.50. Si ha comprobado lo que su ordenador le dice que es su dirección IP ahora mismo, probablemente esté utilizando uno de estos rangos no enrutables.

Pero, ¿cómo funciona eso? Alguien me dijo que todos los ordenadores necesitan una dirección única. ¿Cómo llegan las páginas web al ordenador correcto si mi ordenador tiene la misma dirección IP que muchas otras personas?

Así es como funciona. Una casa o empresa -digamos Quora, por ejemplo- tiene a sus empleados en una red interna. Todos esos empleados utilizan direcciones IP en uno de los rangos no enrutables (por ejemplo 192.168.x.x o 10.x.x.x). El router de Quora mantiene un registro de todas las personas de la red de área local (LAN) con direcciones no enrutables. En el exterior del router de Quora, tiene una única dirección IP enrutable expuesta a Internet.

Cuando uno de los empleados de Quora teclea "google.com" en su navegador, éste inicia una petición que acaba siendo enrutada al servidor de Google más cercano. La solicitud parte del ordenador del empleado de Quora, a través de uno o varios conmutadores (propiedad de Quora) hasta el router NAT de Quora. El router mueve la solicitud desde su lado privado interno al lado público externo, y marca la solicitud como procedente de su dirección IP pública. A continuación, la solicitud se enruta a través de una serie de routers en la Internet pública antes de llegar al servidor de Google más cercano.

El servidor de Google envía la página web solicitada de vuelta al router NAT de Quora, tal vez a través de una serie de routers de Internet similares a los que la solicitud llegó. Llega al router NAT de Quora, que entonces consulta una tabla de búsqueda interna y envía la página web al ordenador del empleado que la ha solicitado.

Así que, aunque ese empleado de Quora tenga una dirección IP idéntica a la del ordenador en el que estás leyendo esto, como las interfaces externas de ambos routers de la LAN tienen una IP única, tus peticiones no se van a confundir con las suyas.

P: Eso es una estupidez. ¡Parece un montón de trabajo extra! ¿Por qué no le damos a cada ordenador una IP única y no tenemos que hacer todas estas cosas extra con NAT?

Bueno, NAT es un poco de protección contra los atacantes, por lo que ayuda a mantener a los que están en las LAN un poco más seguros.

Pero si quieres que todo el mundo tenga una IP única, por todos los medios puedes optar por pasar a IPv6 en su lugar. Hay más direcciones IPv6 disponibles que partículas en el universo. Así que esta vez, debería ser suficiente un conjunto de direcciones disponibles.