欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Wireshark TS FTP 傳輸失敗問題解決

 更新時間:2023年03月05日 11:10:26   作者:7ACE  
這篇文章主要為大家介紹了Wireshark TS FTP 傳輸失敗問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

問題背景

用戶反饋說當(dāng)與外部客戶端進行 FTP 傳輸時,可以成功登錄,但無法傳輸任何數(shù)據(jù)??傊?FTP 傳輸失敗,需要來弄清楚到底發(fā)生了什么。

案例取自 SharkFest 2010《Packet Trace Whispering》

問題信息

跟蹤文件基本信息如下:

λ capinfos FTPFinal.pcap
File name:           FTPFinal.pcap
File type:           Wireshark/tcpdump/... - pcap
File encapsulation:  Ethernet
File timestamp precision:  microseconds (6)
Packet size limit:   file hdr: 65535 bytes
Packet size limit:   inferred: 69 bytes
Number of packets:   44
File size:           3710 bytes
Data size:           3555 bytes
Capture duration:    34.493422 seconds
First packet time:   2007-03-22 04:37:11.513913
Last packet time:    2007-03-22 04:37:46.007335
Data byte rate:      103 bytes/s
Data bit rate:       824 bits/s
Average packet size: 80.80 bytes
Average packet rate: 1 packets/s
SHA256:              36512b444dacb061e0d8a661923f1323d0c778131bedaa7bbd5b2ab810e9a09f
RIPEMD160:           3e14f2dd481632867eba14503a24e92b316b5caf
SHA1:                771e45893504af381de89ba6b047b5cd3fa554fd
Strict time order:   True
Number of interfaces in file: 1
Interface #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 所捕獲,數(shù)據(jù)包數(shù)量并不多,只有 44 個,長度截斷為 69 字節(jié),文件數(shù)據(jù)大小 3555 字節(jié),捕獲時長 34.49 秒,平均速率 824 bps。

專家信息如下,可以看到 Warning 信息包括很多數(shù)據(jù)分段未被捕獲,同時也有很多的(疑似)重傳、(疑似)快速重傳以及(疑似)虛假重傳等問題,需要進一步實際分析。

問題分析

眾所周知,F(xiàn)TP 有主動和被動兩種工作模式,而在有防火墻的網(wǎng)絡(luò)環(huán)境中,經(jīng)常會因為安全策略出現(xiàn)訪問失敗問題。如果排除了 FTP 主動和被動、防火墻安全策略等常見的可能性問題之外,那么剩下的就要專項分析了,就像這個特殊的案例。

數(shù)據(jù)包初步信息如下,為一條 FTP 控制連接,在 No.15 之后出現(xiàn)了大量的告警信息。既然與 TCP Seq Num 相關(guān),那么轉(zhuǎn)到專用視圖上。

首先是 TCP 三次握手,此處有個明顯問題的是SYN 數(shù)據(jù)包的 ACK 有數(shù)值,非 0,Wireshark 也會有明顯提示 [The acknowledgment number field is nonzero while the ACK flag is not set] 。雖然有些小問題,但此處未影響 TCP 三次握手的建立。

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

主要分析如下:

  • No.15 客戶端 Request 數(shù)據(jù)包,Seq Num 為 70,Next Seq Num 為 94,同時 ACK Num 213 期望收到服務(wù)器 Seq 213 的數(shù)據(jù)包;
  • No.16 服務(wù)器 Response 數(shù)據(jù)包,Seq Num 為 213,但 Ack Num 為 97,不同于 No.15 的 94意思是服務(wù)器可能收到了客戶端發(fā)送的 Seq 70,Next Seq 94 和 Seq 94,Next Seq 97 的兩個 TCP 分段,因此 No.16 ACK Num 為 97;此處只是疑似捕獲時丟失了客戶端發(fā)送的后一個 3 字節(jié)的分段(Seq 94,Next Seq 97 ),所以提示 TCP ACKed unseen segment
  • No.17 客戶端發(fā)出的 ACK 數(shù)據(jù)包 Seq Num 為 94,此處和 No.16 的期望 97 無法對應(yīng)上,同時客戶端 No.15 ACK 期望收到 Seq 213,No.16 Seq Num 也為 213,但是客戶端并不認(rèn)可 No.16 數(shù)據(jù)包,因此 No.17 ACK Num 仍為 213;

問題貌似出現(xiàn)在服務(wù)器發(fā)送的 No.16 數(shù)據(jù)包上,需要繼續(xù)展開部分字段輔助判斷,譬如 IP ID。

可以看到客戶端 No.15、No.17、No.19 ...... IP ID 是逐步遞增的,意味著客戶端并沒有發(fā)送過 Seq 94,Next Seq 97 的 TCP 分段,因此對于服務(wù)器,上述分析 2 中的結(jié)論并不正確(可能收到了客戶端發(fā)送的 Seq 70,Next Seq 94 和 Seq 94,Next Seq 97 的兩個 TCP 分段)。

