ftp主动模式和被动模式简单介绍
FTP连接主动模式和被动模式
- 主动模式(PORT)
FTP客户端连接到服务端的21端口,发送用户名和密码,登陆成功后,读取数据时,客户端随机开放一个1024以上的端口,发送port命令到服务器,告诉服务器采用主动模式,FTP服务器收到主动模式命令和端口号后,通过服务器的20端口与客户端开放的端口连接
2 .被动模式(PASV)
FTP客户端连接到FTP服务端的21端口,发送用户名和密码登陆,登陆成功后读取数据时,发送PASV命令到FTP服务器,服务器在服务器上开放一个1024以上的端口号,然后把开放的端口告诉客户端,客户端在连接到服务器开放的端口,进行数据传输。
两种模式比较
- 主动模式传送数据时是 服务器20 连接 客户端 的高位随机端口
- 被动模式传送数据时是 客户端 连接到服务器高位随机 的端口
- 不同工作模式的网络设置
如果服务端只开放了21端口,客户端采用被动模式连接,只能登陆成功,但是获取不到文件列表。这是由于服务端没有开放随机的高位端口导致的
虽说网上很多都比较推崇用被动模式传输数据,但也是要看情况而定
如果你要从甲方爸爸的ftp上面取一个数据,那么建议是用主动模式,因为甲方爸爸,不太可能会对你开放一段的高位端口让你用被动模式读取数据。