| Autor |
Beitrag |
Nuker
      
Beiträge: 16
|
Verfasst: Mi 30.07.03 08:05
Hi Leute !!!!!!!
Ich hab folgendes Problem. Ich hab mir einen SMTP Server programmiert mit Hilfe der Indy 9 Componenten. Soweit so gut. Alles funktioniert, an Adressen die auf diesem Server gespeichert sind kann man Problemlos schreiben und über POP3 wieder abrufen...
Will man aber über ein solches EMail Konto eine EMail an jemand anderen ausserhalb des LAN schicken, so hab ich keine Ahnung wie ich das machen soll ... an welchen SMTP Server muss ich das schicken ??? Wie kann ich das rausfinden ???
Bitte helft mir !!!!
_________________ C YA - [BD]Nuker|Zeus:XML
Beware - The Matrix has you!
|
|
MSCH
      
Beiträge: 1448
Erhaltene Danke: 3
W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
|
Verfasst: Mi 30.07.03 18:04
na an den, dessen Mail Adresse angeben wurde.
hugo@blablabla.com Diesen Server musst du connection und via smtp die Nachricht überstellen.
vorsicht wenn du relays benutzt. Dann einfach alles an den Relay senden.
grez
msch
|
|
Nuker 
      
Beiträge: 16
|
Verfasst: Do 31.07.03 07:46
Titel: Hmm...
Hmm..
Und den gewünschten Server finde ich mit einem DNS Lookup heraus, oder ??
_________________ C YA - [BD]Nuker|Zeus:XML
Beware - The Matrix has you!
|
|
Cyrus
      
Beiträge: 56
|
Verfasst: Do 31.07.03 09:07
die Ip des Servers kannst du mit dieser funktion rausfinden:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36:
| function HostToIP(Host:string): String; //uses winsock type TaPInAddr = array[0..10] of PInAddr; PaPInAddr = ^TaPInAddr; var list:Tstrings; phe: PHostEnt; pptr: PaPInAddr; I: Integer; GInitData: TWSAData; Phostname:array[0..255]of char; begin Phostname:=''; for i:=0 to length(Host)-1 do begin Phostname[i]:= Host[i+1]; end; WSAStartup($101, GInitData); list := TstringList.Create; list.Clear; phe := gethostbyname(Phostname); if phe = nil then Exit; pPtr := PaPInAddr(phe^.h_addr_list); i := 0; while pPtr^[i] <> nil do begin list.Add(inet_ntoa(pptr^[i]^)); Inc(I); end; WSACleanup; result:=''; for i:=0 to list.Count-1 do begin result:=result+list.Strings[i]; end; end; |
Greetz Cyrus
_________________ Wer glaub er ist, hört auf zu werden!
Delphi Rulez!!!
|
|
matze
      
Beiträge: 4613
Erhaltene Danke: 24
XP home, prof
Delphi 2009 Prof,
|
Verfasst: Do 31.07.03 11:53
oder du pingst den server, dann kann man sich auch die IP zurückgeben lassen.
_________________ In the beginning was the word.
And the word was content-type: text/plain.
|
|
Cyrus
      
Beiträge: 56
|
Verfasst: Do 31.07.03 12:06
ICMP ECHO (Ping) kann von einigen Servern auch geblockt werden daher ist dns besser. DNS gibt die IP auch zurück wenn der Server down is da die meissten noch einen secondary dns am laufen haben!
greetz Cyrus
_________________ Wer glaub er ist, hört auf zu werden!
Delphi Rulez!!!
|
|
Nuker 
      
Beiträge: 16
|
Verfasst: Do 31.07.03 12:50
Hmm... Nur welchen DNS Server soll ich nehmen ?? Da hat ja jeder seinen eigenen ...
Und immer funktioniert es auch nicht ... ich hab zum Beispiel einen DNS Server der Telecom verwendet und versucht den E-Mail Server von 'mhplus.de' rauszufinden ... und zurück kam nichts ...
_________________ C YA - [BD]Nuker|Zeus:XML
Beware - The Matrix has you!
|
|
Cyrus
      
Beiträge: 56
|
Verfasst: Do 31.07.03 13:11
ich würde einfach immer das nach dem @ in mein funktion eingeben dann kriegst du immer die ip des servers (manchmal musst du auch einwenig warten 3-4 sek aber ein resultat sollte es immer geben
Greetz Cyrus
_________________ Wer glaub er ist, hört auf zu werden!
Delphi Rulez!!!
|
|
matze
      
Beiträge: 4613
Erhaltene Danke: 24
XP home, prof
Delphi 2009 Prof,
|
Verfasst: Do 31.07.03 15:29
ja DNS ist wirklich schwierig.
aber arbeitet dein code nicht auch auf DNS basis ? oder wie löst der das auf ?
_________________ In the beginning was the word.
And the word was content-type: text/plain.
|
|
Cyrus
      
Beiträge: 56
|
Verfasst: Do 31.07.03 15:34
mit der funktin gethostbyname aus winsock (weiss nicht genau wie die funktion arbeitet) aber ich glaube die sucht in vielen dns bis sie den eintrag gfunden hat
Greetz Cyrus
_________________ Wer glaub er ist, hört auf zu werden!
Delphi Rulez!!!
|
|
Nuker 
      
Beiträge: 16
|
Verfasst: Do 31.07.03 15:46
Ich nehme als Ausganspunkt auch immer die Adresse nach dem @, so wie zum Beispiel 'mhplus.de'.
Die IP bekomm ich auch, das ist kein Problem, nur die IP alleine Hilft mir nicht. Ich brauch dazu den DNS Server der die dazugehörigen Daten liefert, und das ist in 99% aller Fälle nicht die Adresse hinter dem @.
Die meisten haben die Ports für die DNS Anfragen gesperrt und nur einen Zentralen DNS Server... oder auch garkeinen ... also woher nehmen und nicht stehlen  ...
_________________ C YA - [BD]Nuker|Zeus:XML
Beware - The Matrix has you!
|
|
MSCH
      
Beiträge: 1448
Erhaltene Danke: 3
W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
|
Verfasst: Do 31.07.03 17:27
du musst den MX Record abfragen und der hinter dem @ liefert dir garantiert einen, sofern er einem SMTP hat. Ansonsten kommen dort ja nie mails an !.
die Kompos von fpipette konnen sowas, auch die indy und die Fastnet.
grez
msch
|
|