FTP协议详解

FTP协议解析

一、网络拓扑

在这里插入图片描述

        服务端位于172.16.12.0网段,客户端位于192.168.68.0网段,通过中间的路由器做NAT完成通信。

二、协议简介

        FTP 英文全称 File Transfer Protocol,中文全称 文件传输协议。提供交互式访问,基于TCP完成数据的传输。

三、协议原理

    FTP采用C/S模型完成服务,一个FTP服务器可以为多个客户端提供服务。工作步骤如下:
        1、服务器启动,等待接收客户端的请求,一般默认端口为tcp的21;
        2、客户端与服务器建立控制tcp连接,该tcp连接用于后续交互ftp相关信息;
        3、服务器与客户端建立连接,处理相应请求。

3.1 主动模式(PORT)

3.1.1 什么是主动模式
        主动模式,英文单词positive的简写,即服务器主动和客户端建立数据tcp连接。
3.1.2 主动模式的交互流程

3.1.2.1 建立tcp连接
在这里插入图片描述
3.1.2.2 服务器(21)向客户端(55140)发送服务器准备就绪消息,告知客户端可以来连接了
在这里插入图片描述
3.1.2.3 客户端向服务端发送request报文,arg字段为用户名
在这里插入图片描述
3.1.2.4 服务端回复response,表示用户名没问题,需要密码
在这里插入图片描述
3.1.2.5 客户端发送request报文,回复密码
在这里插入图片描述
3.1.2.6 服务器回复response报文,表示已经登录,请继续操作
在这里插入图片描述
3.1.2.7 客户端发送request报文,表示需要知道服务器使用的操作系统类型
在这里插入图片描述
3.1.2.8 服务器回复response报文,表明自己的操作系统类型
在这里插入图片描述
3.1.2.9 客户端发送request报文,表示需要自己当前的路径
在这里插入图片描述
3.1.2.10 服务端返回当前工作路径
在这里插入图片描述
3.1.2.11 客户单发送request报文,表示请求已ascii传输
在这里插入图片描述
3.1.2.12 服务器表示同意用ascii
在这里插入图片描述
3.1.2.13 客户单向服务器发送request报文,表示希望以主动模式进行连接
在这里插入图片描述
active ip和active port用于后续建立传输数据的tcp连接
3.1.2.14 服务器同意使用客户端发送的ip和port建立主动连接
在这里插入图片描述
3.1.2.15 服务器向2.13中客户端报告的ip和port建立tcp连接
在这里插入图片描述
这里少了ack包,ack放在了第一个携带数据内容的报文中了,问题不大。
3.1.2.16 数据传输
在这里插入图片描述

3.1.2.17 数据传输完成,断开连接
在这里插入图片描述

3.2 被动模式(PASV)

3.2.1 什么是被动模式
        被动模式,英文单词passive的简写,即服务器等待客户端发请求,然后建立数据tcp连接。
3.2.2 被动模式的交互流程
3.2.2.1 建立tcp连接
在这里插入图片描述
3.2.2.2 服务器发送response报文,告知客户端已经服务器已准备好
在这里插入图片描述
3.2.2.3 传输用户名、密码
在这里插入图片描述
3.2.2.4 登录成功
在这里插入图片描述
3.2.2.5 知晓服务器的操作系统类型
在这里插入图片描述
3.2.2.6 获取服务器的当前工作路径
在这里插入图片描述
3.2.2.7 以ascii码传输数据
在这里插入图片描述
3.2.2.8 客户端请求已被动模式建立连接
在这里插入图片描述
3.2.2.9 服务器同意已被动方式建立连接,并在包里携带了建立连接的ip和port
在这里插入图片描述
3.2.2.10 建立tcp连接,传输数据吗,断开连接
在这里插入图片描述

四 常见的请求码和应答码

4.1 请求码

