Recibí algunas buenas respuestas en la pregunta ¿Qué necesito para crear mi propia nube personal para dispositivos IoT? y una de las cosas que entendí desde allí es que necesito "exponer" mi HUB o GATEWAY a internet externo. La solución propuesta para eso es el reenvío de puertos .
Creé esto como una pregunta separada porque sería difícil hacer un seguimiento adecuado solo con comentarios sobre todas las respuestas, alguien podría perderse. Además, esta información puede ser útil para alguien con una pregunta similar.
No me gusta la idea de tener que ir a la configuración de mi enrutador y configurar el reenvío de puertos porque eso significa que tengo que configurar un dispositivo que, a pesar de ser parte de la infraestructura de IoT, no es uno de "mis" dispositivos. Tiene que ser lo menos perjudicial posible para la red doméstica ya existente. Además, he tenido casos en los que no conozco la contraseña de administrador de un enrutador en particular y ha sido realmente difícil obtenerla.
Estoy seguro de que hay una forma de evitarlo, incluso si eso significa tener un IoT HUB más poderoso que tal vez ejecute Linux, simplemente no sé qué podría ser eso. Está bien tener un HUB un poco más complejo si esa forma "alternativa" permite evitar esa configuración de reenvío de puertos.
Digo que estoy seguro de que hay una manera de pensar acerca de cómo las aplicaciones como el visor de equipos no necesitan configurar el reenvío de puertos.
Entonces, la pregunta es, ¿alguien conoce una forma de "exponer" un dispositivo integrado de IoT a Internet externo para acceder a él desde cualquier parte del mundo que no implique el reenvío de puertos?
fuente
En el mundo de IoT, donde los dispositivos tienen pocos recursos para manejar el tráfico no deseado de conexiones externas y, por supuesto, la necesidad de manejar cualquier reenvío de puertos y problemas de firewall con enrutadores ha llevado al siguiente enfoque que puede ver en muchas soluciones de back-end de IoT:
Los dispositivos no aceptarán ninguna información de red no solicitada. Todas las conexiones y rutas serán establecidas por el dispositivo solo de manera saliente. Por lo tanto, el dispositivo abrirá conexiones salientes, por lo que no se necesitarán ajustes de firewall / enrutador y mantendrá el canal abierto todo el tiempo que sea necesario.
Un buen artículo sobre los problemas y soluciones de comunicación en el mundo de IoT.
fuente
Intenta tocar el puerto . Todavía tiene que reenviar el puerto, pero el puerto solo se abre después de enviar una combinación secreta (que elija) de pings. Luego puede cerrar el puerto con otro combo secreto de pings. Puede ejecutarse en Linux integrado, como un enrutador wifi con OpenWrt.
fuente
Si bien no puedo recomendar que permita que cualquier dispositivo IoT sea accesible desde Internet público, puede lograrlo de forma nativa utilizando IPv6.
Si su ISP y su red local están configurados para IPv6, y sus dispositivos IoT lo admiten, pueden obtener automáticamente una dirección IPv6 que se puede enrutar desde cualquier lugar en Internet (IPv6 elimina la necesidad de NAT y reenvío de puertos). Solo debe asegurarse de que los firewalls con estado (su enrutador) estén configurados para permitir el tráfico a cada dispositivo. Algunos pueden permitir esto (de forma insegura) por defecto.
fuente
Configure un servidor VPN en casa, luego conéctese a él desde cualquier lugar. Creo que esto sería mucho más seguro que exponer cualquier tipo de dispositivo IoT a Internet abierto.
fuente