Einzelnen Beitrag anzeigen

Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#5

Re: IdFTP und Ftp hinter einem Router

  Alt 21. Jan 2010, 20:17
Hallo,

Zitat von DelTurbo:
Folgendes habe ich rausgefunden. Dreht man den kram rum, also statt

Server.SiteToSiteUpload(FTPHinterdemRouter....

nach

FTPHinterdemRouter.SiteToSiteDownload(Server....

dann klappt es. Wieso? Keine ahnung. Die befehle STOR und RETR bleiben ja gleich.
Sieht eindeutig danach aus, dass die Ports auf dem Router erst dann geöffnet werden, wenn der "FTPHinterdemRouter" etwas anfordert. Also: Portbereich des Servers prüfen und im Router freigeben. NAT ist nicht lustig , das hat aber zum Glück nichts mit Indy zu tun.

Und: Das Du ein .List erst nach PassiveUseControlHost machen kannst zeigt, das der FTP Server nicht seine Public IP postet. Passiv und PassiveUseControlHost sind da schon richtig.

TryNATFastTrack und UseExtensionDataPort wären z.B. für neuere Commandos, insbesondere IPv4 und IPv6 Kompatibilität (EPRT, EPSV, da PORT und PASV nur für IPv4 gültig sind).

Aber das von Dir geschilderte ist schon recht eindeutig... Die meisten NATs in den meisten "Routern" ist nicht dolle um es mal nett zu sagen.

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat