那些Packet,那些RST的异常

简介: 在开始之前先介绍2个概念:TTL:TTL是 Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。IP ID(identification):IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。

在开始之前

先介绍2个概念:
TTL:TTL是 Time To Live的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。
IP ID(identification):IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。

本文目的

通过TTL和IP ID 判断RST异常的原因。

案例一:

image
通过上述截图观察大家思考几个问题:
1、这个截图的报文是在客户端抓的,还是服务端抓的?
2、这个截图的报文TTL是否有问题?

案例二:

image
1、这个截图的报文是在客户端抓的,还是服务端抓的?
2、这个截图的报文TTL是否有问题?

目录
相关文章
01 Packet Tracer 网络通信过程
01 Packet Tracer 网络通信过程
64 0
|
3月前
|
安全 Java Linux
如何确定 Broken Pipe 异常是由网络问题还是其他原因引起的
Broken Pipe 异常可能由网络问题或其他原因引起。要确定具体原因,可以检查网络连接状态、防火墙设置和系统日志,同时分析异常发生时的上下文信息。
416 5
|
9月前
[音视频] avcodec_send_packet 返回-22
[音视频] avcodec_send_packet 返回-22
|
缓存 编解码 Ubuntu
avcodec_send_frame和avcodec_receive_packet
avcodec_send_frame和avcodec_receive_packet
407 0
avcodec_send_frame和avcodec_receive_packet
SYN5201a-Z,V271 3BHB006714R0271 不可用异常必须重试失败的指令
SYN5201a-Z,V271 3BHB006714R0271 不可用异常必须重试失败的指令
160 0
SYN5201a-Z,V271 3BHB006714R0271 不可用异常必须重试失败的指令
|
存储 Linux API
PF_RING实现分析(1)
内核版本:Linux 2.6.30.9 PF_RING版本:4.1.0 最近看了一个PF_RING的实现,看了个大概,发上来大家讨论讨论,共同学习。 一、什么是PF_RING PF_RING是一个第三方的内核数据包捕获接口,类似于libpcap。 二、为什么需要PF_RING 一切为了效率,按照其官方网站上的测试数据,在Linux平台之上,其效率至少高于libpcap 50% - 60%,甚至是一倍。更好的是,PF_RING提供了一个修改版本的libpcap,使之建立在PF_RING接口之上。这样,原来使用libpcap的程序,就可以自然过渡了。
738 0
PF_RING实现分析(3)
刚刚接触PF_RING,学习了,O(∩_∩)O 有个问题请教一下九贱前辈:内核中的PACKET_MMAP跟PF_RING有什么不同呢? 感觉PACKET_MMAP跟transparent_mode=0时的PF_RING原理上是一样的( ⊙ o ⊙ )啊...?
172 0
|
网络协议 Linux API
PF_RING实现分析(2)
4、mmap操作 用户态的接下来调用: ring->buffer = (char *)mmap(NULL, PAGE_SIZE, PROT_READ|PROT_WRITE, MAP_SHARED, ring->fd, 0); 复制代码 进行内存映射。 同样地,内核调用相应的ring_mmap进行处理。 Ring选项结构通过ring_sk宏与sk 建立关联 struct ring_opt *pfr = ring_sk(sk); 复制代码
443 0