Domótica, CGNAT, IPv4 y la madre que los parió

Estoy seguro que no sabes de lo que te hablo, pero si te lo explico (y lo haré, porque de eso va el artículo de hoy), seguro que dices: ¡Ah! coño. ¿Y por eso no me funciona la cámara que me compré? Pues sí.

Vamos al lío. CGNAT es quien tiene la culpa de todo. A lo largo de los años, se han ido asignando direcciones IP a diestro y siniestro, para empresas que conectan sus servidores y para usuarios finales que quieren contar una IP fija para sus equipos. Los ISP cada vez tienen más problemas para asignar una dirección IP para sus clientes y se han inventado una solución que es muy interesante para ellos, pero casi nunca para el cliente (bueno, al cliente que ve tres páginas al día y ve pelis en Netflix le da todo igual). Hablamos del CGNAT (Carrier-grade Network Address Translation). Voy a intentar explicarte de forma sencilla qué es eso.

En tu casa, tienes una conexión de fibra, un router conectado a ella y varios dispositivos conectados al router, ya sea mediante cable o wifi. Cuando uno de estos dispositivos quiere ver una página web, se lo dice al router, que se encarga de pedírsela al servidor en el que está alojada y éste se la envía. Luego, a medida que va llegando, el router se la envía al dispositivo que la pidió. Dentro de tu red, cada dispositivo dispone de una dirección IP privada que es con la que se identifica cada uno de los dispositivos, de forma que puedan comunicarse entre sí. El router, a su vez, tiene una dirección privada, igual que el resto de dispositivos de tu red, y una dirección IP pública que lo identifica, dentro de Internet, como un dispositivo único. De esta forma, el servidor que envía esa página web, la envía hacia tu router identificándolo por su IP pública y el router envía desde su IP privada a cualquiera de los dispositivos de tu red privada. El sistema es sencillo y eficiente.

Pero ahora nos encontramos que la gran cantidad de router y servidores conectados a Internet ha hecho que las direcciones IP (IPv4) se agoten, por lo que los ISP han tenido que inventarse la solución del GCNAT que lo que hace es reproducir el esquema de las direcciones IP públicas y privadas dentro una macro-red que crean entre tu router e Internet. Grosso modo es así (en realidad es mucho más complejo, pero para que lo entiendas, nos vale). Lo que hacen es poner un router con una IP pública real a través del que tu router se conecta con una IP privada y éste a su vez asigna direcciones IP privadas a los equipos de tu red. Veamos con un gráfico cómo quedaría la instalación:

Un ordenador que está en tu casa (PC1), se conectaría a Internet a través del router (R1) que tienes, también en tu casa. El router asigna a tus dispositivos una dirección del rango 192.168.1.1 a 192.168.1.254. La dirección 1 se suele asignar al router y el resto son para los dispositivos. A su vez, el ISP ha asignado a tu router la dirección IP 100.64.0.1, que es una dirección IP privada de su red, pero que se comporta como pública ante tu router. Y por último, el router del ISP tiene otra dirección, en el ejemplo la 87.87.87.87 que es la que actúa como puerta de enlace a Internet para tu router.

Si tu ISP te asignó la dirección IP 100.64.0.1, resulta que a tu vecino le asigna la 100.64.0.2 y al del piso de arriba la 100.64.0.3, al de la casa de enfrente la 100.64.0.4 y así sucesivamente. Pero ¿qué sucede? Pues que cuando intentas averiguar la IP pública real y lo haces a través de cualquiera de las páginas que hay por Internet que te lo dicen (http://cualesmiip.es por ejemplo), la respuesta es: 87.87.87.87 y si lo pregunta cualquiera de tus vecinos, también obtendrán la misma dirección IP como respuesta y ya tenemos el follón montado. ¿Follón? Pues sí, y gordo.

Imagina que a tu vecino le da por cometer un fraude y es tan tonto que no sabe borrar su rastro. Llega el juez, ordena investigar y ¿cuál es la IP del que cometió el delito? La tuya y la de tu vecino y la del vecino de arriba y la de muchos vecinos más. Mal asunto como el ISP no tenga un buen registro de conexiones internas, pero esto no suele ser un problema. Por un lado porque sí está obligado a tenerlo y por otro porque a día de hoy cada vez es menos importante la IP de quien cometió el delito a la hora de usarlo como prueba ante un juicio. Pero supongamos que no estamos hablando de un delito, sino de un envío masivo de email o una molestia a otras personas por parte de un troll. Resulta que al otro lado, deciden banear la IP del idiota que está molestando. ¿Y qué IP van a bloquear? Pues, la tuya y la de otros y con esto, puede que dejes de publicar en Twitter, en Instagram o que tal vez no puedas leer mi blog nunca más (aunque ya entiendo que esto te daría igual, y con razón, porque total…)

Y ahora es el turno de los problemas que genera el CGNAT con la domótica. Si te has comprado una cámara que opera dentro de su propia nube para mostrar las imágenes, no hay problema (salvo los posibles problemas de seguridad que se puedan plantear, pero ese es otro tema). Tú podrás ver sin problema a tu gato haciendo cosas de gato cuando no estés en casa. Pero ¿qué pasa si la cámara que has comprado es una cámara IP sin nube propia? Pues que no podrás ver a tu gato. ¿Y por qué? Pues porque cuando intentes abrir el puerto 80 o el 8080 para ver la cámara vía HTTP o el 554 si quieres acceder vía RTSP, tendrás que redireccionar el tráfico que llegue a la IP 87.87.87.87 hacia tu cámara y eso no es posible porque entre medias hay otro router con otra IP diferente, que es el tuyo y que no dispone de esa IP y en el router que sí la tiene, no puedes tocar porque no es tuyo.

Pero este problema no es solo si te compras una cámara, sino que también lo tienes con las luces, el timbre, las cerraduras y casi cualquier dispositivo domótico que no opere dentro de una nube propia.

Si tu ISP te hace trabajar dentro de un entorno CGNAT, yo te aconsejaría, tanto si tienes un sistema domótico como si no, que le solicites que te saque del CGNAT. Basta con que les digas que has instalado un sistema de video vigilancia que requiere de IP pública y que no te funciona. En 24 o 48 horas te sacarán del CGNAT y tendrás el problema resuelto.

Entonces, ¿Vamos a convivir para siempre con este problema? Pues no, para nada. La solución al CGNAT pasa por instaurar de una vez por todas IPv6, ya que habrá direcciones IP para dar y tomar hasta dentro de muchos años. Ya en otra ocasión te explicaré despacio qué eso de IPv6.

Author: fbno

Sarcástico, irónico y cáustico. Agnóstico, irreverente, apolítico, apátrida y ciertamente asocial. Defensor del abstencionismo reflexivo y amante de la penúltima cerveza y del Rock.