Mi solución esta basada en usar hostnames y no direcciones IPs. Tengo un dominio propio que uso para todos los dispositivos de casa. Este dominio es altamente configurable con funciones para los subdominios como direcciones A, CNAME, y DNS dinámico.
CON CLARO Y MI ROUTER NETGEAR R7000 (Antes)
El router tomaba la IP pública de claro y usando NAT loopback se resolvía así:
- RESOLUCIÓN FUERA DE MI RED DE CASA: ejemplo.midominio.com:2001 -> 185.XXX.XXX.XXX:2001 -> 192.168.200.201:2001 La resolución de hostname a ip pública la hace el sistema DNS normal. El redireccionamiento del puerto de la IP pública a la IP privada la hace el router.
- RESOLUCIÓN ESTANDO CONECTADO AL WIFI DE CASA: ejemplo.midominio.com:2001 -> 192.168.200.201:2001 La resolución DNS de hostname a ip pública la hace el sistema DNS normal, pero el mecanismo nat loopback intercepta la petición y en lugar de enviarla a la interfaz ip externa, la envía directamente a la ip interna.
CON ETB Y MI ROUTER NETGEAR R7000 (Antes)
La IP Pública la tiene el ONT y no hubo manera de volverla a modo bridge para que la tome el router. El Router tiene una IP privada en el segmento del ONT y otra en el segmento del router. El redireccionamiento de puertos entre la IP pública y la IP privada del ONT sucede de forma automática poniendo la IP del router como DMZ.
- RESOLUCIÓN FUERA DE MI RED DE CASA: ejemplo.midominio.com:2001 -> 186.155.XXX.XXX:2001 -> 192.168.0.3:2001 -> 192.168.200.201:2001 La resolución de hostname a ip pública la hace el sistema DNS normal. El redireccionamiento del puerto de la IP pública a la IP privada del ONT se hace por DMZ. El redireccionamiento del puerto de la IP pública a la IP privada del router la hace el mismo router.
- RESOLUCIÓN ESTANDO CONECTADO AL WIFI DE CASA: ejemplo.midominio.com:2001 -> 192.168.200.201:2001 La resolución DNS de hostname a ip privada la hace el ONT .
Para que funcione (como lo expliqué en el post anterior) se debe configurar en el router, la IP del ONT como servidor DNS. Es decir, no debe haber una resolución directa por el DNS de Google o el de ETB, sino que las peticiones deben pasar primero por el ONT. En este caso puse en mi router este servidor DNS: 192.168.0.1
Y en el ONT se debe agregar una línea por cada dispositivo de mi casa apuntando a una IP interna. Para el ejemplo sería:
ejemplo.midominio.com -> 192.168.200.201
Esta solución me permite usar en todas las aplicaciones un
hostnameuerto al apuntar por ejemplo a cada una de las cámaras o al HTPC. Las aplicaciones cliente (visor de cámaras, Torrent Transmission, navegador web, etc) las configuro con ejemplo.midominio.com:2001 y siempre tendrán conexión al dispositivo independientemente de si estoy en mi casa o fuera de ella.