返回顶部
首页 > 资讯 > 精选 >Wireshark TS FTP传输失败问题如何解决
  • 434
分享到

Wireshark TS FTP传输失败问题如何解决

2023-07-05 09:07:26 434人浏览 薄情痞子
摘要

这篇文章主要介绍了Wireshark TS FTP传输失败问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Wireshark TS FTP传输失败问题如何解决文

这篇文章主要介绍了Wireshark TS FTP传输失败问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Wireshark TS FTP传输失败问题如何解决文章都会有所收获,下面我们一起来看看吧。

问题背景

用户反馈说当与外部客户端进行 FTP 传输时,可以成功登录,但无法传输任何数据。总之 FTP 传输失败,需要来弄清楚到底发生了什么。

问题信息

跟踪文件基本信息如下:

λ capinfos FTPFinal.pcapFile name:           FTPFinal.pcapFile type:           Wireshark/tcpdump/... - pcapFile encapsulation:  EthernetFile timestamp precision:  microseconds (6)Packet size limit:   file hdr: 65535 bytesPacket size limit:   inferred: 69 bytesNumber of packets:   44File size:           3710 bytesData size:           3555 bytesCapture duration:    34.493422 secondsFirst packet time:   2007-03-22 04:37:11.513913Last packet time:    2007-03-22 04:37:46.007335Data byte rate:      103 bytes/sData bit rate:       824 bits/sAverage packet size: 80.80 bytesAverage packet rate: 1 packets/sshA256:              36512b444dacb061e0d8a661923f1323D0c778131bedaa7bbd5b2ab810e9a09fRIPEMD160:           3e14f2dd481632867eba14503a24e92b316b5cafSHA1:                771e45893504af381de89ba6b047b5cd3fa554fdStrict time order:   TrueNumber of interfaces in file: 1Interface #0 info:                     Encapsulation = Ethernet (1 - ether)                     Capture length = 65535                     Time precision = microseconds (6)                     Time ticks per second = 1000000                     Number of stat entries = 0                     Number of packets = 44λ

跟踪文件在 linux 上通过 tcpdump 所捕获,数据包数量并不多,只有 44 个,长度截断为 69 字节,文件数据大小 3555 字节,捕获时长 34.49 秒,平均速率 824 bps。

专家信息如下,可以看到 Warning 信息包括很多数据分段未被捕获,同时也有很多的(疑似)重传、(疑似)快速重传以及(疑似)虚假重传等问题,需要进一步实际分析。

Wireshark TS FTP传输失败问题如何解决

问题分析

众所周知,FTP 有主动和被动两种工作模式,而在有防火墙的网络环境中,经常会因为安全策略出现访问失败问题。如果排除了 FTP 主动和被动、防火墙安全策略等常见的可能性问题之外,那么剩下的就要专项分析了,就像这个特殊的案例。

数据包初步信息如下,为一条 FTP 控制连接,在 No.15 之后出现了大量的告警信息。既然与 TCP Seq Num 相关,那么转到专用视图上。

Wireshark TS FTP传输失败问题如何解决

首先是 TCP 三次握手,此处有个明显问题的是SYN 数据包的 ACK 有数值,非 0,Wireshark 也会有明显提示 [The acknowledgment number field is nonzero while the ACK flag is not set] 。虽然有些小问题,但此处未影响 TCP 三次握手的建立。

Wireshark TS FTP传输失败问题如何解决

Wireshark TS FTP传输失败问题如何解决

No.4 - No.15 正常的控制交互,Request - Response

Wireshark TS FTP传输失败问题如何解决

Wireshark TS FTP传输失败问题如何解决

