![]() |
Wie bekommt man die Öffentliche IP heraus ?
Hi Leuts,
ich habe wie wohl die meisten einen Router über den ich ins I-net gehe. nu will ich mit einem Delphi Programm meine IP addresse bekommen die man vom I-net aus sieht ( also die dies Routers ). ich weis das es möglich sein mus, denn mein Miranda Client zeigt mir sie immer als External IP an. Nur wie. Ich Forum hab ich schon gesucht aber nichts gefunden. Und meine Indy Kombos geben mir immer nur die Lokalen IP's. Kann mir einer von euch helfen ? |
Re: Wie bekommt man die Öffentliche IP heraus ?
Hi,
ich glaube dazu gabs schon mehrere Diskussionen, die immer das Ergebnis hatten, dass es nicht ohne eine externe Seite geht. Du kannst aber auf deinen Webspace eine PHP-Datei mit folgendem Inhalt legen:
Code:
Die kannst du dann per Indy auslesen...
<?php
echo $_SERVER['REMOTE_ADDR']; ?> |
Re: Wie bekommt man die Öffentliche IP heraus ?
Der ICQ-Client bekommt diese IP über den Server.
Entweder du schaust ob dein Router dir eine Möglichkeit bietet die IP auszulesen oder du verwendest eine externe Quelle. ![]() |
Re: Wie bekommt man die Öffentliche IP heraus ?
@NamenLozer
ok Webspace hab ich zum Glück. Und die PHP datei erstellen und hochladen ist kein problem. Allerdings habe ich mit Indy bisher nur TCP/IPClient(server), bzw UDP/server benutzt. wie konnecte ich mich dann auf diese PHP datei und ermittle dann damit meine IP ? |
Re: Wie bekommt man die Öffentliche IP heraus ?
Per TIdHTTPClient
|
Re: Wie bekommt man die Öffentliche IP heraus ?
hmm ich hab indy 9 da gibts das net, hab nur nen TIdHTTPServer will mal mein Glück mit dem versuchen ;)
|
Re: Wie bekommt man die Öffentliche IP heraus ?
|
Re: Wie bekommt man die Öffentliche IP heraus ?
Ich glaube, die Komponente heißt auch einfach nur TIdHTTP
edit: zu spät |
Re: Wie bekommt man die Öffentliche IP heraus ?
Cool das geht ja total easy. THX
hier mal meine Lösung falls igrendjemand das später auch mal Probieren will.
Delphi-Quellcode:
Var bla: TIdHTTP; Begin bla := TIdHTTP.create(self); showmessage(bla.Get('Addresse der oben Geposteten php Datei')); bla.free; End; |
Re: Wie bekommt man die Öffentliche IP heraus ?
Hi,
:shock: Sowas kann ich nicht mehr sehen du solltest noch try..finally..end hinzufügen :!: Mfg FAlter |
Re: Wie bekommt man die Öffentliche IP heraus ?
Und was passiert, wenn die Seite nicht erreichbar ist?
|
Re: Wie bekommt man die Öffentliche IP heraus ?
*g*
ok ihr habt ja Recht dieses Try finaly zeug vergesse ich immer. also ich hab das mal mit diesem What is my IP ausprobiert, das klappt eigentlich net schlecht ;)
Delphi-Quellcode:
Procedure TForm1.Button4Click(Sender: TObject);
Var bla: TIdHTTP; l: Tstringlist; j, i: integer; t, s: String; Begin bla := TIdHTTP.create(self); l := TStringList.create; // Nur zum Debuggen in einem String zwischengelagert Try t := bla.Get('http://www.whatismyip.de'); Finally bla.free; End; l.Add(t); label7.Caption := ''; For i := 0 To l.count - 1 Do Begin j := pos('your ip is', lowercase(l[i])); If j <> 0 Then Begin s := l[i]; delete(s, 1, j + length('your ip is')); delete(s, pos(' ', s), length(s)); label7.Caption := 'Externe IP : ' + s; break; End; End; l.free; bla.free; If Length(label7.Caption) = 0 Then Begin showmessage('Fehler Konnte [url]http://www.whatismyip.de[/url] nicht erreichen.'); End; End; |
Re: Wie bekommt man die Öffentliche IP heraus ?
Ich weiß nicht, ob man solche Seiten einfach für eigene Programme nutzen darf, aber es wäre unter Umständen sinnvoller, nach einem festgelegten Timeout, eine andere Seite zu nutzen. Dann hast du beispielsweise eine Liste mit 3 Seiten und die Wahrscheinlichkeit, dass alle nicht erreichbar sind, ist schon sehr gering. Ist dies der Fall, dann würde ich erst eine Meldung ausgeben.
Da gibt's ja einige Anbieter, auch welche, die dir Arbeit abnehmen, da du nicht erst die IP heraus friemeln musst, sondern direkt die IP erhälst: ![]() Wenn du natürlich eigenen Webspace hast, bist du (auch rechtlich) auf der sicheren Seite. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 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