linux 查看igmp类型,Linux IGMP 学习笔记 之一 IGMP协议格式

linux 查看igmp类型,Linux IGMP 学习笔记 之一 IGMP协议格式一、IGMP定义及分类IGMP:INTERNET组管理协议,与广播最大的不同是,IGMP允许每一个网络设备决定是否参与到一个特定的多播群组中。IGMP的ip地址,组播ip地址的范围为224.0.0.0-239.255.255.255。其中224.0.0.1代表子网上的所有计算机,224.0.0.2代表子网上一、IGMP定义及分类IGMP:INTERNET组管理协议,与广播最大的不同是,IGMP…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、IGMP定义及分类 IGMP:INTERNET组管理协议,与广播最大的不同是,IGMP允许每一个网络设备决定是否参与到一个特定的多播群组中。 IGMP的ip地址,组播ip地址的范围为224.0.0.0-239.255.255.255。其中224.0.0.1代表子网上的所有计算机,224.0.0.2代表子网上

一、IGMP定义及分类

IGMP:INTERNET组管理协议,与广播最大的不同是,IGMP允许每一个网络设备决定是否参与到一个特定的多播群组中。

IGMP的ip地址,组播ip地址的范围为224.0.0.0-239.255.255.255。其中224.0.0.1代表子网上的所有计算机,224.0.0.2代表子网上的所有路由器。另外,多播ip地址只可作为目的地址,而且不能生成关于多播地址的差错报文。在上几节分析icmp协议时,代码在接收icmp echo request包后,只有允许对多播地址的请求包的回复时才会对多播地址进行回复,linux中默认是不回复多播echo请求的,只有用户强制配置回复后,才会对多播echo请求进行回复。

IGMP的mac地址为01-00-5e-xx-xx-xx,其中后23bits是ip地址的低23bits。从这也说明了只要知道一个多播ip地址,即可换算出其mac地址,不需要通过arp请求获取mac地址。

在具体实现功能时,又分为IGMP SNOOPING与IGMP PROXY两种。

对于IGMP SNOOPING这是在二层实现组播数据限制的一个功能。对于一个路由器或者2层switch,当lan层的一个端口发送一个IGMP report报文加入一个组播组后,如果没有开启IGMP SNOOPING,则数据会flood到所有lan側端口,这样会增加网络负载。如果开启了IGMP SNOOPING,路由器或者2层switch就会分析IGMP报文,为端口和IGMP组播组地址建立映射关系,这样下行的组播流数据就只会转发到加入组播组的端口,而不会flood到所有桥端口。

对于IGMP PROXY,主要是拦截lan側pc发送的igmp报文,其在wan側作为客户端相应上行路由的查询操作,而在lan側则作为服务端定期发送查询报文。

当lan側加入的组播组在IGMP PROXY设备上没有相应的组播路由时,才会给上层发送组播加入报文,当lan側加入的组播组在IGMP PROXY设备上已经存在时,则无需再将加入报文转发出去。这样不仅能够达到有效抑制二层组播泛滥的问题,且能更有效的获取和控制用户信息,降低网络负载。

二、IGMP的格式

IGMP V1

a)成员关系查询

Version

Type

Un used

CheckSum

Multicast ip address

Version:1

Type:0x11

Multicast ipaddress:设置为0,因为其只支持通用查询

b)成员关系报告

Version

Type

Un used

CheckSum

Multicast ip address

Version:1

Type:0x12

Multicast ip address:要加入的组播组地址

在IGMP V1中,没有专门定义离开组播组的报文,所以组播组路由器是基于超时的机制来发现没有成员的组播组的。

IGMPV2

a)成员关系查询

TYPE(0x11)

Max Resp Time

CheckSum

Multicast ip address

MaxResp Time:最大回复时间,对于成员关系查询报文,需要设置该时间,组播组成员收到成员关系查询后,会根据该值来确定回复时间。

有两种成员关系查询报文:通用成员关系查询与特定组成员关系查询。

对于通用成员关系查询,需要将Multicastip address设置为0;对于特定组成员关系查询,需要将Multicast ip address值设置为要查询的组播组地址。

其中ip头部中的目的地址为224.0.0.1或者要查询的组播组地址

b)成员关系报告

TYPE(0x16)

Max Resp Time

CheckSum

Multicast ip address

MaxResp Time:最大回复时间,此处设置为0。

需要将Multicastip address值设置为加入的组播组地址。

c)离开组消息

TYPE(0x17)

Max Resp Time

CheckSum

Multicast ip address

MaxResp Time:最大回复时间,此处设置为0。

需要将Multicastip address值设置为离开的组播组地址。其中ip头中的目的地址设置为224.0.0.2或者要离开的组播组地址

查询器机制:共享网段上组播路由器的选举机制:同一网段上有多个路由器时,具有最新ip地址的组播路由器充当查询器。

IGMP V3

其在继承了v1、v2的基础上,增加了以下功能:

