Tengo un problema, me recomendaron pregutar un un foro de redes, pasa lo siguiente:
Estoy derrollando una apliacion donde hago lo siguiente
Aplicaciones: Descripcion
Soporte = cliente1 (ip dinamica detras de un router)
Cliente = cliente o usuario final (ip dinamica detras de un router)
Servidor = Apliacion servidor con IP Fija
En resumen pasa lo siguiente:
Cliente y Soporte inician sesion en el servidor y comienza la comunicacion
Cuando Cliente desea enviar un archivo a Soporte o alrevez
(en este caso cliente a soporte)
Cliente envia una peticion al servidor
Servidor recibe y va y pregunta a soporte que ip tiene y que puerto tiene disponible
El servidor con esta informacion la comprueba con el cliente que coincidan en el mismo puerto para comenzar la transferencia.
y inicia la transferencia uan vez listo todo...
ESTO FUNCIONA CORRECTAMENTE DESDE REDES LOCALES O INTRANET
PERO NO FUNSIONA PARA INTERNET O REDES FUERA DE LA LOCAL DONE EJECUTO AL SOPORTE
¿que sucede?
Que la ip que me detecta el servidor del soporte es una ip dinamica que esta de manera interna en su red detras de la IP de Router entonces esa IP NO Existe en la RED INTERNET por lo tanto el USUARIO CLIENTE NO LOGRA ESTABLECER UNA CONEXION con el SOPORTE
La pregunta es:
¿Como puedo lograr establecer la conexion entre los dos usuarios de manera PUNTO A PUNTO? igual negociando la ip y los puertos con el servidor
Lo que quiero evitar es tener que enviar el archivo al servidor para despues reenviarlo al otro usuario
Mas bien quiero quesea en tiempo real como lo hacen las transferencias de MSN Menssenger y Yahoo Messenger
Saludos