最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

技術(shù)分享 | 抓包分析 TCP 協(xié)議

2022-09-23 17:21 作者:愛測軟件測試  | 我要投稿

TCP 協(xié)議是在傳輸層中,一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。

環(huán)境準(zhǔn)備

對(duì)接口測試工具進(jìn)行分類,可以如下幾類:

  • 網(wǎng)絡(luò)嗅探工具:tcpdump,wireshark

  • 代理工具:fiddler,charles,anyproxyburpsuite,mitmproxy

  • 分析工具:curl,postman,chrome Devtool

抓包分析TCP協(xié)議

tcpdump

tcpdump 是一款將網(wǎng)絡(luò)中傳送的數(shù)據(jù)包的“頭”完全截獲下來提供分析的工具。它支持針對(duì)網(wǎng)絡(luò)層、協(xié)議、主機(jī)、網(wǎng)絡(luò)或端口的過濾,并提供 and、or、not 等邏輯語句去掉無用的信息。

讓 tcpdump 時(shí)刻監(jiān)聽 443 端口,如果有異樣就輸入到 log 文件中

sudo tcpdump port 443 -v -w /tmp/tcp.log

利用這條命令,會(huì)把得到的報(bào)告放到目錄 /tmp/tcp.log 中。

常用參數(shù)含義port 443監(jiān)聽 443 端口-v輸出更加詳細(xì)的信息-w把數(shù)據(jù)寫到 log 中

wireshark

wireshark 也是一款網(wǎng)絡(luò)嗅探工具,它除了擁有 tcpdump 功能,還有更多擴(kuò)展功能,比如分析工具,但是在接口測試中,抓包過程往往都是在服務(wù)器進(jìn)行,服務(wù)器一般不提供 UI 界面,所以 wireshark 無法在服務(wù)器工作,只能利用 tcpdump 抓包生成 log,然后將 log 導(dǎo)入 wireshark 使用,在有 UI 界面的客戶端上進(jìn)行分析。

抓包分析 TCP 協(xié)議

抓取一個(gè) http 的 get 請求:

  1. 在百度上搜 mp3?baidu.com/s?

  2. 用 tcpdump 截獲這個(gè) get 請求,并生成 log

  3. 用 wireshark 打開 tcpdump 生成的 log

使用 wireshark 查看 log:

log 的前幾段信息是三次握手。因?yàn)樾诺朗遣豢煽康模诎l(fā)送數(shù)據(jù)前,就必須確保信道穩(wěn)定,而三次握手就像是下面這些操作:

  • 第一次握手:建立連接時(shí),客戶端發(fā)送 syn 包(syn=j)到服務(wù)器,并進(jìn)入 SYN_SENT 狀態(tài),等待服務(wù)器確認(rèn)。

  • 第二次握手:服務(wù)器收到 syn 包,必須確認(rèn)客戶的 SYN(ack=j+1),同時(shí)自己也發(fā)送一個(gè) SYN 包(seq=k),即 SYN+ACK 包,此時(shí)服務(wù)器進(jìn)入 SYN_RECV 狀態(tài);

  • 第三次握手:客戶端收到服務(wù)器的 SYN+ACK 包,向服務(wù)器發(fā)送確認(rèn)包 ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入 ESTABLISHED(TCP 連接成功)狀態(tài),完成三次握手。

經(jīng)過三次握手,就可以進(jìn)一步交流,就像下面這樣:

結(jié)束交流時(shí),也需要進(jìn)行四次揮手:

  • 第一次揮手:客戶端向服務(wù)器端發(fā)送一個(gè) FIN,請求關(guān)閉數(shù)據(jù)傳輸。

  • 第二次揮手:服務(wù)器接收到客戶端的 FIN,向客戶端發(fā)送一個(gè) ACK,其中 ack 的值等于 FIN+SEQ。

  • 第三次揮手:服務(wù)器向客戶端發(fā)送一個(gè) FIN,告訴客戶端應(yīng)用程序關(guān)閉。

  • 第四次揮手:客戶端收到服務(wù)器端的 FIN,回復(fù)一個(gè) ACK 給服務(wù)器端。其中 ack 的值等于 FIN+SEQ。

注意:?一個(gè)請求可能分為多個(gè)包,一個(gè)數(shù)據(jù)也是這樣,于是在 wireshark 會(huì)看到很多包。

霍格沃茲測試開發(fā)教程資源包下載路線

技術(shù)分享 | 抓包分析 TCP 協(xié)議的評(píng)論 (共 條)

分享到微博請遵守國家法律
平山县| 宁武县| 黄骅市| 延安市| 仁布县| 阿坝县| 阳山县| 西城区| 紫云| 东阳市| 阳江市| 扬州市| 长治县| 金塔县| 余姚市| 崇左市| 天津市| 香港 | 琼海市| 临安市| 湘潭市| 贵阳市| 南丰县| 永济市| 托里县| 阿荣旗| 烟台市| 保康县| 贵德县| 长乐市| 大埔县| 东阳市| 益阳市| 兰考县| 尉氏县| 通化县| 山东| 云霄县| 灵川县| 巴南区| 兴和县|