那么具體問題是什么呢?讓我們做一個假設(shè),客戶端數(shù)據(jù)包在傳輸過程中發(fā)生了變化,額外多出來了 3 個字節(jié),是否符合問題現(xiàn)象。

  • 服務(wù)器側(cè),收到了 No.15 Seq Num 70,Next Seq Num 97,ACK Num 213的數(shù)據(jù)包,所以回復(fù)了 No.16 Seq Num 213,ACK Num 97的數(shù)據(jù)包;
  • 客戶端側(cè),收到了 No.16 Seq Num 213,ACK Num 97,由于 ACK Num 的異常(不同于 94),客戶端實際忽略了該數(shù)據(jù)包,產(chǎn)生一個 No.17 ACK 數(shù)據(jù)包,ACK Num 仍然為 213;
  • 服務(wù)器側(cè),收到了 No.17 Seq Num 94,Next Seq Num 97,ACK Num 213的數(shù)據(jù)包,之后由于 No.16 發(fā)生超時重傳,重新發(fā)送了 No.18 Seq Num 213,ACK Num 97的數(shù)據(jù)包;
  • 客戶端側(cè),由于 No.15 超時,產(chǎn)生了重傳,所以重新發(fā)送了 No.19 Seq Num 70,Next Seq Num 94,ACK Num 213的數(shù)據(jù)包;
  • 服務(wù)器側(cè),收到了 No.19 Seq Num 70,Next Seq Num 97,ACK Num 213的數(shù)據(jù)包,回復(fù)了 No.20 Seq Num 243,ACK Num 97的數(shù)據(jù)包;
  • 之后由于客戶端 -> 服務(wù)器傳輸方向上,持續(xù)的 94 -> 97 多出 3 個字節(jié),問題持續(xù)。

總之,問題可能出現(xiàn)在中間傳輸路徑上的設(shè)備,可能是 NAT 或是防火墻等設(shè)備,增加了客戶端從未發(fā)送的 3 個額外字節(jié),所以服務(wù)器回復(fù)的 ACK 也增加了 3 個字節(jié),造成一系列連續(xù)問題。

問題總結(jié)

很少見的問題,但一切皆有可能。

以上就是Wireshark TS FTP 傳輸失敗問題解決的詳細(xì)內(nèi)容,更多關(guān)于Wireshark TS FTP 傳輸?shù)馁Y料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何使用VSCode插件Remote-Tunnels連接服務(wù)器

    如何使用VSCode插件Remote-Tunnels連接服務(wù)器

    本文介紹使用Remote?-?Tunnels連接服務(wù)器,該方法需要遠程服務(wù)器有流暢的網(wǎng)絡(luò)環(huán)境,它使用微軟的服務(wù)來建立隧道,需要登錄GitHub,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • 搭建一個開源項目兩種方式安裝git的詳細(xì)教程

    搭建一個開源項目兩種方式安裝git的詳細(xì)教程

    這篇文章主要介紹了搭建一個開源項目兩種方式安裝git,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • 修改hosts文件無權(quán)限的解決辦法

    修改hosts文件無權(quán)限的解決辦法

    當(dāng)我們在hosts文件中修改內(nèi)容后,點擊保存,系統(tǒng)會彈出我們沒有權(quán)限的問題,所以本文通過圖文結(jié)合的方式給大家詳細(xì)的介紹了解決辦法,對我們解決問題有一定的幫助,需要的朋友可以參考下
    2024-08-08
  • Fiddler?Everywhere?4.0.1的破解及禁止更新的方法(最新推薦)

    Fiddler?Everywhere?4.0.1的破解及禁止更新的方法(最新推薦)

    Fiddler?Everywhere是個好東西,無論抓包還是調(diào)試接口都很好用,只是現(xiàn)在收費了,為了白嫖就決定折騰一下,如果一開始通過設(shè)置文件夾權(quán)限禁止更新,也會導(dǎo)致進不了使用界面而無法使用,下面說一下具體的解決過程
    2023-11-11
  • 完美解決瀏覽器輸入http被自動跳轉(zhuǎn)至https問題

    完美解決瀏覽器輸入http被自動跳轉(zhuǎn)至https問題

    很多朋友問小編瀏覽器輸入http被自動跳轉(zhuǎn)至https問題,到底該怎么解決呢,其實解決方法很簡單,主要關(guān)閉瀏覽器的HSTS功能就可以了,關(guān)于http自動跳轉(zhuǎn)至https的解決方法跟隨小編一起看看吧
    2021-05-05
  • 網(wǎng)站程序員如何應(yīng)對web標(biāo)準(zhǔn)

    網(wǎng)站程序員如何應(yīng)對web標(biāo)準(zhǔn)

    網(wǎng)站程序員如何應(yīng)對web標(biāo)準(zhǔn)...
    2007-04-04
  • chrome編輯替換js文件的圖文教程

    chrome編輯替換js文件的圖文教程

    谷歌瀏覽器是常用來調(diào)試JS代碼的工具,下面這篇文章主要給大家介紹了關(guān)于chrome編輯替換js文件的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • 解決Unable to access ''https://gitee.com/自己的項目/'': Could not resolve host: gitee.com問題

    解決Unable to access ''https://gitee.com/自己的項目/'': Could not r

    這篇文章主要介紹了解決Unable to access 'https://gitee.com/自己的項目/': Could not resolve host: gitee.com問題,需要的朋友可以參考下
    2020-09-09
  • markdown簡介和語法介紹

    markdown簡介和語法介紹

    這篇文章主要介紹了markdown簡介和語法介紹,本文重點介紹了常用的一些markdown語法,可以做為一個簡明版的入門指南,另本文還提供了一個在線學(xué)習(xí)markdown的簡明教程,需要的朋友可以參考下
    2014-07-07
  • 各種編程語言中$符號的意義

    各種編程語言中$符號的意義

    這篇文章主要介紹了各種編程語言中$符號的意義,本文是給編程新看看的,$符號在多種編程語言中都在使用,需要的朋友可以參考下
    2014-09-09

最新評論