linux tcp 抓包

1.工具

yum install nc tcpdump -y
安裝nc和tcpdump工具

2.開啓服務(先不運行命令)

  • 開啓監聽端口

  1. 開啓一個服務器監聽端口,-l 代表listen監聽的意思
  2. nc -l localhost 8088
  • 開啓客戶端

  1. nc localhost 8088   (客戶端不需要監聽,不需要 -l 參數)
  • tcpdump開啓監聽

  1. tcpdump -nn -i lo port 8088  
  2. -nn:指定將每個監聽到的數據包中的域名轉換成IP、端口從應用名稱轉換成端口號後顯示

  3. -i :指定監聽的網絡接口,參數值lo:抓取回環網口的包

3.運行

1.執行抓包命令,發現沒有監聽到數據 (抓包程序沒有抓到數據阻塞中)

2.執行監聽8088端口命令,發現也阻塞了、、、、這個時候在監聽着8088端口

3.運行客戶端命令,發送數據給8088端口

運行後發現xshell這裏變了,多了個感嘆號

打開發現有數據

ACK確認協議建立。

三次握手的過程,說明了tcp的兩個特性 面向連接,具有可靠性(ack)

4.斷開鏈接

  • 四次揮手

  • 第一個客戶端發起的[F]代表結束finish
  • 服務器回覆[.]代表服務器收到ack確認
  • 服務器發起[F.]服務器告訴客戶端斷開
  • 客戶端告訴服務器[.]斷開確認ack

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章