EPSV прибирає проблему адреси FTP, а не друге з'єднання
Зрозумійте пасивну кінцеву точку даних, коли вхід через FTP працює через проксі, але список або підготовка передавання не вдається.
EPSV і далі відкриває окреме з'єднання даних FTP. Він змінює відомості про кінцеву точку, а не кількість з'єднань.
Традиційна відповідь PASV подає адресу й порт. Ця адреса може бути непридатною поза мережею сервера. EPSV подає порт і використовує адресу сервера, пов'язану з керівним з'єднанням.
Через проксі зберігайте логічну ідентичність FTP-сервера. Адреса прослуховування посередника не є автоматично тим сервером, якому належить повернутий порт даних.
З'єднанню даних також потрібен передбачений маршрут через проксі й дозвіл дістатися вибраного порту. Прийняття CONNECT до порту керування FTP не дозволяє кожне наступне з'єднання даних.
Перш ніж вимикати EPSV, огляньте пасивну відповідь, а також адресу сервера й порт, запитані для передавання. Успішний вхід через FTP встановлює керівне з'єднання; з'єднання даних лишається для перевірки. З Python ftplib відстежуйте обидва конструктори сокетів, а не покладайтеся лише на типове значення PySocks.