Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Internet IP (https://www.delphipraxis.net/12703-internet-ip.html)

MisterNiceGuy 2. Dez 2003 17:42


Internet IP
 
Hi, kann mir einer sagen, wie ich die Internet IP von meinem Rechner rausbekomme?
www.wiesitmeineIP.de is klar, aber das muss doch auch in Delphi gehen oder?
Also die Netzwerk IP hab ich schon öfter im Forum gefunden!

MNG

Uncle Cracker 2. Dez 2003 17:53

Re: Internet IP
 
Lad dir doch die IP doch direkt über die Seite in Delphi.

Matze 2. Dez 2003 18:19

Re: Internet IP
 
Mich würde das auch mal interessieren, aber über diese Seite möchte ich nicht gehen. mal angenommen , die gibt's nicht mehr...

MrKnogge 2. Dez 2003 18:44

Re: Internet IP
 
Also ich kenn keine andere Möglichkeit, seine IP herauszufinden.
(Ich kenn das mit www.whatsmyip.con oder so)

Das Problemist, wenn du hinter einem Router oder so sitzt, bekommst
du nur die vom Router. Such mal, ich hab den Code auch von hier, da
gibts mindestens 3-4 Threads.

Wormid 2. Dez 2003 18:45

Re: Internet IP
 
Die Internet-IP zu ermitteln ist eine kleine Wissenschaft für sich... Man kann nunmal leider nicht feststellen, ob ein PC direkt via DFÜ/Lan am Internet hängt und das Interface somit auch die gesuchte IP hat, oder ob man z.B. hinter einem Router hängt. Dann unterscheidet sich die externe IP nämlich von der internen.

Ich wüsste also nicht, wie man ohne ein Script oder Service im Internet zuverlässig die IP ermitteln kann. Wenn Du Angst hast, das der Service, den du nutzen willst, irgendwann den Dienst einstellt, dann wäre es natürlich am einfachsten, auf einem eigenen Webspace so ein Script abzulegen.

Hier mal die Routine vom phpBB, mit der die IP des Users ermittelt wird, ist direkt so nutzbar - nur als .php irgendwo speichern und auf Scriptfähigen Webspace hochladen.

Code:
<?php

  if (getenv('HTTP_X_FORWARDED_FOR') != '') {
   $client_ip = (!empty($HTTP_SERVER_VARS['REMOTE_ADDR'])) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ((!empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR);

   if (preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", getenv('HTTP_X_FORWARDED_FOR'), $ip_list)) {
      $private_ip = array('/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/', '/^172\.16\..*/', '/^10.\.*/', '/^224.\.*/', '/^240.\.*/');
      $client_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
   }
  } else {
   $client_ip = (!empty($HTTP_SERVER_VARS['REMOTE_ADDR'])) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : ((!empty($HTTP_ENV_VARS['REMOTE_ADDR']) ) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $REMOTE_ADDR);
  }
  echo $client_ip;

?>

trifid 2. Dez 2003 18:47

Re: Internet IP
 
Hallo,

in der Variablen pcIP steht dann die IP drinne ...
Delphi-Quellcode:
   
   uses ... sysutils, WinSock, Windows ... ;

   var wVersionRequested : Word;
   var wsaData          : TWSAData;
   var Host             : PHostEnt;
   var caHostName       : array[0..128] of char;
   var pcIP             : PChar;
begin
   wVersionRequested := MAKEWORD(1, 1);
   WSAStartup (wVersionRequested, wsaData);
   GetHostName (@caHostName, 128);
   Host := GetHostByName (@caHostName);
   pcIP := iNet_ntoa(PInAddr(Host^.h_addr_list^)^);

Chewie 2. Dez 2003 19:01

Re: Internet IP
 
Geht aber wie gesagt nur, wenn dein Rechner direkt am Netz hängt. Ist ein Router oder sonstwas dazwischen, kannst du es so vergessen. Dann hilft nur den Router zu fragen oder die Methode mit nem externen Server.

Spooky 5. Dez 2003 11:49

Re: Internet IP
 
also leude was simples
entweder mach man sich ne eigene .php die man auf nem webspace hostet so wie ich
http://XT2000.de/ip.php
der inhalt ist auch easy
Code:
<?
print getenv("REMOTE_ADDR");
?>
oder aber falls man bedenken wegen der verfuegbarkeit hat kann man auch diese url nutzen
http://checkip.dyndns.org

mein prog benutzt den IdHTTP
und ganz einfach abrufen mit dem befehl
Code:
Edit1.Text := IdHTTP1.Get('http://xt2000.de/ip.php');
;)
ihr koennt mal mein prog testen und kritisieren *fg*
Info

Kamil 5. Dez 2003 14:33

Re: Internet IP
 
http://checkip.dyndns.org/ liefert meine interne(!!!) IP und die interne IP des Proxies (also zwei IP Adressen)!!!
(http://XT2000.de/ip.php funktioniert)

Spooky 5. Dez 2003 14:36

Re: Internet IP
 
also das von dyndns sollte auch funktionieren
ich sitze hinter einem router und bei mir klappts wo ich noch nen proxy hatte hatte ichs nie ausprobiert


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:45 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz