Delphi-PRAXiS

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

Kendor 2. Jan 2003 10:16


Internet IP durch LAN
 
also mein Problem ist das ermitteln der aktuellen Internet-IP auch wenn man sich über einen Router o.ä. einloggt...
bei PC's die sich über das Telefonnetz einwählen habe ich bisher folgende methode angewandt:

Delphi-Quellcode:
uses ..., winsock;

function getIPAdress: string;
var phoste : PHostEnt;
Buffer : array[0..100] of char;
WSAData : TWSADATA;

begin
result:='';
if WSAStartup($0101, WSADATA) <> 0 then exit;
GetHostName(Buffer, Sizeof(Buffer));
phoste:=GetHostbyName(buffer);
if phoste = nil then
result:= '127.0.0.1'
else
result:= StrPas(inet_ntoa(PinAddr(phoste^.h_addr_list^)^));
WSACleanup;
end;

Wenn mein PC aber im LAN steht, dann erhalte ich hier nur das übliche 192.168.1.x oder so...
wer kann helfen?
Danke euch!
es grüsst Kendor

PS: Happy New Year ;)

Sharky 2. Jan 2003 10:24

Re: Internet IP durch LAN
 
Zitat:

Zitat von Kendor
also mein Problem ist das ermitteln der aktuellen Internet-IP auch wenn man sich über einen Router o.ä. einloggt...

Hai Kendor,

da wirst Du pech haben. Dein Rechner bekommt ja keine öffentliche IP zugewiesen. Nur der Router hat diese. Der Zugriff auf das Internet wird dann durch NAT geregelt. Für die "Gegenstelle" (WEB,FTÜ-Server usw.) kommst Du immer von der IP die der Router hat.

Kendor 2. Jan 2003 10:32

also dann müsste ich eine Art Server machen, den ich über das I-Net ansteuere (dann erhält dieser ja meine I-Net IP) und der dann die IP an den Client zurücksendet?

Sharky 2. Jan 2003 10:52

Zitat:

Zitat von Kendor
also dann müsste ich eine Art Server machen, den ich über das I-Net ansteuere (dann erhält dieser ja meine I-Net IP) und der dann die IP an den Client zurücksendet?

Das wäre eine Möglichkeit. Aber dafür müsstest du ja wieder einen Server haben der eine feste IP-Besitzt oder einen Anbieter finden der es dir erlaubt auf dem Server wo du z.B. eine Homepage gehostet hast ein Programm laufen zu lassen.

Was für einen Router hast Du denn? Eventuell kannst Du die IP die ihm von deinem InterNetProvider zugewiesen wurde ja via Telnet auslesen?

RomanK 2. Jan 2003 11:04

Hoi und Willkommen.

Also ich habe das mit einenm PHP-Script gelöst.
Das Script wird mit UrlDownloadToFile oder http://www.delphipraxis.net/viewtopic.php?t=1048 runtergeladen .

In der Php datei steht :

Code:
<? echo $REMOTE_ADDR; ?>

Helld_River 2. Jan 2003 13:11

Vielleicht hilft's ja
 
Hi !
Also, bei meinem Router kann ich per Webbrowser auf die Einstellungen zugreifen bzw. diese ändern.

D.h.:
Wennich mir http://192.168.1.254/Status.htm anzeigen lasse (IP ist die des Routers) bekomme ich dir aktuelle Internet-IP angezeigt. Dann kann ich sie mir aus dem HTML-Quellcode raussuchen !!

Gruß, Patryk

magic.christel 3. Jan 2003 10:08

Re: Internet IP durch LAN
 
Zitat:

Wenn mein PC aber im LAN steht, dann erhalte ich hier nur das übliche 192.168.1.x oder so...
Hi Kendor,

es muesste doch über ein Traceroute ("tracert" unter Windows) an einen bekannten Rechner gehen (z.B. www.heise.de). Die erste Adresse, die Traceroute liefert, die keine 192.168.1... ist, muesste die externe IP-Adresse des LAN-Servers sein. (Habe ich allerdings nicht getestet).

Bis dann

Christian

Gast 3. Jan 2003 10:35

Hi Kendor,

mach es Dir doch nicht so schwer, schaue Dir einfach mal folgende Links an. Damit solltest Du das ohne Probleme machen können :

...die IP Adresse hinter einem router/proxy ermitteln (2)?

...die eigene Internet-IP-Adresse hinter einem Router/Proxy herrausfinden?

Kendor 3. Jan 2003 16:46

Hei Danke Leute,
war echt hilfreich eure Beiträge!
*ab jetzt auch helfen will* :wink:

grüsse Kendor


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:23 Uhr.

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