Wireshark捕获首SYN包时sequence number (raw)含义及与相对序列号区别
Wireshark 两类TCP序列号字段区别
1. 基础定义差异
sequence number (raw):TCP报文实际携带的原始序列号,是TCP协议规定的32位无符号整数,SYN包的该值由通信发起端随机生成,未经过Wireshark任何加工,是网络传输中的真实值。sequence number (relative):Wireshark为了降低分析门槛提供的简化映射值,默认开启该功能后,Wireshark会将单个TCP流的首个SYN包的原始序列号映射为0,后续报文的序列号都以该基准做差值计算,展示的数值更小、更容易识别序列异常。
2. 实际场景示例
以你捕获的首个SYN包为例:
如果该包的raw值为2156398742,Wireshark展示的relative值会固定为0;后续该端发送的ACK包raw值如果是2156398743,对应的relative值就会显示为1,无需对照大段随机数就能快速判断报文的序列偏移。
3. 配置开关
如果不需要展示相对序列号,可以进入Wireshark的 编辑 -> 首选项 -> 协议 -> TCP 路径,取消勾选「相对序列号和窗口缩放」选项,就会只展示原始序列号值。
你抓包截图中的SYN包的两个字段正好符合上述逻辑:raw字段展示随机生成的32位原始值,relative字段固定显示为0。
内容的提问来源于stack exchange,提问作者Ahriri
相关产品推荐
相关产品推荐

