UPnP y NAT
Utilidades para descubrir direcciones y solicitar apertura de puertos en routers compatibles.
UPnP y NAT
UPnP permite a una aplicación solicitar al router la creación de un mapeo de puertos sin que el usuario tenga que configurar manualmente el forwarding.
El problema
Un servidor puede escuchar correctamente en su máquina y, sin embargo, no ser accesible desde Internet porque el router utiliza NAT.
Internet
│
Router NAT
│
└── PC / servidorEl puerto debe estar accesible desde el exterior para que clientes remotos puedan conectarse directamente.
Qué aporta UPnP
Servidor
↓
UPnP
↓
Router
↓
Regla NAT
↓
Puerto público → servidor localNo todos los routers admiten UPnP y algunas redes lo deshabilitan por seguridad.
Flujo recomendado
Detectar soporte
Comprueba que exista un dispositivo UPnP compatible antes de intentar crear reglas.
Resolver dirección
Determina la dirección LAN y el puerto TCP/UDP que utilizará Eco.
Crear mapeo
Solicita al router el forwarding para el puerto correspondiente.
Verificar desde fuera
La existencia de la regla no garantiza que el ISP o firewall permita el tráfico. Prueba desde otra red.
UPnP no sustituye un diagnóstico de red
CGNAT, firewalls, doble NAT o políticas del router pueden impedir conexiones entrantes aunque la solicitud UPnP sea correcta.
UPnP.cs
Implementación actual de las utilidades UPnP.
