Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi wie mache ich einen lookup? (https://www.delphipraxis.net/3652-wie-mache-ich-einen-lookup.html)

Darkmorph 24. Mär 2003 07:47


wie mache ich einen lookup?
 
ich möchte mit meiner Applikation die IP eines DYNDNS-Accountes auslesen, also pragmatisch, einen "EINFACHEN" LOOKUP machen...
ich hab keine ahnung wie...
ZUSATZINFO: ICH SITZE HINTER EINEM ROUTER
1. Versuch: Serversock in meiner App auf Port 80 lauschen gelassen
Clientsock versucht zu connecten via darkmorph.dyndns.org
//FEHLSCHLAG: TIMED OUT (wahrscheinlich wegen dem Router...)
2. INDY-ICMP: mit dieser hab ich Darkmorph.dyndns.org angepingt, der
Reply beinhaltet jedoch die IP meines Router 192.168.0.1
//also fehlschlag.

unabhängig davon hab ich es mit dem DOS-Programm Ping.exe versucht.
dieses Programm zeigte mir meine ISP-IP an.
Ebenso der IE-Explorer mit dem ich versuchte zur DYNDNS-Addi zu verbinden, connecte zu 203.x.x.x ...

wieso zeigt mir das indy-ICMP-Ding die IP meines Routers und nicht die meines ISP's an?

Bin dankbar für jeden denkanstoß!!

MfG MorPH

Chewie 24. Mär 2003 13:01

Probier es mal über die WinSock-Schnittstelle:

Delphi-Quellcode:
function HostToIP(host: String): String;
var
  HostEnt: PHostEnt;
  addr: PChar;
begin
  Result := '';
  if inet_addr(PChar(host)) = -1 then
  begin
    HostEnt := gethostbyname(PChar(host));
    if Assigned(HostEnt) then
    begin
      addr := HostEnt^.h_addr_list^;
      if Assigned(addr) then Result := Format('%d.%d.%d.%d',[byte(addr[0]),byte(addr[1]),byte(addr[2]),byte(addr[3])]);
    end;
  end;
end;
uses WinSock nicht vergessen!

Darkmorph 24. Mär 2003 13:30

vielen dank für deine Hilfe, hat super geklappt.

MfG MorpH


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 Uhr.

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