我这边拿了好几个不同公网 IP 的服务器测试都是正常的,不知道是不是客户那边什么配置没处理好。
正常来说应该是主动模式不行,被动模式可以才对。
但客户那边完全反过来了,主动模式可以,被动模式不行。
1 、公司 FTP 服务器
旧 FTP 服务器,部署在路由器下面,通过 2121 端口转发到 FTP 服务器 21 端口
新 FTP 服务器,部署在华为防火墙下面,通过 21 端口转发到 FTP 服务器 21 端口
2 、客户服务器
访问公司新 FTP 服务器,执行 python 脚本,FTP 被动模式不通,主动模式可以。
访问公司旧 FTP 服务器,执行 python 脚本,FTP 被动模式和主动模式都可以。
3 、公司服务器(阿里云)
访问公司新 FTP 服务器,执行同样的 python 脚本,被动模式可以,主动模式不行。
主动模式不行这个可以理解,因为要开放客户端随机端口。
4 、公司服务器(电信机房)
访问公司新 FTP 服务器,执行同样的 python 脚本,被动模式可以,主动模式不行。
电信机房是一个公网 IP ,多个服务器公用。
5 、公司本地环境(路由器环境)
访问公司新 FTP 服务器,执行同样的 python 脚本,主动模式、被动模式都可以。
6 、公司本地环境(手机热点)
访问公司新 FTP 服务器,执行同样的 python 脚本,主动模式、被动模式都可以。
参考资料:
https://baijiahao.baidu.com/s?id=1725820836822429149&wfr=spider&for=pc