1.quit退出

客户端输入退出命令:

退出的抓包数据交换过程:

2.用户登录,输入正确用户名和错误用户名都是返回331请求输入密码,这里不再将错误用户名的抓包数据交换过程截图。

数据交换过程:

服务器端准备好的数据格式(状态码 消息):

客户端发送用户名格式(USER 用户名):

服务器端返回请求输入密码格式(状态码 消息):

客户端发送密码格式(PASS 密码):

服务器端返回正确登录消息(状态码 消息):

如果登录失败后在ftp> 下输入open dstip,user xxx的数据交换格式同上。

open dstip就相当于发起一个新的连接。

user xxx就相当于发送USER xxx,然后会要求输入密码。

3、目录检索,真实的ftp传输是有控制通道和数据通道的:

输入命令:

客户端发送命令请求:

服务器端相应命令请求状态:

服务器端相应结果:

服务端响应数据发送完毕:

如果用户未登录,服务器端会请求客户端输入用户密码:

4、目录切换

如果客户端未登录,则服务器端会请求客户端输入用户密码:

用户已经登录的状态:

目录切换成功:

目录切换失败:

5、打印当前目录:

6.文件下载

基本数据交换过程都一样:

1)客户端请求端口

2)服务器回应端口可用

3)客户端请求命令

4)服务器回应文件状态和文件大小

5)服务器开始发送文件内容

6)服务器发送文件发送完毕状态

若服务器读取文件失败时,服务器会响应错误消息:

7.文件上传:

若服务器无法写文件,服务器会响应失败消息:

正常的文件上传过程:

1)客户端请求端口

2)服务器回应端口可用

3)客户端请求命令

4)服务器回应可以发送了

5)客户端发送文件内容

6)服务器发送文件发送完毕状态

抓包来看ftp状态码的更多相关文章

  1. HTTP、FTP状态码 汇总

    原文:HTTP.FTP状态码 汇总 HTTP1xx - 信息提示(这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应. ) • 100 - 继续.• 101 - ...

  2. Tcp抓包以及tcp状态解释

    tcp三次握手 发送端发送一个SYN=1,ACK=0标志的数据包给接收端,请求进行连接,这是第一次握手:接收端收到请求并且允许连接的话,就会发送一个SYN=1,ACK=1标志的数据包给发送端,告诉它, ...

  3. HTTP、FTP状态码 (share)

    来源:http://www.cnblogs.com/setsail/archive/2012/03/23/2413577.html HTTP1xx - 信息提示(这些状态代码表示临时的响应.客户端在收 ...

  4. 阿里云SLB漏选“健康检查正常的http状态码”导致url重定向失败问题处理

    背景:           一客户将线下电商网站迁移到阿里云上,公网出口使用阿里云SLB,SLB后端实例为ECS(webserver)web服务使用nginx.后端APP服务器使用了tomcat:to ...

  5. 抓包分析TCP的三次握手和四次握手

    问题描写叙述: 在上一篇<怎样对Android设备进行抓包>中提到了,server的开发者须要我bug重现然后提供抓包给他们分析.所以抓好包自己也试着分析了一下.发现里面全是一些TCP协议 ...

  6. 07- HTTP协议详解及Fiddler抓包

    HTTP协议简介-超文本传输协议 HTTP协议是请求/响应协议:客户端发送请求到服务器,服务器响应该请求.当前版本为1.1版本. HTTP协议特点 1.简单快速:客户向服务器请求服务时,只需传送请求方 ...

  7. charles抓包--手机端

    Fiddler和charles都是抓包工具,可以抓到pc端的请求,手机上设置代理后也可以抓到手机上的请求,也可以修改请求数据和返回的数据. 在接口已经使用的时候,比如说已经用到了app上,app端测试 ...

  8. Linux环境抓包命令

    有时候有些接口调用问题不好定位或者日志不够详细,那么我们往往会选择通过抓包来看详细的通讯过程.抓包有相关软件,这里说如何直接在环境里抓.假如现在我们在 Linux 下部署了 Tomcat 服务器,端口 ...

  9. 超全超详细的HTTP状态码大全(推荐抓包工具HTTP Analyzer V6.5.3)

    超全超详细的HTTP状态码大全 本部分余下的内容会详细地介绍 HTTP 1.1中的状态码.这些状态码被分为五大类: 100-199 用于指定客户端应相应的某些动作. 200-299 用于表示请求成功. ...

随机推荐

  1. 编写高质量代码改善C#程序的157个建议——建议44:理解委托中的协变

    建议44:理解委托中的协变 委托中的泛型变量天然是部分支持协变的.为什么是“部分支持协变”?看下面示例: class Program { public delegate T GetEmployeeHa ...

  2. C#多线程编程实战1.6线程优先级

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  3. 搭建linux虚拟机

    一.VMware 9 安装CentOS 7 -> 创建新虚拟机, 选择稍后安装操作系统    -> 选择Linux系统Centos 64位    -> 填写虚拟机名称, 选择虚拟机安 ...

  4. AppIcon应用图标 and Launchimage启动图标的制作

    1.制作软件 需要在AppStore里搜索:Appicons and Launchimages Lite 2.操作步骤 看图示意(三步) 1)选择资源源文件 2)选择需要应用的平台 3)选择生成的目标 ...

  5. C语言编程基础

    主流C语言编译器介绍 关于GNU规范的语法扩展 用C语言构建一个可执行程序的流程 宏定义(无参宏定义和带参宏定义),C语言宏定义详解 条件编译,C语言条件编译详解 原码.反码.补码及位操作符,C语言位 ...

  6. B. Spreadsheets(进制转换,数学)

    B. Spreadsheets time limit per test 10 seconds memory limit per test 64 megabytes input standard inp ...

  7. kali linux之sqlmap

    一款开源的命令行自动SQL注入工具,它能够对多种主流数据库进行扫描支持,基于Python环境. 检测动态页面中get/post参数,cookie,http头 数据榨取/文件系统访问 操作系统命令执行 ...

  8. python3入门之字典

    获得更多资料欢迎进入我的网站或者 csdn或者博客园 本节主要介绍字典,字典也成映射,时python中唯一内建的映射类型.更多详细请点击readmore.下面附有之前的文章: python入门之字符串 ...

  9. P3480 [POI2009]KAM-Pebbles 阶梯NIM

    $ \color{#0066ff}{ 题目描述 }$ 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数.两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时 ...

  10. SDUT OJ 数据结构实验之链表三:链表的逆置

    数据结构实验之链表三:链表的逆置 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descri ...