主要分析如下:

  • No.15 客户端 Request 数据包,Seq Num 为 70,Next Seq Num 为 94,同时 ACK Num 213 期望收到服务器 Seq 213 的数据包;

  • No.16 服务器 Response 数据包,Seq Num 为 213,但 Ack Num 为 97,不同于 No.15 的 94意思是服务器可能收到了客户端发送的 Seq 70,Next Seq 94 和 Seq 94,Next Seq 97 的两个 TCP 分段,因此 No.16 ACK Num 为 97;此处只是疑似捕获时丢失了客户端发送的后一个 3 字节的分段(Seq 94,Next Seq 97 ),所以提示 TCP ACKed unseen segment

  • No.17 客户端发出的 ACK 数据包 Seq Num 为 94,此处和 No.16 的期望 97 无法对应上,同时客户端 No.15 ACK 期望收到 Seq 213,No.16 Seq Num 也为 213,但是客户端并不认可 No.16 数据包,因此 No.17 ACK Num 仍为 213;

问题貌似出现在服务器发送的 No.16 数据包上,需要继续展开部分字段辅助判断,譬如 IP ID。

Wireshark TS FTP传输失败问题如何解决

可以看到客户端 No.15、No.17、No.19 ...... IP ID 是逐步递增的,意味着客户端并没有发送过 Seq 94,Next Seq 97 的 TCP 分段,因此对于服务器,上述分析 2 中的结论并不正确(可能收到了客户端发送的 Seq 70,Next Seq 94 和 Seq 94,Next Seq 97 的两个 TCP 分段)。

那么具体问题是什么呢?让我们做一个假设,客户端数据包在传输过程中发生了变化,额外多出来了 3 个字节,是否符合问题现象。

  • 服务器侧,收到了 No.15 Seq Num 70,Next Seq Num 97,ACK Num 213的数据包,所以回复了 No.16 Seq Num 213,ACK Num 97的数据包;

  • 客户端侧,收到了 No.16 Seq Num 213,ACK Num 97,由于 ACK Num 的异常(不同于 94),客户端实际忽略了该数据包,产生一个 No.17 ACK 数据包,ACK Num 仍然为 213;

  • 服务器侧,收到了 No.17 Seq Num 94,Next Seq Num 97,ACK Num 213的数据包,之后由于 No.16 发生超时重传,重新发送了 No.18 Seq Num 213,ACK Num 97的数据包;

  • 客户端侧,由于 No.15 超时,产生了重传,所以重新发送了 No.19 Seq Num 70,Next Seq Num 94,ACK Num 213的数据包;

  • 服务器侧,收到了 No.19 Seq Num 70,Next Seq Num 97,ACK Num 213的数据包,回复了 No.20 Seq Num 243,ACK Num 97的数据包;

  • 之后由于客户端 -> 服务器传输方向上,持续的 94 -> 97 多出 3 个字节,问题持续。

总之,问题可能出现在中间传输路径上的设备,可能是 NAT 或是防火墙等设备,增加了客户端从未发送的 3 个额外字节,所以服务器回复的 ACK 也增加了 3 个字节,造成一系列连续问题。

关于“Wireshark TS FTP传输失败问题如何解决”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Wireshark TS FTP传输失败问题如何解决”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: Wireshark TS FTP传输失败问题如何解决

