本文主要是介绍FTP主动与被动模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文件传送协议FTP:
- 提供交互式访问
- FTP屏蔽了各计算机系统的细节,因⽽适合于在异构⽹络中任意计算机之间传送⽂件。
- 传统FTP默认不加密
工作模式:(站在服务器的角度)
主动模式:服务器主动使用TCP20端口发起数据连接(默认)
-
被动模式:客户端使用任意非特权端口号发起数据连接,服务器会在客户端命令中指定的端⼝上监听数据连接,⽽不是从服务器的20端⼝发起连接。
被动模式更适⽤于客户端位于防⽕墙后的情况,因为它允许客户端初始化所有连接,解决了主动模式中 服务器⽆法穿越客户端防⽕墙的问题
工作原理:两种连接
- TCP控制连接
- 默认使⽤TCP 21端⼝
此连接始终开放,以保证客户端和服务器之间可以随时交换FTP控制信息。- TCP数据连接
- 在主动模式下,默认使⽤TCP 20端⼝。在被动模式下,端⼝号由服务器动态指定,并通知给客户端。
数据连接的⽣命周期较短,只在需要时建⽴,并在⽤完后⽴即关闭。FTP采⽤客户机/服务器架构
FTP客户端:可以是任何⽤来发起连接和⽂件传输请求的软件,如Web浏览器、命令行或专⽤ 的FTP客户端应⽤。连接方式:
- 命令行工具
ftp example.com ls/dir cd get下载 put上传 delete mkdir rmdir quit退出 命令提示符中的FTP客户端不⽀持被动模式(passive mode)。在 Windows 7 上,默认的 FTP 客户端(如命令⾏中的 FTP)通常会使⽤ 被动模式,⽽不是 主动 模式。quote PASV 切换到主动模式- web方式连接:ftp://地址
- 本地安装ftp客户端软件
登录方式:
- 匿名登录anonymous作为用户名登录
- 授权账户登录
这篇关于FTP主动与被动模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!