Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   sockets (https://www.clubdelphi.com/foros/showthread.php?t=9598)

the darkness 27-04-2004 18:28:22

sockets
 
hola:
necesito transmitir unos datos de una computadora a otra por medio de internet y hace tiempo me encontre con los sockets, trabajo en delphi 5 y ahi existe un ejemplo de un chat que esta bastante bien, utiiza un server socket y un client socket, para transmitir y recibir datos por los dos medios solicitando unicamente la ip de la màquina. dicho programa lo probe y funciona a la perfecciòn en computadoras conectadas punto a punto y tambien en una red no sofisticada. mi pregunta o preguntas es que si puedo utilizar este mismo programa o estos componentes entre computadoras que esten conectadas a internet por el telefono y no exista un cable de por medio entre ellas, por que he notado que las redes co routers que se conectan a internet reciben una sola ip y en cualquier màquina es la misma. funcionarà.
ojala puedan orientarme o decirme que puedo utilizar para a transmisiòn de datos, estos siempre son strings.

jachguate 27-04-2004 22:25:58

al menos una de las dos máquinas deberá contar con un IP público (la que haga de servidor, para ser exacto), para que sea accesible por el otro equipo (el cliente) y se pueda establecer la conexión.

Otra opción con máquinas sin IP público, es conectarlas a una misma VPN... obviamente, tiene que haber un servidor de la VPN, con un IP público.

Hasta luego.

;)

acertij022 27-04-2004 22:54:36

yo lo solucione de la sigiuente forma :
aloje en mi pagina un archivo PHP con el siguiente codigo
<?
//iniciamos
echo
//agregamos la variable echo para que nos ejecute el romte.
$REMOTE_ADDR
//agregamos la variable y cerramos
?>

lo guarde como IP.PHP
en el programa coloque el componente TIdHTTP de Indy
con la siguiente intrucción
Str1 :=idhttp1.Get('http://www.mi_pagina.com.ar/ip.php');
con lo cual tomo la IP publica que tengo en ese momento y lo coloco como archivo de texto en la pagina con lo cual tengo la IP para conectarme a la pc sin importar si tiene IP fija o dinamica y resuelvo el problema de tomar la IP de la red y no la publica para conectarme :D

Es algo trabajoso pero da resultado.
Espero aver sido de ayuda ;)

jachguate 27-04-2004 23:13:34

Si lees detenidamente mi respuesta, yo solamente he indicado que se necesita de un IP público, independientemente de si este es un ip estático (asignado siempre el mismo a la máquina) o dinámico (asignado al momento del arranque, digamos por un servidor DHCP). El punto es que si ninguna de las dos máquinas tiene un ip público, sino ambas van a pertenecer a redes privadas... aún cuando puedan averiguar sus respectivos ip's, será imposible establecer comunicación directa entre las pc's.

Hasta luego.

;)

jachguate 27-04-2004 23:16:25

Cita:

Empezado por acertij022
con lo cual tomo la IP publica que tengo en ese momento

Es que no siempre se tiene una IP pública...

DarkByte 28-04-2004 09:48:47

Cita:

Empezado por acertij022
tr1:=idhttp1.Get('http://www.mi_pagina.com.ar/ip.php');

Cita:

Empezado por acertij022
con lo cual tengo la IP para conectarme a la pc sin importar si tiene IP fija o dinamica y resuelvo el problema de tomar la IP de la red y no la publica para conectarme

Tu planteamiento está bien, pero tiene muchas oportunidades de fallar, por ejemplo, si el Anti-Virus usa un proxy para todas las conexiones automáticamente, si la compañía proveedora de internet también tiene un proxy (caso del p...uerco proxy de telefónica).

Hasta otra :)

the darkness 28-04-2004 18:07:59

transmision de datos
 
entonces con los sockets me puedo conectar con dos màquinas que tienen ip unicas y estasn solo conectadas a internet directamente por telefono???.
esa es mi duda. pues solo se usar los sockets.

y como les comentaba en una red si funciona. ademàs cuado intento conectarme a mas de una màquina el programa se pasma, no me puede hacer mas de una conexiòn multiple, por que??
atte
eduardo maldonado

jachguate 28-04-2004 18:56:13

Alguna de las dos tiene ip público, que es algo independiente del cómo se conecte??


La franja horaria es GMT +2. Ahora son las 23:38:40.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi