![]() |
IP real...
Hellowwwww!!! :D
Ke ondax... Este es mi primer post en el nuevo foro! Tengo servicio de Internet por medio de una compañia X, por medio de la tarjeta de RED y un cablemodem. Cuando uso cualquier componente o ya sea mediante codigo este me muestra la IP que tengo con dicha compañia. :confused: Pero... quisiera conocer mi IP REAL, con lo que cualquiera en cualquier lugar del ancho mundo pueda conectarse a mi computadora. Thanx y saludos! :cool: |
Que necesitas hacer, posiblemente si necesitas conectar a tu pc desde internet, puedas utilizar un programa llamado DirectUpdate, que te ofrece DNS para IP dinamicas,
algo como x-Jabs.homelinix.net, y con eso la podrias hacer mortal.. podrias colgar en tu pc un Servidor de DB, una WEB, un FTP, etc.. |
Hola,
Para saber tu IP real puedes visitar cualquiera de estas paginas: http://ipdetect.dnspark.com/ http://dynamic.zoneedit.com/checkip.html http://checkip.dyndns.org/ http://ip.ChangeIP.com/ip.asp http://www.dnsart.com/myip.php http://dynupdate.no-ip.com/ip.php http://www.dnsart.com:7777/myip.php http://checkip.dyndns.org:8245/ Si lo que quieres es automatizar el servicio de obtencion de IP, puedes programar un poco los sockets para hacer la peticion http al servidor, y determinar el valor del ip de acuerdo a lo que te devuelva. |
Bueno, me sente un minuto a probar lo que te dije en teoria, y salio algo como esto:
Utilizando un ClientSocket, con las propiedades: Name : cs Port : 80 host: dynamic.zoneedit.com active : true Este es el codigo para hacer la peticion: var Str : string; begin str := 'POST http://dynamic.zoneedit.com/checkip.html HTTP/1.0'+#13#10 + 'Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, */*'+#13#10 + 'Accept-Language: es'+#13#10 + 'Accept-Encoding: gzip, deflate'+#13#10 + 'User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)'+#13#10 + 'Proxy-Connection: Keep-Alive'+#13#10 + ''+#13#10 + ''+#13#10; cs.Socket.SendText(str); En el evento onRead entonces, puedes ver la propiedad receiveText para ver que te devuelve el servidor. Str := cs.socket.ReceiveText; Debe devolverte algo como esto: HTTP/1.1 200 OK Date: Wed, 07 May 2003 15:20:01 GMT Server: Apache Content-Length: 168 Connection: close Content-Type: text/html <html><head><title>Current IP Check</title></head> <body bgcolor=white text=black> Current IP Address: 64.32.72.149 <br>Hostname: localhost </body></html> Entonces, ahi solo tienes que leer la linea de CurrentIPAddress, y obtener el IP. Las posiciones son absolutas, es decir, no esperas que cambien de peticion en peticion. |
Gracias por contestar!
En este momento aplicare lo ke me komentas hektor ya te dire como me va!! Por cierto la URL que pusiste en el ejemplo, me da una IP diferente de las demas que los otros servidores me muestran. Parece ser que es un renegado... :D Thanx! |
Hola!
El metodo creado por Hector esta muy bien... Muchas gracias compañero, funciona de maravilla!! Gracias tambien a ti X-JABS, ese programita se "escucha" muy interesante... :D Hasta la vista... |
Adaptacion del codigo de Hector al Builder C++
Hice una adaptacion de lo que escribio Hector para el Builder C++. Lo podran encontrar en http://www.clubdelphi.com/foros/show...7760#post77760
Saludos Luis |
La franja horaria es GMT +2. Ahora son las 23:40:37. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi