Все мои компьютеры находятся за одним маршрутизатором. У меня на одном из них работает сервер FileZilla. Я пытаюсь автоматизировать загрузку на сервер, используя пакетный скрипт и встроенный в Windows ftp.exe. Я настроил службу динамического DNS, чтобы иметь возможность доступа к моему серверу извне маршрутизатора, и я настроил переадресацию портов в маршрутизаторе на мой сервер. Я могу подключиться и передать просто отлично, используя Google Chrome, Windows Explorer и клиент FileZilla. Однако всякий раз, когда я пытаюсь использовать ftp.exe (вручную или в пакетном скрипте), я могу подключиться к серверу, но если я пытаюсь сделать что-либо, что может открыть соединение для передачи данных (LIST, STOR или RETR), я получаю следующую ошибку: 425 Не удается открыть соединение для передачи данных. Я разрешил ftp.exe в брандмауэрах обоих компьютеров. Есть идеи, что происходит или как я могу это исправить? Мне не нужно использовать ftp.exe, если кто-нибудь знает о переносимом независимом (просто exe-файле без других файлов) клиенте командной строки.
РЕДАКТИРОВАТЬ Я знаю, что мой провайдер блокирует много портов, в том числе 21 и несколько других в этом диапазоне. Все это настроено на порт 2121, с пассивными портами, настроенными на 2122-2142, все они были перенаправлены в маршрутизатор. Возможно, ftp.exe будет использовать только определенный порт для подключения к данным, который заблокирован моим провайдером? Если так, как бы я изменил это?