1

パッシブ ftp を使用してファイルを ftp しようとしていますが、putコマンドが呼び出されるとタイムアウト (12002) が発生します。

他の ftp サイトではパッシブ ftp を使用できますが、この新しいサイトでは使用できません。

同じサーバーで3つの異なる方法を使用してこれを試しました:

  • パッシブ モードの FileZilla クライアント - これは動作します
  • パッシブ モードの WinINet ライブラリ - PutFile の呼び出し時にタイムアウトが発生する
  • パッシブ モードの IE 6 - ディレクトリの一覧を表示しようとするとタイムアウトが発生する

これは Windows 2000 サーバー上にあります。

FileZilla が機能していたので、ファイアウォールが正しく設定されていると思います。

何が起こっているのかを理解するのを手伝ってくれる人はいますか?

4

1 に答える 1

1

パッシブ モードでは、FTP サーバーはその側でポートを開き、接続する必要がある IP/ポートを FTP クライアントに伝えます。クライアント側では、新しいソケットを作成し、それをローカル IP/ポート (特に設定しない限り、通常はランダムな IP/ポート) にバインドし、サーバーの指定された IP/ポートに接続します。Wireshark などのネットワーク パケット スニファからのトレース ログを実際に見なければ、クライアント側のファイアウォール/ルーターがアウトバウンド接続をブロックしているか、サーバー側のファイアウォール/ルーターがインバウンド接続をブロックしていると推測できます。FileZilla が問題なく通過しているという事実は、おそらく、接続の両端の IP/ポート ペアが、両端で接続を受け入れるためのすべてのファイアウォール/ルーター ルールに一致することを意味しますが、WinInet/IE IP/ポート ペアの何かが代わりに拒否されます。ただし、パッシブ モードはアクティブ モードよりもファイアウォール/ルーターに適している傾向があるため、これは少し珍しいことです。Windows のコマンドライン ftp.exe ユーティリティを使用して、動作するかどうかを確認しましたか? ところで、IE はすべての接続に WinInet を使用します。

于 2009-11-06T00:42:17.557 に答える