Имя: Пароль:
IT
Админ
Странности с подключением к FTP
0 Hazer79
 
19.10.11
11:37
Здравствуйте.
Прошу ногами не пинать, тема вроде как в инете разжёванная, но всё же не могу выйти из ситуации.
Есть, значит, локальная сеть с адресами 192.168.10.Х. В ней же сервак Win 2008. На нём FTP-сервер Filezilla. Порт стандартный.
Далее. Вся сетка находится за роутером, на котором белый IP и настроен проброс портов с (допустим) 7777 на 192.168.10.100:21 (сервер). То есть пакеты, приходящие на 7777 уходят на локальный фтп сервер.

Есть в инете пять компов с динамическими IP, которые раз в 15 минут коннектятся к этому FTP и обмениваются файлами. Два компа из пяти имеют инет по проводам (кабель), остальные через 3G модемы. Так вот, что самое странное, так это то что те два проводных компа спокойно обмениваются инфой с сервером, а те, которые на 3G-модемах сидят - никак.
Соединение с сервером проходит на ура, логинятся отлично, но на клиенте всё заканчивается командой dir с выдачей строки
150 opening data channel for directory list
на сервере в логах в то же время
425 Can't open data connection

Что это за чудеса чудесатые, подскажите пожалуйста... Всю голову сломал.

P.S. На клиентах literal pasv пробовал - не помогает.
1 andrewks
 
19.10.11
11:44
попробуй разные режимы - активный, пассивный, RFC поиграйся
2 IVIuXa
 
19.10.11
14:56
Исходящий порт 20, открываемый на стороне сервера, используется для передачи данных, порт 21 для передачи команд
3 IVIuXa
 
19.10.11
14:58
но у тебя видимо проблема с компами на 3G

PASSIVE MODE

Изначально протокол предполагал встречное TCP-соединение от сервера к клиенту для передачи файла или содержимого каталога. Это делало невозможным общение с сервером, если клиент находится за IP NAT, кроме того, часто запрос соединения к клиенту блокируется файерволом. Чтобы этого избежать, было разработано расширение протокола FTP passive mode, когда соединение для передачи данных тоже происходит от клиента к серверу. Важным моментом является то, что клиент устанавливает соединение с адресом и портом, указанным сервером. Порт сервер выбирает случайным образом из определённого диапазона (49152-65534). Поэтому при нахождении ftp-сервера за NAT, следует явно указать в настройках сервера его адрес.
4 IVIuXa
 
19.10.11
15:00
+(3)
можно тупо предположить что ftp - у тя в активном режиме
а 3G првайдер раздает доступ помещая тебя за nat
5 IVIuXa
 
19.10.11
15:03
выход для тебя либо выносить ftp сервак в пассивном режиме за периметр
либо с 3g возводить VPN и забирать напрямую пакеты
6 IVIuXa
 
19.10.11
15:04
+(5)
либо провайдера 3g искать без nat
7 Hazer79
 
19.10.11
15:59
проблема решилась (временно) тем что на роутере открыл порт 21 вместо 7777.
Всё пошло нормально. В автивном режиме.
8 Hazer79
 
19.10.11
15:59
>автивном
активном