文件传输协议FTP解析
一、FTP状态码解析
FTP服务器: 220 (vsFTPd 2.0.1) |说明:链接成功
FTP客户端: USER useway |说明:输入用户名
FTP服务器: 331 Please specify the password. |说明:请输入密码
FTP客户端: PASS !@#$%abce |说明:输入密码
FTP服务器: 230 Login successful. |说明:登录成功
FTP客户端: CWD /home/useway |说明:切换目录
FTP服务器: 250 Directory successfully changed. |说明:目录切换成功
FTP客户端: EPSV ALL |说明:为EPSV被动链接方式
FTP服务器: 200 EPSV ALL ok. |说明:OK
FTP客户端: EPSV |说明:链接
FTP服务器: 229 Entering Extended Passive Mode (|||62501|) |说明:被动链接端口为62501
FTP客户端: LIST |说明:执行LIST显示文件列表
FTP服务器: 150 Here comes the directory listing. |说明:列表从62501端口被发送
FTP服务器: 226 Directory send OK. |说明:发送完成
FTP客户端: QUIT |说明:退出FTP
FTP服务器: 221 Goodbye. |说明:再见
二、FTP主动/被动模式对比
FTP协议使用两个TCP链接来分别进行命令传输和数据传输,将管理和数据传输分隔开。
主动模式和被动模式的区别主要体现在端口的确定上。
(一)主动模式
1.主动模式的特征
主动模式下,FTP服务器的命令端口和数据端口是固定不变的,例如模式21是命令端口,20是数据端口。FTP服务器的端口也可以在配置文件中设置,但无论怎么配置都是一经设定,则固定不变。
2.主动模式数据传输过程
第一步:客户端会随机开启大于1024的端口N和N+1两个端口,N为客户端的命令端口,N+1为客户端的数据端口。
客户端使用端口N连接FTP服务器的命令端口21建立控制连接,同时开放N+1号端口进行监听。然后通过命令端口向服务器发出PORT N+1命令,告诉服务器我这边开启了数据端口N+1。
第二步:在控制连接建立成功后,服务器会使用数据端口20,主动连接客户端的N+1端口以建立数据连接。这就是FTP主动模式的连接过程。
我们可以看到数据连接建立的过程中,服务器是主动的连接客户端的,所以称这种模式为主动模式。
(二)被动模式
1.被动模式的特征
被动模式下,FTP的命令端口是固定不变的,但是数据端口是自动从端口1024到5000中随机选择的,或者从自己配置的端口范围内随机选择。
2.被动模式数据传输过程
第一步,客户端的命令端口N主动连接服务器命令端口21,并发送PASV命令,告诉服务器用“被动模式”。
第二步,控制连接建立成功后,服务器随机开启一个数据端口P,通过PORT命令将P端口告诉客户端。
第三步,客户端的数据端口N+1去连接服务器的数据端口P,建立数据连接。
参考文章:
1、https://blog.csdn.net/linjing2587032062/article/details/47760979
2、https://www.cnblogs.com/rainman/p/11647723.html
3、https://blog.csdn.net/qq_16038125/article/details/72851142
4、https://blog.csdn.net/qq_16038125/article/details/72851142
文件传输协议FTP解析相关推荐
- 文件传输协议FTP和开源FTP软件FileZilla
一.文件传输协议FTP. 1.简介. FTP(File Transfer Protocol),是文件传输协议的简称. 1)TCP/IP协议簇,应用层协议,用于Internet上的控制文件的双向传输,采 ...
- [转]文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
转自:http://blog.csdn.net/soarheaven/archive/2008/12/08/3474152.aspx 最近项目需要对FTP服务器进行操作,现把实现总结如下: 打算分2篇 ...
- 6.3文件传输协议FTP
6.3文件传输协议FTP
- 【计算机网络】应用层 : 总结 ( 网络应用模型 C/S P2P | 域名解析 DNS | 文件传输协议 FTP | 电子邮件 | 万维网 与 HTTP ) ★★★
文章目录 一.网络应用模型 ★ 二.域名解析过程 ★ 三.FTP 文件传输协议 四.电子邮件★ 五.万维网 和 HTTP 协议★ 一.网络应用模型 ★ 网络应用模型 : ① 客户 / 服务器 模型 ( ...
- 【学习笔记】网络层:应用模型、DNS系统、文件传输协议FTP
文章目录 一. 应用层概述 ① 客户/服务器(C/S)模型 ② P2P模型(对等模型) 二. DNS系统 ① 定义 ② 域名 ③ 域名服务器 ④ 域名解析过程 三. 文件传输协议FTP ① 定义 ② ...
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1...
相关文章导航 Sql Server2005 Transact-SQL 新兵器学习总结之-总结 Flex,Fms3相关文章索引 FlexAir开源版-全球免费多人视频聊天室,免费网络远程多人视频会议系统 ...
- 《计算机网络》——文件传输协议FTP、简单邮件传送协议SMTP、邮局协议POP3、网际报文存取协议IMAP、万维网和HTTP协议、超文本传输协议HTTP
文章目录 文件传输协议FTP FTP服务器和用户端 FTP工作原理 简单邮件传送协议SMTP 邮局协议POP3 网际报文存取协议IMAP 万维网和HTTP协议 超文本传输协议HTTP HTTP协议的特 ...
- 四十三、文件传输协议FTP、电子邮件、万维网
文章目录 1.FTP服务器和用户端 2.FTP的工作原理 3.电子邮件 3.1 电子邮件的信息格式 3.2 电子邮件的组成结构 3.3 简单邮件传送协议SMTP 3.4 邮局协议-POP3 3.5 网 ...
- 计算机网络 王道考研2021 第六章:应用层 -- 文件传输协议FTP、电子邮件SMTP、POP3
文章目录 1. 文件传输协议 FTP 1.1 文件传输协议 1.2 文件传输协议 FTP 1.3 FTP的工作原理 1.4 控制连接与数据连接 1.5 补充:FTP传输模式 2. 电子邮件 2.1 电 ...
最新文章
- 固态硬盘是什么接口_SATA接口和M.2接口的固态硬盘哪个好?SATA接口和M.2接口的区别...
- SpringMVC4集成ehcache
- Redis-20Spring缓存机制整合Redis
- 160个Crackme025之巧去Neg
- 将DevExpress.Utils.ImageCollection变量的image导出
- php 常用设计模式demo
- 一二三系列之状压DP——Max Correct Set(一)Neko Rules the Catniverse (Large Version)(二)Make It Ascending(三)
- MFC开发IM-第二十篇、MFC添加自定义消息
- 开源地图编辑器 MarbleMap,支持Cocos2d-x坐标系
- 您未被授权查看该页 您不具备使用所提供的凭据查看该目录或页的权限 HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。...
- Python音乐播放器-美观-简约-本地
- Groovy模板引擎
- Mac OS使用技巧之四:修改打开不同格式视频的默认播放器
- 网络流量监测IP雷达 1.0
- 王给月度BOSS队伍带来什么变化?
- 如何使用mapbox选择拾取地图要素
- 算法 树7 二叉搜索树的操作集
- dhrystone测试结果_测试cpu的简单工具-dhrystone | 学步园
- Node-RED中使用JSON数据建立web网站
- Java毕设项目线上教学平台(java+VUE+Mybatis+Maven+Mysql)
热门文章
- JAVA调用微信投放卡券——HTML5线上发券(JS-SDK接口)
- linux网络存储nas搭建,树莓派自建 NAS 云盘之——树莓派搭建网络存储盘
- 初学小程序之制作电影介绍查询小程序遇到的问题和解决办法
- 计算机专业教学情况反馈表格,实用的计算机教学计划四篇
- 学校电脑室计算机使用流程,学校电脑室安全管理制度
- 我对morgan stanley it的了解
- Prolog 列表练习 2
- 爱情在伤害面前止步!
- 我的世界手机版javaui材质包_PBR基于物理的光照纹理包绘制-教你做我的世界光追材质包(理论篇)...
- 职工考勤信息管理系统(中南大学课程设计)