命令说明
ABOR使服务器终止前一个FTP命令,以及任何相关数据传输
ACCT使用一个 Telnet 字符串来指明用户的账户
ALLO为服务器上的文件存储器分配空间
APPE添加文件到服务器同名文件
CDUP 改变服务器上的父目录
CWD 改变服务器上的工作目录
DELE删除服务器上的指定文件
EPSV进入扩展被动模式
HELP返回指定命令信息
LIST如果是文件名,列出文件信息;如果是目录,则列出文件列表
MODE传输模式(S = 流模式、B = 快模式、C = 压缩模式)
MKD在服务器上建立指定目录
NLST列出指定目录内容
NOOP无动作,仅让服务器返回确认信息
PASS系统登录密码
PASV请求服务器,等待数据连接
PORT
IP 地址和两字节的端口 ID
PWD显示当前工作目录
QUIT从 FTP 服务器上退出登录
REIN重新初始化登录状态连接
REST由特定偏移量重启文件传递
RETR从服务器上找回(复制)文件
RMD在服务器上删除指定目录
RNFR对旧路径重命名
RNTO对新路径重命名
SITE由服务器提供的站点特殊参数
SMNT挂载指定文件结构
STAT在当前程序或目录上返回信息
STOR储存(复制)文件到服务器上
STOU储存文件到服务器名称上
STRU数据结构(F = 文件、R = 记录、P = 页面)
SYST返回服务器使用的操作系统
TYPE数据类型(A=ASCII、E=EBCDIC、I=binary)
USER>系统登录的用户名

4.2 响应码

命令说明
110新文件指示器上的重启标记
120服务器准备就绪的时间(分钟数)
125打开数据连接,开始传输
150打开数据连接
200就绪命令(命令成功)
202命令没有执行
211系统状态回复
212目录状态回复
213文件状态回复
214帮助信息回复
215系统类型回复
220服务就绪
221退出 FTP
225打开数据连接
226结束数据连接(下载完成、目录列表完成等)
227进入被动模式(IP 地址、ID 端口)
230成功登录 FTP 服务
250完成目录切换
257路径名建立
331要求密码
332要求账号
350文件行为暂停
421服务关闭
425无法打开数据连接
426结束连接
450文件不可用
451遇到本地错误
452磁盘空间不足
500无效命令
501错误参数
502命令没有执行
503错误指令序列
504无效命令参数
530登录 FTP 服务失败
532存储文件需要账号
550文件不存在
551不知道的页类型
552超过存储分配
553文件名不允许

五、windows下切换主动和被动模式

当前windows系统为了安全起见,基本都是使用的被动方式,如果要使用主动方式连接,可以参考以下步骤:

5.1 打开控制面板
在这里插入图片描述
5.2 找到internet选项
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JCnYdoyH-1658409131406)(https://note.youdao.com/yws/res/11830/WEBRESOURCE8edad973c771ad75b89f5bfa2f2091c7)]
5.3 高级选项
在这里插入图片描述
5.4 找到下图中的ftp选项,去掉对钩即为主动模式,选择为被动模式

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TCP/IP协议是目前互联网上最重要的通信协议之一,目录包括以下内容: 第一章:TCP/IP协议概述 介绍了TCP/IP协议的起源、发展、特点、应用领域和未来趋势等方面的内容。其中包括TCP/IP协议的体系结构、分层结构、传输机制和工作原理等内容。 第二章:IP协议详解 介绍了IP协议的地址分配、IP数据报的格式和传输机制,以及IP协议的特点和应用等方面的内容。其中包括IP地址、子网掩码、网关、路由表等基本概念和应用。 第三章:TCP协议详解 介绍了TCP协议的数据传输机制、连接建立过程、数据传输过程和连接关闭过程等方面的内容。其中包括TCP协议的流量控制、拥塞控制和错误恢复等基本机制和应用。 第四章:UDP协议详解 介绍了UDP协议的数据传输机制、特点和应用等方面的内容。其中包括UDP协议的简单传输机制、优点和缺点等基本概念和应用。 第五章:DNS协议详解 介绍了DNS协议的功能、域名解析过程和域名系统的结构等方面的内容。其中包括DNS协议的查询和响应过程,以及DNS服务器的分类和功能等基本概念和应用。 第六章:FTP协议详解 介绍了FTP协议的功能、工作原理、传输方式和常用命令等方面的内容。其中包括FTP协议的文件传输方式、连接建立过程和用户身份认证等基本概念和应用。 第七章:HTTP协议详解 介绍了HTTP协议的功能、特点、请求-应答模式和报文格式等方面的内容。其中包括HTTP协议的请求方法、响应状态码、实体头部和消息主体等基本概念和应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值