本文链接: https://lsjlt.com/news/350777.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Wireshark TS FTP传输失败问题如何解决
    这篇文章主要介绍了Wireshark TS FTP传输失败问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Wireshark TS FTP传输失败问题如何解决文...
    99+
    2023-07-05
  • WiresharkTSFTP传输失败问题解决
    目录问题背景问题信息问题分析问题总结问题背景 用户反馈说当与外部客户端进行 FTP 传输时,可以成功登录,但无法传输任何数据。总之 FTP 传输失败,需要来弄清楚到底发生了什么。 ...
    99+
    2023-03-06
    Wireshark TS FTP 传输 Wireshark TS
  • Wireshark TS系统吞吐慢问题如何解决
    这篇文章主要讲解了“Wireshark TS系统吞吐慢问题如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Wireshark TS系统吞吐慢问题如何解决”吧!问题背...
    99+
    2023-07-05
  • filezilla传输失败如何解决
    要解决FileZilla传输失败的问题,可以尝试以下几个方法:1. 检查网络连接:确保您的网络连接正常,可以尝试重启路由器或尝试使用...
    99+
    2023-10-07
    filezilla
  • selinux导致ftp上传失败如何解决
    这篇文章主要介绍“selinux导致ftp上传失败如何解决”,在日常操作中,相信很多人在selinux导致ftp上传失败如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”selinux导致ftp上传失败如...
    99+
    2023-06-13
  • 如何解决php查询失败问题
    本篇内容介绍了“如何解决php查询失败问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php查询失败的解决办法:1、使用函数“mysql_...
    99+
    2023-06-25
  • SpringCloud启动失败问题如何解决
    本篇内容主要讲解“SpringCloud启动失败问题如何解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringCloud启动失败问题如何解决”吧!SpringCloud启动失败问题Nac...
    99+
    2023-07-05
  • Wireshark安装失败或找不到网络接口问题怎么解决
    本篇内容主要讲解“Wireshark安装失败或找不到网络接口问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Wireshark安装失败或找不到网络接口问题怎么解决”吧!Wireshar...
    99+
    2023-06-05
  • 怎么解决php上传写入失败问题
    这篇文章主要介绍了怎么解决php上传写入失败问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。解决php上传写入失败的方法:首先找到并打开“php.ini”文件;然后修改内容...
    99+
    2023-06-14
  • 如何解决owncloud php 语言失败问题
    本文操作环境:Windows7系统、PHP7.1、Dell G3。owncloud常见问题解决方案PHP 似乎没有设置好查询的系统环境变量。 用 getenv(\"PATH\") 测试只返回一个空值。解决方案:在 php...
    99+
    2014-11-08
    owncloud php
  • 如何解决php curl请求失败问题
    本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。如何解决php curl请求失败问题php curl 发送请求失败问题前提:运行在命令行模式中(没有超时设置)多次调用curl ,可能出现发送请求失败的问题, 原因可以...
    99+
    2020-05-27
    php curl
  • 如何解决php weixin 配置失败问题
    本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。如何解决php weixin 配置失败问题php 微信公众号开发校验token 提示配置失败<php // //最简单的验证方式 // echo $_GET[&q...
    99+
    2016-12-05
    php 微信
  • 如何解决springboot启动失败的问题
    这篇文章主要介绍如何解决springboot启动失败的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!springboot启动失败的问题springboot版本是1.3.0.M1,连接的mysql版本为8,用spr...
    99+
    2023-06-22
  • 如何解决php清除cookie失败问题
    本篇内容主要讲解“如何解决php清除cookie失败问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决php清除cookie失败问题”吧!php清除cookie失败是因为cookie的p...
    99+
    2023-06-25
  • Python-pip安装失败问题如何解决
    本篇内容介绍了“Python-pip安装失败问题如何解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python-pip安装失败问题一、问...
    99+
    2023-07-05
  • 如何解决Discuz验证失败的问题?
    标题:如何解决Discuz验证失败的问题?具体代码示例分享 在使用Discuz论坛系统过程中,有时候我们会遇到验证码验证失败的问题,这种情况可能会导致用户无法完成注册或登录操作,给用户...
    99+
    2024-03-11
  • 如何解决navicat连接mysql失败的问题
    这篇文章给大家分享的是有关如何解决navicat连接mysql失败的问题的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。Navicat连接mysql数据库时,不断报1405错误,下...
    99+
    2024-04-02
  • 如何解决php连接mssql失败的问题
    这篇文章将为大家详细讲解有关如何解决php连接mssql失败的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php连接mssql失败的解决办法:1、在php.ini文件中找到extension=php...
    99+
    2023-06-22
  • win10系统如何解决更新失败问题
    这篇文章将为大家详细讲解有关win10系统如何解决更新失败问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。第一:在输入框中搜索控制面板,然后找到疑难解答。 第二:在下面找到系统和安全性,点击一下。 第三...
    99+
    2023-06-28
  • Linux下如何解决Kibana启动失败问题
    这篇文章主要为大家展示了“Linux下如何解决Kibana启动失败问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下如何解决Kibana启动失败问题”这篇文章吧。在配置好kibana...
    99+
    2023-06-28
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作