一、现象:
ftp在主动模式下,数据连接建立不成功,提示如下:
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> passive
Passive mode off.
ftp> ls
500 I won't open a connection to 122.... (only to 183.....)
ftp: bind: Address already in use
二、原因:
a、此测试环境下,client (1.1.1.1)到server(3.3.3.3)到,要经过代理服务器(2.2.2.2)。
在port模式,与server建立控制链路的是中转ip2.2.2.2,而控制链路信息告诉server,要去连接client1.1.1.1,server认为不合法(只有连接2.2.2.2才合法),于是返回控制链路 500信息。
3、解决方法:使用被动模式。
注意:有些客户端不支持被动模式,即使提示行输出为被动模式,也不可信,因为那是服务端返回的信息。要抓包确认是不是真的使用被动模式。