Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   IP Adresse einer Internetseite auslesen (https://www.delphipraxis.net/154284-ip-adresse-einer-internetseite-auslesen.html)

martinf16 4. Sep 2010 02:01

IP Adresse einer Internetseite auslesen
 
Ich würde gerne die IP Adresse einer Internetseite auslesen. Das heißt, mein Programm hat eine Internetadresse, zum Beispiel www.example.com und nun möchte ich die IP, die sich hinter der Adresse verbirgt herausbekommen.

Geht das irgendwie?! Eigentlich müsste ja wenn man den Text einer Seite ausliest auch irgendwo im Hintergrund die IP eine Rolle spielen, oder?

Garfield 4. Sep 2010 07:31

AW: IP Adresse einer Internetseite auslesen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Dazu könnte man den Befehl PING in der Konsole nutzen.

himitsu 4. Sep 2010 07:35

AW: IP Adresse einer Internetseite auslesen
 
Eigentlich müßte man irgendwie mit den Indy diese (Server)-IP auslesen können.
(Ich weiß nur nicht mehr wie/wo.)

Und 'ne TIdPing-Komponente gibt es dort auch.

Sir Rufo 4. Sep 2010 08:20

AW: IP Adresse einer Internetseite auslesen
 
Das geht ganz hervorragend mit Synapse
Delphi-Quellcode:
uses
  Classes,
  blcksock; // Unit von Synapse

function GetIpsFromHost( const Host : string ) : string;
var
  Response : TStringList;
begin
  Response := TStringList.Create;
  try
    with TBlockSocket.Create do
      try
        ResolveNameToIP( Host, Response );
      finally
        Free;
      end;
    Result := Response.CommaText;
  finally
    Response.Free;
  end;
end;

helgew 4. Sep 2010 08:24

AW: IP Adresse einer Internetseite auslesen
 
Liste der Anhänge anzeigen (Anzahl: 1)
- Thema verfehlt -

Matze 4. Sep 2010 08:28

AW: IP Adresse einer Internetseite auslesen
 
Oder mit Bordmitteln:
Delphi-Quellcode:
uses WinSock;

function GetIPAddress(const HostName: string): string;
var
  R: Integer;
  WSAData: TWSAData;
  HostEnt: PHostEnt;
  Host: string;
  SockAddr: TSockAddrIn;
begin
  Result := '';
  R := WSAStartup($0101, WSAData);
  if R = 0 then
  try
    Host := HostName;
    if Host = '' then
    begin
      SetLength(Host, MAX_PATH);
      GetHostName(@Host[1], MAX_PATH);
    end;
    HostEnt := GetHostByName(@Host[1]);
    if HostEnt <> nil then
    begin
      SockAddr.sin_addr.S_addr := Longint(PLongint(HostEnt^.h_addr_list^)^);
      Result := inet_ntoa(SockAddr.sin_addr);
    end;
  finally
    WSACleanup;
  end;
end;
Aufruf z.B.
Delphi-Quellcode:
LblIP.Caption := GetIPAddress('delphipraxis.net');
Quelle: DF

Sir Rufo 4. Sep 2010 08:29

AW: IP Adresse einer Internetseite auslesen
 
Zitat:

Zitat von helgew (Beitrag 1047423)
Hi,

vor ein paar Jahren habe ich den angefügten Code geschrieben, damit lässt sich alles, was plausibel nach IP ausschaut, aus einem string extrahieren. Ich habe damals eine Liste von IP-Seiten heruntergeladen und dann die häufigste, als "externe" umworbene IP genommen, vielleicht hilft das ja.

Er hat aber keinen String wo die IP Adresse drin steht, sondern den Host-Namen und dazu möchte er die IP Adresse haben.
Das geht aber imho nur über ein DNS-Auflösung.

himitsu 4. Sep 2010 08:34

AW: IP Adresse einer Internetseite auslesen
 
@helgew: Komplett am Thema vorbei.
Der TE möchte eine URL/Domain in eine IP umwandeln.
Also z.B. die IP hinter delphi-praxis.de erfahren.

[edit]
@Sir: Tschuldschung, die RedBox vergaß dich zu melden und Matze will das hier nicht löschen :cry:

Matze 4. Sep 2010 08:34

AW: IP Adresse einer Internetseite auslesen
 
Der Code von helgew würde für IPv6-Adressen auch nicht funktionieren, zumal der eh was ganz anderes macht, wie bereits erwähnt.
Die anderen funktionieren für IPv6-Adressen vermutlich schon.

helgew 4. Sep 2010 08:34

AW: IP Adresse einer Internetseite auslesen
 
@Sir Rufo: siehe edit oben, Asche über mein Haupt! :oops: Ihr seid ja schon wieder aktiv zu dieser frühen Stunde^^
@himitsu: es war ja sonnenklar, dass es von deiner Seite wieder Tadel hagelt. Guten Morgen ;-)
@Matze: den verlinkten code habe ich für genau dieses Problem an anderer Stelle auch verwendet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:30 Uhr.
Seite 1 von 3  1 23      

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