FTPについての個人的なまとめになります。
◆FTPとは
・FTP(File Transfer Protocol)とは、サーバーとクライアント間で、
ファイルなどの送受信する通信プロトコルのことです。
具体的にはFTPサーバーとFTPクライアントと呼ばれる、
両者間でデータがやり取りされます。
21番ポートが制御コネクション
20番ポートがデータコネクション
◆FTPの転送モード
・FTP には以下のふたつの転送モードがあります。
「アクティブモード」
サーバからクライアントに対してデータコネクション確立する。
「パッシブモード」
クライアントからサーバに対してコネクション確立する。
◆WindowsデフォルトのFTPの転送モード
・アクティブのようです。コマンドプロンプトより
以下コマンドを実行し、パッシブモードへ切り替えます。
quote pasv
◆データ部にもアドレス情報が格納される
IPヘッダー以外のデータ部分(ペイロード部分)にもアドレス情報を
格納するアプリケーション(FTPなど)があります。
FTPなどに共通する特徴は、IPアドレスやポート番号などの情報が
IPヘッダーやTCPヘッダー以外の部分にも格納されます。
つまり、データ部分(ペイロード部分)にもIPアドレスやポート番号などの
情報が格納されます。
そこで、そういったアプリケーション(FTPなど)でNATを行い、
IPヘッダーなどを書き換えた場合には、データ部分(ペイロード部分)も
書き換えないと、通信エラーとなります。
◆ftpコマンド (コマンドプロンプト)
・ftp 接続
ftp <ftpサーバアドレス>
※ユーザ名とパスワードを入力する。
・ファイルのダウンロード
get <ファイル名>
・ファイルのアップロード
put <ファイル名>
・ファイルの一覧表示
ls
◆ftpツール
・FFFTP(FTPクライアント)
・3Cdeamon(FTPサーバ)
◆ftpテストデータ作成方法
ftpでの転送テストを実施する際のテストデータの作成方法については、
コマンドプロンプトで、「fsutil」コマンドを使用します。
これにより任意のサイズでファイルを作成することができます。
・構文
fsutil file createnew <ファイル名> <サイズ(バイト)>
・作成例
fsutil file createnew TEST 10485760
※ファイル名をTESTで、10MB(10485760バイト)のファイルを作成する