使用tcpdump分析TCP的三次握手和四次挥手

Linux常用命令_ linux学习笔记【多测师_何sir】 linux常用命令1、su命令=====用户切换2、ifconfig命令======查看IP地址3、ping命令====查看网络是否通的4、service命令=====系统管理服务命令5、ls命令=====查看当前目录下的文件和目录6、cd命令=====进入目录7、mkdir命令=====创建空目录8、touch命令=====创建空文件9、rm命令=====删除10、cp命令=====复制11、mv命令=====重命名,移动12、cat命令=====查看文件的所有内容13、less命令=====查看文件所有 阅读详情

使用tcpdump分析TCP的三次握手和四次挥手

自我感觉网络基础太薄弱了,最近打算恶补一下,先从TCP的建立连接和断开连接开始吧。

理论知识

从课本上我们都学过TCP建立连接的三次握手和断开连接的四次挥手,网络上相关的介绍博客也很多,推荐一个博客计算机之间是如何进行通信的?;详解三次握手和四次挥手,介绍得非常透彻易懂,感谢作者。

建立TCP server和client

使用python写了两个脚本:server.py和client.py,分别使用python socket实现TCP的server端和client端,脚本非常简单,直接照搬Python 网络编程| 菜鸟教程。

server.py

import socket
import sys
import time

if __name__ == '__main__':
    port = int(sys.argv[1])

    s = socket.socket()
    host = socket.gethostname()
    print host
    s.bind((host, port))

    s.listen(5)
    while True:
        c, address = s.accept()
        print 'client address:', address
        print '\n'
        print c.recv(1024)
        c.send('reply')
        time.sleep(1)
        c.close()

client.py

import socket
import sys

if __name__ == "__main__":
    port = int(sys.argv[1])

    s = socket.socket()
    host = socket.gethostname()
    s.connect((host, port))
    s.send('query')
    print s.recv(1024)
    s.close()

抓包工具

我是在Linux测试,使用的是tcpdump,命名行

$ tcpdump -S tcp -i lo port {port}
  • tcp表示抓取TCP协议报文
  • -i lo是抓取localhost的报文,如果不用-i lo,默认无法抓取本地环回地址(127.0.0.1)的报文。lo是ifconfig命令返回的本地环回地址网卡标记。
  • port 抓取固定端口上的报文

抓包步骤

  1. 在第一个terminal中运行tcpdump -S tcp -i lo port {port}。
  2. 在第二个terminal中运行python server.py {port}
  3. 在第三个terminal中运行python client.py {port}

T

[计算机网络] 实验四 TCP协议分析 目录实验目的实验内容1.wget使用和TCP分析 实验目的 了解运输层 TCP 协议基本概念、报文结构 分析 TCP 报文头部 分析 TCP 连接建立过程、TCP 连接释放 掌握利用 tcpdump 和 wireshark 进行 tcp 协议分析技术。 实验内容 1.wget使用和TCP分析 [如果你还不懂wgetwgetwget指令请点击这里] 我们首先通过wgetwgetwget下载该网页 然后通过之前的抓包命令抓取capcapcap,然后我们通过过滤,筛选出tcptcptcp文件 并且对TCP 阅读详情

相关推荐

tcpdump 和 wireshark 抓包工具 ,介绍、安装、命令使用。 详解三次握手、四次挥手。两个结合使用,会更好分析报文

文章目录前言一、tcpdump 工具1、tcpdump 工具2、下载3、编译安装二、抓包命令选项三、wireshark工具四、下载、安装使用五、报文详解六、三次握手、四次挥手详解 前言 一般的前后端联调是用不到抓包的,可以通过postman、chrome的开发者工具进行调试,查看请求和相应。 当做数据对接,或者再做几个服务连接的时候,中间会有restful或者thirft请求,这个时候之只能通...

冯安晨 1360

1-1:网络初识之了解什么是协议以及TCP/IP协议

文章目录一:网络的出现二:认识协议 一:网络的出现 学习系统的时候我们知道,一台计算机上的两个进程想要实现通信有很多种方式,如管道,共享内存等。而两台以上的计算机之间想要通信,那就必须要借助网络。 独立模式 起初,计算机是被设计为了一个独立的设备,每个计算机相互独立,需要传输数据时可借助外部设备间接传送 网络连接 随着社会的发展,人们对于数据的传输需求变得更高。因此,设计者将一个个计算机连接在一起,形成一个计算机网络 局域网和广域网 计算机网络按其规模可以分为,局域网和广域网,局域网和广域网概念都是相对

快乐江湖的博客 1528

(四)深入浅出TCPIP之TCP三次握手和四次挥手(下)的抓包分析

