Martin Waitz,
Marcel Ritter
-
12.
März
1999
AKBP-II 1999: Gruppe 4
Projekt-Name: FTPfs
Bearbeiter: Martin Waitz, Marcel Ritter
FTP Protokoll
Für alle, die sich mal mit dem FTP Protokoll
herumschlagen muessen, hier eine Kurzbeschreibung:
Zuerst das grundlegende: FTP läuft grundsätzlich
über zwei Ports: einen Kommando-Port (normalerweise
Port 21) und einem Daten-Port. Wie der Name schon ahnen
lässt, ist der fü das Absetzen von Kommandos
zuständig, auch die Statusmeldungen kommen auf diesem
Port wieder zurück. Diese bestehen aus aus 3 Ziffern,
die einen Statuscode angeben und einem Plain-Text Kommentar.
(Alternativ können auch mehrere Zeilen zur&uuuml;ck
kommen, was dann in lustigen Parsing-Spass ausarten kann,
s. dazu getreply(...) in ftp.c).
Die eigentlichen Daten kommen dann ueber den Datenport an.
Dazu muss jedoch auf der Client Seite bereits ein
horchender Port existieren (socket(...), bind(...), listen(...)),
auf den der FTP-Server connecten kann. Dafür muss der
wiederum erstmal wissen, wohin er eine Verbindung
aufbauen soll. Das erfährt er vom Client über
das PORT Kommando (PORT IP3,IP2,IP1,IP0,HIPORT,LOPORT).
Wird eine Datenverbindung erwartet, so sollte der
Daten-Port des Clients ankommende Anfragen des FTP-Servers
annehmen (accept(...)). Und dann kann gelesen werden, bis
einen schwarz vor Augen wird (oder alternativ bis ein
read(...) fehlschlägt :) Achtung! Der Datenport ist
danach nicht mehr zu gebrauchen und muss neu erstellt werden!
Beim Öffnen einer Verbindung zum FTP-Server, kommt
einem erstman eine tolle Statusmeldung entgegen. Danach
sollte man sich mit USER und PASS
anmelden (EECCHHTTT????). Ein paar weitere Befehle
sind HELP
Unser Server |
Brief an Webmaster |
Navigationshinweise |
Suche