Мне нужно скачать большие файлы с FTP-сервера, на котором работает ProFTPD. Сервер не мой, все, что я могу сделать, если возникнут некоторые проблемы, это связаться с его администратором. И проблема в следующем.

Сначала я подключаюсь к серверу в пассивном режиме и начинается загрузка. Затем, через некоторое время, соединение может быть потеряно, и ftp-клиент (на самом деле не важно, какой именно, поскольку я использовал много, последний из них - Download Master) пытается восстановить соединение. Сервер настроен на ограничение количества соединений с одного IP. И в этот момент сервер возвращает ошибку о том, что лимит превышен. Похоже, что ProFTPD не чувствует, что предыдущее соединение было разорвано или не обрабатывает его.

Это нормально? Насколько мне известно о TCP, я бы сказал, что сервер должен каким-то образом получать событие отключения от сокета . Если это так, возможно ли настроить ProFTPD таким образом, чтобы сброшенные соединения обрабатывались правильно и быстро?

Я задал вопрос администратору этого сервера, но он сказал, что это невозможно.

1 ответ1

2

Это зависит от того, как соединение "потеряно". Сервер замечает это только тогда, когда клиент явно отключает TCP-соединение (с помощью пакетов FIN или RST). Но если клиент переподключается из-за тайм-аута (когда сетевые проблемы приводят к потере всех пакетов), возможно, сервер еще не заметил этого и не может ничего заметить, если периодически не пингует клиента или не закрывает соединение после тайм-аута.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .