FTP(File Transfer Protocol)について

ftp01 ftp02

FTP(File Transfer Protocol)はinternet初期の頃から存在するprotocolで、今でもinternetでよく使用されるprotocolの1つである。protocol上は任意のHost間のFile転送を行うことが可能であるが、通常は接続したClientとserver(FTPserver)間の転送に利用される。

用途としては
Webpage用の各種DataFile(HTML Sauce、画像など)のClientのPersonal computerからWebserverへのupload、Personal computersoftware配布サイトや、dataが入っているFTPFileserverからClientへのFileのDownloadなどに使われる。Downloadについては、Browsersoftwareでも可能であるが、UploadについてはFTPClientsoftwareやCUICommandが必要となる。

任意のHost間の転送を指示できる名残として、serverへの接続時のCommand用とは別にdata転送用のConnectionを確立するが、この確立方法にactive mode、Passive modeという2種類の方式がある。
active mode(port Modeとも言う)では、Clientがserverへ待ち受けIPaddressとport 番号を通知し、serverがClientから通知されたIPaddressのport 番号へConnectionを確立しに行く。このとき利用するport 番号が毎回異なるので、firewall、NAT(IPマスカレード)などを使った環境では場合によってはうまく接続できないこともある。この場合はPassive modeを用いる。

Passive modeではserverがClientへ待ち受けport 番号を通知し、待ち受けport 番号の通知を受けたClientがserverへConnectionを確立しに行く。いずれのModeでも、Command用とdata用で別々のConnectionを張ることには変わりはない。 server側にfirewallがある場合、dataConnectionのためにどのport 番号を使うかを設定してfirewallとの整合を確認する必要がある。 Passive modeを使っている限りにおいては、Client側のfirewallは気にする必要がない。

通常、serverに接続する際には認証を必要とするが、専らFile(主に無償のフリーsoftwareなど)を配布する目的で、匿名でaccessできる Anonymous(匿名) FTP serverを用いる場合もある。ただし、匿名accessでも形式上認証が必要であり、この場合、ユーザとして”anonymous”または”ftp”を指定する。

Password は通常何でもよいが、配布したsoftwareに瑕疵があった場合などにserver管理者が連絡をとることができるよう、ユーザの電子email addressを指定するのがマナー(ネチケット)とされてきた(email addressのdomainがClientのIPaddressの逆引きなどから明らかな場合は、”foo@”のようにdomainを省略することも多い)。serverによっては、Password がemail addressの形式を満たさないと利用できないこともある。

しかし、近年ではスパム(spam mail)などの問題により、むやみにemail addressを公開しない風潮が高まっていることから、このマナーは廃れつつある。また、現在ではFTPClient機能を備えたWebbrowserで匿名FTPserverにaccessすることも多く、この場合Password は特に指定しない限りbrowserのDefault設定(Internet Explorerであれば”IEuser@”など)が使われ、email addressとして意味のあるものにはならない。

↑ PAGE TOP