Duda sobre crear servidor

Iniciado por crazykenny, 2 Julio 2011, 16:08 PM

0 Miembros y 1 Visitante están viendo este tema.

crazykenny

Hola; el caso es que, bueno, tengo una duda desde hace tiempo sin resolver.
El caso es que, bueno, en el compilador de juegos que tengo, Blitz3D, en el cual he creado los programas que he hecho, pues tiene una serie de comandos para transferir datos en red, concretamente hay dos secciones; TCP (los que he utilizado y me gustaria utilizar) y UDP; entonces, cuando envio datos por TCP a traves de una red local (por ejemplo, por la ip de mi ordenador "127.0.0.1"), pues puedo enviar y recibir datos del tipo strings, floats y bytes, por decirlo asi, pero el problema viene cuando intento transferir datos a traves de internet, caso en el cual, para que yo pueda recibir datos, he de abrir el puerto X (supongamos 80 o 8080) para recibir datos, cosa que creo que es lo normal para que el servidor, a traves de la ip del router reciba los datos; el problema viene aqui, y es que,cuando el servidor (el ordenador de mi casa), recibe los datos, pues puede saber que ip le ha enviado los datos, pero, a no ser que esa ip tenga el puerto X abierto hacia tal ordenador, pues el ordenador no recibe los datos, y la cuestion es saber como hacer que, cuando mi ordenador envie los datos, el ordenador que ha enviado los datos hacia mi ordenador reciba los datos sin necesidad de acceder al explorador para abrir puertos hacia su ordenador.
Por otra parte, lo comento mas que nada, porque cada vez que, por ejemplo, si quiero montar un servidor web (o, mejor dicho, de juegos, que es lo que me interesa), pues se que el servidor ha de tener el puerto X abierto, pero en ningun sitio he leido que el usuario que accede al servidor tenga que abrir X puerto, y por eso pregunto como crear un servidor, pero de tal forma que mi programa gestione todos los datos, en el sentido de, por ejemplo, enviar los datos de tal objeto o tal otro al usuario que lo ha pedido.
Gracias por vuestra atencion.
Saludos.
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos.
Se responsable, consecuente y da ejemplo.
http://informaticayotrostemas.blogspot.com.es/2013/12/situacion-de-la-educacion-actual-en.html
https://informaticayotrostemas.blogspot.com/

fuenteRea

hola

127.0.0.1 es una dirección reservada, llama loopback, todo lo que hagas a esa dirección no sirve para ver si están o no abierto los puertos, puesto que no sales ni siquiera de tu ordenador. Esta se usa para ver si funciona tu ordenador. Tu puedes tener un servidor montado en tu pc al que accedes a través de esta dirección, pero eso no prueba que comunique bien puesto que no sales de tu host.

Si no sales de tu red local no necesitas abrir puertos.

saludos
Una rosa es una rosa...

crazykenny

Cita de: thedoctor77 en  2 Julio 2011, 16:53 PM
127.0.0.1 es una dirección reservada
Ya lo se; mi duda, basicamente, es que necesito para que mi programa, con sus comandos , pueda enviar datos a un ordenador concreto dada una IP; no se si me explico; basicamente, lo digo porque para jugar a juegos tipo WOW, se que blizzard tiene un puerto determinado abierto para recibir los datos en un servidor (o eso creo) para que uno (o mas, creo) progamas gestionen el juego, ellos, y todos los que montan un juego tipo MMORPG, y lo tienen montado de tal forma que yo, para jugar, no he de abrir puertos, y es lo que me interesa saber, si no es mucho pedir, claro esta.
Saludos.
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos.
Se responsable, consecuente y da ejemplo.
http://informaticayotrostemas.blogspot.com.es/2013/12/situacion-de-la-educacion-actual-en.html
https://informaticayotrostemas.blogspot.com/

madpitbull_99

Infórmate si el SDK de Blitz 3D permite el uso del protocolo UpnP. Es muy probable que juegos tipo WOW, empleen este protocolo para no tener que abrir los puertos.



«Si quieres la paz prepárate para la guerra» Flavius Vegetius


[Taller]Instalación/Configuración y Teoría de Servicios en Red

imoen

Hola

El emisor de datos nunca tiene que tener un purto especifico abierto, solo el server, por ejeemplo el quipo emisor al tener que emiter se abre un "socket" la propia pila tcp del Os le asigna un puerto ni no es asginado pro el programa y lsito a trasmitir se puede trasmitir en TCP o en UDP, l aunica diferencia es que el segundo no controla errores si se pierden paquetes se predieron y nadie sabra nada.


bs imoen
Medion Akoya p6624
i-3 370
8 gigas DDR 3 RAM //750 hd 5400
gforce gt425 optimus XDD
Esta es mi casa, mi pueblo , o lo que queda de el aun asi lucharemos ... POR BENALIA....!!

srta imoen

crazykenny

¿Y como puedo saber el puerto, imoen?.
Por cierto, se me olvido una cosa (culpa mia, lo siento), pero la idea es que el usuario que se conecte con un programa  tambien hecho en blitz 3D, y, bueno, hay un comando en blitz 3D para crear un servidor, algo asi como "createTCPserver(numpuerto)", y luego hay otro comando (no me acuerdo cual), que, habiendo creado un servidor con el comando que acabo de comentar, pues permite leer datos, y bueno, el caso es que, habiendo creado un servidor en el usuario que hace de cliente, y otro en mi ordenador, que realiza las peticiones, pues envia los resultados al cliente, por lo que inicialmente mi ordenador envia datos a traves de un puerto especifico que utiliza el cliente para recibir datos con los comandos de blitz 3D; el problema es que creo que, obligatoriamente, el cliente ha de tener ese puerto concreto abierto por el router, y basicamente pregunto si hay alguna forma de evitar que el cliente tenga que abrir el puerto en cuestion ya sea usando yo algun programa externo u algo asi. Tambien cabe destacar que, el cliente, a la hora de conectarse a mi ordenador, ya sabe mi ip y el puerto (abierto desde mi router) por el cual recibo los datos.
Dicho sea de paso, quizas sea una chorrada, pero, cabe destacar que cuando hice las pruebas, no utilice ningun programa externo tipo apache, y la pregunta es; si instalo apache u algun programa similar, ¿me solucionaria el problema?, y, si es asi, ¿como tendria que configurarlo?.
Gracias por vuestra atencion.
Saludos.
A nivel personal, lo que me da mas miedo no son los planteamientos y acciones individuales, sino las realizadas en grupo, ya que estas ultimas pueden acabar con consecuencias especialmente nefastas para todos.
Se responsable, consecuente y da ejemplo.
http://informaticayotrostemas.blogspot.com.es/2013/12/situacion-de-la-educacion-actual-en.html
https://informaticayotrostemas.blogspot.com/