Wireshark工作笔记-对TCP连接与断开以及数据传输的实战分析
首先要使用一個TCP/UDP Socket調試工具。
本次使用虛擬機NAT模式,主機IP地址為192.168.164.1,此時主機的/UDP Socket調試工具配置如下:
虛擬機采用Win7 IP地址為192.168.164.101,其TCP/UDP Soceked調試工具配置如下:
在Wireshark過濾器里面輸入過濾命令,就能對獲取的數據包進行過濾命令如下:
ip.addr==192.168.164.101&ip.addr==192.168.164.1
最終Wireshark獲取的數據包如下:
更具上一篇,也就是這篇的筆記https://blog.csdn.net/qq78442761/article/details/80345948
知道TCP連接時有3次握手。
客戶機(192.168.164.101)請求連接將發送SYN標志,此時要求建立連接,并產生一個隨機的Seq,這里為0
第二次握手,服務器(192.168.164.1)得知客戶機(192.168.164.101)要建立連接后,回包給客戶機(192.168.164.101)其封包中多了一個ACK的標志,這個ACK的值是客戶機(192.168.164.101)發來的Seq的值加1(也就是0+1=1)。并且產生一個隨機的Seq發給客戶機(192.168.164.101)本次Seq=0。
1
第三次握手,客戶機(192.168.164.101)檢測服務器(192.168.164.1)發來的數據包是否正確,(第一次握手的,也就是Seq=0的時候)如果是Seq了,也就是0,ack也是1了,就對了,客戶機再發送一條數據包,此時Seq+1,為1,Ack為1,此時連接建立。
關于數據傳輸,帶PSH的就為數據傳輸:如下圖
下面來分析,斷開連接的四次握手:
首先客戶機(192.168.164.101)發送FIN和ACK標志給服務器,其中FIN代表客戶機與服務器要分手了。此時的Seq=101,ACK=1。隨后服務器(192.168.164.1)兩次發送數據包,一個是把Seq置為1,一個是客戶機(192.168.164.101)的ACK,
,第二個包是FIN標志的,最后一次是客戶機(192.168.164.101)把以前的seq與ACK置換,并ACK+1。
就完成了。
這里可以這么形象的理解:
客戶機:我們分手把!
服務器:啥?
服務器:分手就分手,再來找我你就是豬!
客戶機:回來找你我就不是人!
總結
以上是生活随笔為你收集整理的Wireshark工作笔记-对TCP连接与断开以及数据传输的实战分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt学习笔记-Qt Graphic Vi
- 下一篇: Linux工作笔记-ssh中-X属性的使