目录 1. 通过netstat来分析服务器和客户端的TCP状态 2.通过tcpdump抓包分析服务器和客户端的TCP状态 2.1 语法 2.2 抓包返回格式 2.3 抓包的FLags标记 2.4 分析三次握手,数据收发,四次挥手的状态 2.4.1三次握手 2.4.2数据发送 2.4.3 四次挥手 我们在第二章和第三章讲了三次握手和四次挥手,那么这一章节我将带领读者来通过tcpdump工具来抓包分析这两个过程。 按照我第一章文章里初识TCP,理解TCP报文格式和交互流程(一)提供的客户.

yolo模型训练找我,AI游戏合作找我 1347

光模块的封装工艺有哪些?

COB封装传统的单路10Gb/s或25Gb/s速率的光模块采用SFP封装将电芯片和TO封装的光收发组件焊接到PCB板上组成光模块。但对于40G及以上速率的高速光模块,受激光器速率限制(多为25G),主要通过多通道并行实现,如40G由4×10G实现,而100G则由4×25G实现。蝶形封装:壳体通常为长方体,结构及实现功能通常比较复杂,可以内置制冷器、热沉、陶瓷基块、芯片、热敏电阻、背光监控,并且可以支持所有以上部件的键合引线。BOX封装属于蝶形封装的一种,用于多通道并行封装。

WaytoICT- Explore ICT Technology, Build Your Tech Path 3813

STM32 SAI接口TDM模式实战:8通道音频采集系统搭建全流程(附DMA配置代码)

本文详细介绍了基于STM32 SAI接口TDM模式搭建8通道音频采集系统的全流程。内容涵盖硬件连接设计、CubeMX时钟树与SAI外设的详细配置,并重点解析了TDM模式的核心代码实现与DMA双缓冲机制,提供了完整的配置代码和常见时序问题排查指南,助力开发者高效实现多通道音频传输与处理。

weixin_29192211的博客 505

SAP SM30数据维护实战:条件筛选与动态校验的实现技巧

本文详细介绍了SAP SM30数据维护的实战技巧,重点讲解如何通过条件筛选实现精准数据查取,以及利用表维护生成器事件实现动态数据检查与校验。文章提供了从基础视图创建到高级事件编程的完整流程,包括调用函数VIEW_MAINTENANCE_CALL传递筛选条件,以及在NEW_DATA和CHANGE_SAVE事件中编写业务规则校验逻辑,帮助开发者提升SM30的管控能力与数据质量。

q9w8e7r6t5的博客 522

FlinkCDC数据同步Bug——同步性能由于写入并行度限制无法提升问题的解决

使用FlinkCDC进行数据同步时,出现增量阶段写入并行度强制为1导致整体同步性能无法提升问题的解决方案

csdn_lan的博客 2081

Python通用编程规范-09 安全编程规范

1.9 安全编程规范 1.9.1 异常行为 1.9.1.1 禁止抑制或者忽略已检查异常 【说明】: 编码人员常常会通过一个空的或者无意义的catch块来抑制捕获的已检查异常。每一个catch块都应该确保程序只会在继续有效的情况下才会继续运行下去。因此,catch块必须要么从异常情况中恢复,要么重新抛出适合当前catch块上下文的另一个异常以允许最邻近的外层try-catch语句块来进行恢复工作。异常会打断应用原本预期的控制流程。例如,try块中位于异常发生点之后的任何表达式和语句都不会被执行。因此,异常必须

zhao12501的博客 2872

AD9026芯片开发实战:从Example Code到API调用的关键步骤解析

本文详细解析了AD9026芯片开发的核心流程,重点阐述了如何从官方提供的Example Code入手,逐步理解硬件平台发现、HAL层初始化、配置加载、芯片复位、固件启动、JESD链路建立等关键API调用序列。通过剖析示例工程的结构与核心文件,为开发者在自定义硬件平台上移植和调试AD9026驱动提供了清晰的实战指南。

java5的博客 790

Open3D 基于法线的双边滤波

基于法线的双边滤波是一种用于点云平滑的技术,它结合了点与其邻域点之间的几何距离和法线方向的相似性,从而在去除噪声的同时保留几何特征。这种滤波方法广泛应用于点云处理领域,尤其是在需要保留表面细节和边缘的场景中。

纵马踏花向自由 2500

传感器校准与标定:传感器的灵敏度校准_(11).常见传感器的灵敏度校准方法

线性校准:适用于传感器输出与输入之间存在线性关系的情况。通过收集数据并使用最小二乘法拟合线性方程,可以确定斜率和截距,从而实现校准。非线性校准:适用于传感器输出与输入之间存在非线性关系的情况。通过收集数据并使用非线性拟合方法(如最小二乘法),可以确定多项式或其他非线性方程的参数,从而实现校准。温度补偿校准:适用于传感器在不同温度下输出特性变化的情况。通过收集不同温度下的数据并使用温度补偿方程,可以提高传感器在不同温度下的测量精度。其他校准方法。

2401_87715305的博客 919

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

上一篇: Java UT用例实践记录
下一篇: 2021-01-18
CommanderZero
博客等级 码龄9年 6粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值