1)  支持源过滤

2)  查询报文中的最大查询响应时间增加

3)  增加了对特定源组的查询

a)      成员关系查询

TYPE(0x11)

RESP CODE

CheckSum

Multicast ip address

RES

S

QRV

QQIC

源地址数

源地址1

源地址2

源地址3

RESP CODE:最大响应时间

Multicast ip address:群组地址

RES:保留

S:禁止路由器处理位

QRV:发送方发送该报文的次数(QRV-1次)

QQIC:查询报文发送间隔时间

源地址数:记录源地址的数量,用于增加的特定源组查询

b)成员关系报告

TYPE(0x22)

保留

CheckSum

保留

保留

群组记录数

群组1

群组2

群组3

群组的格式如下:

记录类型

0

源地址数

多播地址

源地址1

源地址2

源地址3

。。。

源地址3

记录类型:

1MODE_IS_INCLUDE

2        MODE_IS_EXCLUDE

3        CHANGE_TO_INCLUDE_MODE

4        CHANGE_TO_EXCLUDE_MODE

5        ALLOW_NEW_SOURCE

6        BLOCK_OLD_SOURCE

其ip头部中的目的地址为224.0.0.22

至此完成IGMP协议格式的分析,明天开始分析LINUX IGMP SNOOPING实现

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193955.html原文链接:https://javaforall.net

(0)
上一篇 2025年11月15日 下午12:22
下一篇 2025年11月15日 下午1:01


相关推荐

  • uri与url的区别简单理解(uri和url有什么区别)

    一、URI<1>什么是URIURI,通一资源标志符(UniformResourceIdentifier,URI),表示的是web上每一种可用的资源,如HTML文档、图像、视频片段、程序等都由一个URI进行定位的。<2>URI的结构组成URI通常由三部分组成:①访问资源的命名机制;②存放资源的主机名;③资源自身的名称。<3>…

    2022年4月14日
    63
  • 最新版Manus 实操手册

    最新版Manus 实操手册

    2026年3月15日
    1
  • NAT模式和桥接模式实现局域网其他物理机器与Vmware虚拟机互相访问

    NAT模式和桥接模式实现局域网其他物理机器与Vmware虚拟机互相访问 一般装完Vmware虚拟机都需要与局域网中其他机器互联互通,在安装虚拟机的时候就要先考虑好用哪种模式进行连接。Vmware支持3种网络连接模式,我们先简单介绍一下3种模式然后再说具体的配置。一、3种连接模式1、桥接模式: 所谓桥接就是把两个本来分开的网段连接起来,连接之后成为了一个更大的网络。vmware提供了一个虚拟的桥接器,他就像一座桥一样把虚拟机的网络环境和物理机的网络环境连在了一起…

    2022年6月29日
    48
  • ArcGIS必会的几个工具的应用 –提取、分割、融合、裁剪(矢)、合并、追加、镶嵌、裁剪(栅)、重采样

    ArcGIS必会的几个工具的应用 –提取、分割、融合、裁剪(矢)、合并、追加、镶嵌、裁剪(栅)、重采样ArcGIS必会的几个工具的应用–提取、分割、融合、裁剪(矢)、合并、追加、镶嵌、裁剪(栅)、重采样GIS思维今天我们来聊聊ArcGIS中常用你又必须掌握的几个工具,如筛选、分割、融合、裁剪(矢量)、合并、追加、镶嵌、裁剪…

    2022年6月25日
    82
  • CPU测试_性能测试cpu温度多少范围正常

    CPU测试_性能测试cpu温度多少范围正常目录一系统性能测试指标1.1响应时间1.2并发1.3点击量/点击率1.4吞吐量/吞吐率1.5TPS/QPS1.6PV/UV二Linux服务器性能指标2.1CPU使用率2.2内存占用率2.3系统平均负载2.4磁盘IO2.5linux常用性能命令2.5.1CPU2.5.2内存2.5.3负载2.5.4磁盘2.5.5整体性能测试指标是衡量系统性能的评价标准,常用的系统性能测试指标包括:响应时间…

    2025年8月20日
    17
  • 修改移动光猫,提升上网速度

    修改移动光猫,提升上网速度家里网络变慢的问题自从换了移动的100M网络(因为免费才换的!!),发现家里的网络差了好多。一开始还好,到了后面总是出现页面卡顿,网页上不去现象。经过一番盲猜分析,发现了两个问题。一是家里的路由器太老了,用了五六年了,设备肯定是有些问题的。二是进了移动的光猫管理页后,发现是猫在做拨号的工作,而不是路由器拨号。所以解决的方法就是买个新路由器,并且使用路由器拨号。为什么要用路由器拨号呢?光猫只做光电转换,工作负荷小,毕竟是白给的光猫,性能肯定好不到拿去路由器的拨号带机量比光猫大光猫就做它的光电转

    2022年5月28日
    172

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号