tcpdump抓包分析TCP三次握手過程
內容如下:
21:07:17.790296 IP 192.168.1.104.2511 > 192.168.1.90.6000: S 3359422806:3359422806(0) win 64240 <mss1460,nop,nop,sackOK>
21:07:17.790317 IP 192.168.1.90.6000 >192.168.1.104.2511: S 3675079922:3675079922(0) ack 3359422807 win5840 <mss 1460,nop,nop,sackOK>
21:07:17.790675 IP 192.168.1.104.2511 > 192.168.1.90.6000: . ack 1 win 64240
我們來對第一個包進行分析:
21:07:17(時間)
790296(ID號)
IP (協議)
192.168.1.104.2511 > 192.168.1.90.6000: (源IP,埠,目的IP,埠)中間>表示方向
緊急指標— URG
確認序號有效—ACK
接收方應該儘快將這個報文段交給應用層—PSH
重建連線—RST
同步序號用來發起一個連線—SYN
發端完成傳送任務—IN
)
3359422806:3359422806(0) (IP包序號,相對序號為0)
win 64240 (資料視窗大小,告訴對方本機接收視窗大小,windows下預設為64240,可通過setsockopt動態修改,同樣可以通過修改登錄檔項(HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters的TCPWindowSize)來更改預設值)
<mss1460,nop,nop,sackOK> 對應TCP包頭中的選項欄位
MSS: Maxitum Segment Size 最大分段大小,MSS表示TCP傳往另一端的最大塊資料的長度。當一個連線建立時,連線的雙方都要通告各自的MSS。如果一方不接收來自另一方的MSS值,則MSS就定為預設的536位元組。
以上三個包正好是TCP連線的三次握手過程:
(1) A主機發送序號為3359422806的SYN包到B,同時帶有自身的WIN和MSS大小。
(2) B主機收到後,傳送SYN+ACK的返回包到A,也帶自身的WIN和MSS大小,3675079922,同時為為上一個包的應答包3359422807。
(3) A主機返回ACK,包序號為1(相對序號,如果需要看絕對序號,可以在tcpdump命令中加-S)
然後我們再來分析一下包的具體內容:
我們在tcpdump命令中加-x選項,後可得到如下內容:
22:07:13.436638 IP 192.168.1.104.2799 > 192.168.1.90.6000: S 3480877812:3480877812(0) win 64240 <mss 1460,nop,nop,sackOK>
0x0000: 4500 0030 b195 4000 8006 c51f c0a8 0168
0x0010: c0a8 015a 0aef 1770 cf79 faf4 0000 0000
0x0020: 7002 faf0 174e 0000 0204 05b4 0101 0402
22:07:13.436675 IP 192.168.1.90.6000 > 192.168.1.104.2799: S 4226616929:4226616929(0) ack 3480877813 win 5840 <mss 1460,nop,nop,sackOK>
0x0000: 4500 0030 0000 4000 4006 b6b5 c0a8 015a
0x0010: c0a8 0168 1770 0aef fbed 0e61 cf79 faf5
0x0020: 7012 16d0 f10e 0000 0204 05b4 0101 0402
22:07:13.437019 IP 192.168.1.104.2799 > 192.168.1.90.6000: . ack 1 win 64240
0x0000: 4500 0028 b196 4000 8006 c526 c0a8 0168
0x0010: c0a8 015a 0aef 1770 cf79 faf5 fbed 0e62
0x0020: 5010 faf0 39b2 0000
還是一樣,我們對第一個包進行分析,第一個包為SYN包,應該為一個空包,即只包括IP頭和TCP頭。
IP包頭
4 - IP版本號 IPV4
5 - IP包頭長度 5個32位元組
00 - TOS (000 0000 0)前三個BIT優先權,現已忽略;4 bit的TOS分別代表:最小時延、最大吞吐量、最高可靠性和最小費用, 均為0表示一般服務;最後1BIT未用。
0030 -總長度,48個位元組
b195 -包唯一標識
4000 -標誌欄位,和片偏移,用於分片
80 - TTL(128)
06 - 協議 TCP
c51f - MAC
c0a8 0168 - SRC IP,可以inet_ntoa轉換成點號分隔的IP。
c0a8 015a - DST IP
TCP包頭
0aef -源埠,十進位制為2799
1770 -目的埠,十進位制為6000
cf79 faf4 包序號,十進位制為217554863
0000 0000 確認序號,0,未設定ACK,確認序號無效
7002 -TCP包頭長度,標誌位。(0111 000000 000010)前4bitTCP長度7個32BIT,中間6bit保留,後6bit為標誌位(URG, ACK,PSH, RST, SYN, FIN),可以看出設定了倒數第二位,SYN位。
faf0 - 視窗大小,十進位制為64240
174e - 校驗和,覆蓋了整個的 T C P報文段: T C P首部和T C P資料
0000 - 緊急指標, 只有當URG標誌置1時緊急指標才有效
0204 05b4 0101 0402 - 選項欄位,8個位元組
相關推薦
tcpdump抓包分析TCP三次握手過程
tcpdump port 6000 -c 3 -n內容如下:21:07:17.790296 IP 192.168.1.104.2511 > 192.168.1.90.6000: S 3359422806:3359422806(0) win 64240 <mss1460,nop,nop,sackO
用wireshark抓包分析TCP三次握手、四次揮手以及TCP實現可靠傳輸的機制(轉)
關於TCP三次握手和四次揮手大家都在《計算機網路》課程裡學過,還記得當時高超老師耐心地講解。大學裡我遇到的最好的老師大概就是這位了,雖然他只給我講過《java程式設計》和《計算機網路》,但每次課幾乎都動手敲程式碼或者當場做實驗。好了不扯了,下面進入正題。 關
wireshark 抓包 例項分析TCP三次握手過程
三次握手過程為 這圖我都看過很多遍了, 這次我們用wireshark實際分析下三次握手的過程。 開啟wireshark, 開啟瀏覽器輸入 http://www.cr173.com 在wireshark中輸入http過濾, 然後選中GET /tankxiao HTTP/1.1的那條記錄,右鍵然後點選"Fo
wireshark抓包圖解 TCP三次握手/四次揮手詳解
原地址:http://www.seanyxie.com/wireshark%E6%8A%93%E5%8C%85%E5%9B%BE%E8%A7%A3-tcp%E4%B8%89%E6%AC%A1%E6%8F%A1%E6%89%8B%E5%9B%9B%E6%AC%A1%E6%8
使用tcpdump分析TCP三次握手
技術上必須對APP裝置進行監控,必須對TCP協議、長連線等技術進行研究。網上找到不少資料來驗證握手和揮手的例子,總結如下: TCP/IP的資料封裝圖 為測試方便,使用python寫網路連線。 client端連線 from socket import * import t
wireshark工具分析tcp三次握手以及http2配置
一、wireshark工具分析tcp三次握手 TCP三次握手(預互動過程,都是tcp包) 1.客戶端傳送TCP SYN:我的埠是60280,我需要訪問你的埠443。SEQ Number(初始化序列號isn)=0 2.伺服器傳送TCP SYN/ACK 允許你訪問我的埠,我也需要訪問你的
利用Wireshark分析TCP三次握手
首先在過濾器中輸入 http過濾 找到 GET /* /HTTP/1.1 我們可以看到在出現了三條TCP記錄之後才出現了HTTP這也更加相信HTTP是基於TCP協議的。 第一次TCP握手 客戶端傳送一個TCP,標誌位為SYN,序列號為0, 代表
TCP三次握手過程分析
TCP 三次握手過程分析 傳輸控制協議 (TCP) 旨在用作分組交換計算機通訊網路中,以及這些網路的互連繫統中的主機之間的高度可靠的主機到主機協議。 建立 TCP 連線 最簡單的三次握手如下所示: TCP A
TCP三次握手過程
。:“ 概念:Tcp:傳輸控制協議TCP是主機對主機層的傳輸控制協議,提供可靠的連接服務,采用三次握手確認建立一個連接位碼即tcp標誌位,有6種標示:SYN(synchronous建立聯機) ACK(acknowledgement 確認) PSH(push傳送) FIN(finish結束) RST(reset
【三次握手四次斷開】TCP三次握手過程和四次斷開
TCP的三次握手和四次斷開 TCP三次握手過程 1 主機A通過向主機B 傳送一個含有同步序列號的標誌位的資料段給主機B ,向主機B 請求建立連線,通過這個資料段, 主機A告訴主機B 兩件事:我想要和你通訊;你可以用哪個序列號作為起始資料段來回應我. 2 主機B 收到主機A
【TCP三次握手過程】Java Service Wrapper簡介與使用 --- 學習中
ava Service Wrapper簡介與使用 在實際開發過程中很多模組需要獨立執行,他們並不會以web形式釋出,傳統的做法是將其壓縮為jar包獨立執行,這種形式簡單易行也比較利於維護,但是一旦伺服器重啟或出現異常時,程式往往無法自行修復或重啟。解決伺服器重啟的傳統做
iOS TCP三次握手過程 有意思的解釋
TCP(Transmission Control Protocol,傳輸控制協議)是面向連線的協議,也就是說,在收發資料前,必須和對方建立可靠的連線。一個TCP連線必須要經過三次“對話”才能建立起來,其中的過程非常複雜,只簡單的描述下這三次對話的簡單過程:主機A向主機B發出
TCP三次握手與Tcpdump抓包分析過程
code .com and light img 內網 80端口 con port 一、TCP連接建立(三次握手) 過程 客戶端A,服務器B,初始序號seq,確認號ack 初始狀態:B處於監聽狀態,A處於打開狀態 A -> B : seq = x (A向
基於wireshark抓包分析TCP的三次握手
img src 建立 tab 安全 連接狀態 協議 處理 基於 在TCP/IP協議通訊過程中,采用三次握手建立連接,從而保證連接的安全可靠。 通常三次握手步驟如下: 1. 第1次握手:建立連接時,客戶端發送 SYN 包到服務器端,攜帶一個序列碼給服務器端用於確認,並進入
抓包分析TCP的三次握手和四次握手
問題描述: 在上一篇《如何對Android裝置進行抓包》中提到了,伺服器的開發人員需要我bug重現然後提供抓包給他們分析,所以抓好包自己也試著分析了一下。發現裡面全是一些TCP協議和HTTP協議。所以要想進行抓包分析,必須先了解TCP的原理。這裡介紹了TCP的
TCP三次握手wireshark抓包分析
本文內容有以下三個部分: wireshark過濾規則 osi模型簡述 tcp三次握手 一、wireshark過濾規則 wireshark只是一個抓包工具,用其他抓包工具同樣能夠分析tcp三次握手協議。以下這張圖片完整地展現了wireshark的面板。
Wireshark抓包分析TCP的三次握手
今天學習了Wireshark工具,對於抓包有了極大的興趣;特意通過抓包來加深一下TCP三次握手的過程,同時做以記錄。 TCP報文段結構 過濾規則介紹 網路中包含著許多的資料報文,但是許多的都不是我們需要的。網上給的大多數規則不夠具體,
wireshark抓包分析tcp的三次握手詳細過程
下載安裝wireshark 抓包分析詳細過程 在wireshark中輸入http過濾, 然後選中一條http記錄,如下圖: 右鍵點選選中 追蹤流 > tcp流,如下: 會看到下圖所示: 可以發現,wireshark截獲到了三次握手的三
【極客思考】計算機網路:Wireshark抓包分析TCP中的三次握手與四次揮手
【摘要】本文重點分析計算機網路中TCP協議中的握手和揮手的過程。 【前提說明】 前段時間突然看到了一篇關於TCP/IP模型的文章,心想這段時間在家裡也用wireshark抓了點包,那麼想著想著就覺得需要複習一下網路知識,於是就有這篇博文的誕生。當然網上關於TCP相關的知識點也是芸芸,閒著無事也可以多googl
Wireshark抓包示範:TCP三次握手建立連線和四次握手斷開連線
以下內容來自網路資源整合,僅供自己記錄,日後檢視方便。 首先介紹Wireshark抓包工具,它長這樣: 下面我們要設定過濾規則: 按如下設定,主要設定: 1、需要監控的網絡卡; 2、過濾規則(圖示是“HTTP TCP port(80)”,即只監控TCP連線):