
自宅のパソコンWindows2000ServerのIISでFTPサーバを構築しました。
外部インターネット環境でコマンドプロンプトからログインし、テキストファイルのアップロードが無事に行えることを確認することができましたが、なんだか変なことがいくつかあります。
(1)かなり高い確率で、コマンド入力後(put *、dir等)、固まってしまい、反応がなくなってしまう(テキストファイルの場合、サイズが小さいためか成功することが多いがワード等大きいものの時よく起こるようです、その場合FTPディレクトリには0バイトのファイルがアップされています)
(2)アクセス拒否されてしまうことがある(読み取りも書き込みもOKにしています)
何かご存知の方いらっしゃいましたら教えてください。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
「外部インターネット環境」は「NAT 下」、乃至は「ファイヤウォール下」の環境じゃないですか?
基本的に Windows 環境にある ftp コマンドは、「アクティブモード」しか受け付けません。
要するに、FTP サーバ側から、IP マスカレード下にあるノードに対して、データ転送のセッションを張る事が出来ていない (うまくいってない) 可能性が考えられます。
アクティブモードの PORT コマンドは、平文でセッションを受け付ける自らの IP アドレスを指定してサーバに送るんですが、オモテに出ているルータから要求のノードの NAT 変換は行われますが、PORT コマンドで指定する IP アドレスやポートは、プライベートアドレスであり、ローカルノードの開放ポートのみを申告するので、サーバ側からデータ転送のセッションを張れず (NAT 変換されたセッション元には勿論張るが…) にコケる可能性が高いです。
実際にどこでコケてるか調べるには、debug モードを使ってください。
---
C:\>ftp
ftp> debug
Debugging On .
ftp> open hogehoge.**.jp
Connected to hogehoge.**.jp
220 hogehoge.**.jp server (****) ready.
User (hogehoge.xx.jp:(none)): hogehoge
---> USER hogehoge
331 Password required for hogehoge.
Password:
---> PASS ABCDEFG
230 User hogehoge logged in.
ftp> ls -la
---> PORT 192,168,0,123,5,34
---
debug モードでは上記のように、サーバに送信したコマンドを "---> " という矢印の後に表示してくれます。
多分、PORT コマンドを発した時に、レスポンスがかなり遅くなると思います。
その点、UNIX 環境等に存在する ftp コマンドは、パッシブモード (PASV) を実装しているのでクライアントからサーバのデータ転送用ポートに対してセッションを張る事が可能です。
ちなみに、パッシブモードは、Windows に実装できないわけではなく、「Windows の ftp コマンドに実装されていない」ってだけなので、パッシブモードは Windows でも実装できる機能です。
フリーウェア等の ftp クライアントとかでも、パッシブモードに対応しているのがいくつかあります。しかし残念ながら、Windows の ftp コマンドでは、パッシブモードは扱えません。
こういった状況で、FTP が詰まっちゃったら、パッシブモードをお使いになることをお勧めします。
nipotanさん、とても詳しいご回答ありがとうございます。
外部インターネット環境は、LAN内からでなくダイヤルアップでつないでいるのでやはり外部からの接続です。固まってしまったように見えたFTPコマンドも、随分待つとアップロードできました。単純にレスポンスが悪かったように感じます。
パッシブモードやアクティブモードに関することは知識として私になかったので大変参考になりました。
ありがとうございました。
No.3
- 回答日時:
よく言われるのに「PMTUDブラックホール問題」ってのがありますね。
これが原因であればMTU値、RWIN値を変更することで直ります。
変更は例えばNetTuneなどのツールで行ってください。
http://members.tripod.co.jp/mimi1014/
参考URL:http://www.kjps.net/faq/pmtud.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- サーバー FTPサーバについて詳しい方(アクセス権のないディレクトリを非表示にする方法) 4 2022/08/22 22:33
- ドメイン・サーバー・クラウドサービス FileZillaを使用してwpXサーバーに接続できない 2 2022/03/29 21:02
- WordPress(ワードプレス) WordPressのサイトにPDFをアップロードした際にGoogleなどの検索結果に出ないでほしい 1 2022/08/03 10:44
- サーバー Laravelをレンタルサーバーにインストールするにはどうすればいいですか? 2 2022/06/29 10:17
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- サーバー Googleドライブなどを使わずにテザリングAndroidでWindowsとファイル共有 1 2023/02/19 13:14
- UNIX・Linux VirtualBox ゲストOSにPC内蔵HDDのパーティションをマウントする方法は? 2 2023/05/06 22:52
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Windows 10 win10 立ち上げ時のエラー 1 2023/04/17 11:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
現在使用中の壁紙のファイルの...
-
WIN11 アップデートがイン...
-
WIN10 起動直後の画面が緑色になる
-
コイカツ!インストールできませ...
-
Windows 2000で動作して現在のW...
-
パソコンで、「ヴ」を入力したいの...
-
WINDOWS起動時に毎回でる警告文
-
BIOS設定画面から抜け出せない。
-
コマンドプロンプトのdisk part...
-
PCがフリーズしてしまったので...
-
幻塔が起動できません
-
パソコン画面の右下にESTART と...
-
win2000をwin10で使っているパ...
-
アプリケーションを起動できま...
-
IMEオプションが開かない
-
ウインドーズ10のシャットダウン
-
MS-DOS6.2でCD-ROMドライブを認...
-
pcでRobloxをインストールした...
-
魔改造版Windows 2000をインス...
-
富士通PCリカバリディスク起動...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WinSCPとの接続の切断方法について
-
macアドレスの疎通確認のコマン...
-
iMovieでビデオの分割ができな...
-
EXCEL2003のVBAで AutoFilter...
-
MS-DOSのconfig.sys内のEMM386....
-
開いているポートを調べたいの...
-
linuxのufwコマンドについて
-
shutdownコマンドを投入しても...
-
透過アニメーションGIFのリ...
-
apacheのポートが使用されている?
-
snoopの初歩教えて
-
AIXのoslevelコマンド
-
FTP通信がおかしい
-
ネットワークドライブの切断と...
-
DOSコマンドでネットワークドラ...
-
HTTPのアクセスログ以外のHTTP...
-
MACのショートカットについて
-
VB(Windows)からUNIXマシンのプ...
-
IPアドレス表記の変換(iptable...
-
net send について
おすすめ情報