此文章主要介绍IGMP的版本问题
IGMP协议:因特网组管理协议。分为IGMPv1、IGMPv2和IGMPv3三个版本,均支持ASM模型,IGMPv3可直接支持SSM模型。
IGMP使一个组播报文
作用:
使最后一条路由器感知组播接收者的存在
使用场景:
通常配置在组播最后一条路由器上。
IGMP版本介绍:
IGMPv1版本—ASM模型
1、在v1 版本里面没有查询器的功能,不能周期性发送,需要借助于PIM
2、组播接收者离开组播组,采用静默离开。不发送任何报文,路由器没有感知,只有等130没有收到改组的成员报告,将会认为该组中没有接收者的存在,删除记录,将不会在发送消息
3、如果在同一组播组中有多个组播接收者时,只会有一个组播接收者向上发送。称为成员关系报告抑制机制
定时器时间在1~10S
报文类型
- 普通组查询报文
- 路由器发送 目的地址:224.0.0.1(表示所有节点) 查询自己连接哪些组播接收者。
- 周期性发送 60s,老化时间130S
- 报文中组播地址为0.0.0.0。
- 组播地址英语单词:Group Address
- 成员关系报告报文
- 组播接收者发送,用来告知路由器,接受者属于哪个组播组
- 报文中组播地址为:你接入的哪个组播地址就是那个组播地址
命令配置:
[Huawei]multicast routing-enable开启组播路由功能
】Inter g0/0/0 进入接口
G0/0/0】pim dm v1版本借助PIM来实现查询器的功能
G0/0/0】Igmp enable 开启IGMP功能
G0/0/0】Igmp version 1 设置版本
[Huawei]dis igmp group 查看组播
抓包截图
V2版本(默认)--ASM模型
报文类型:
- 普通组查询
- 成员关系报告
- 特定组查询报文
- 查看组中离开的组中是否还有其他组成员,最大响应时间1s.最多发送两次。如果没有接受成员发送报告将认为该组没有接收者成员
- 组播地址:要离开的组播组地址
- 离开报文leave:
V2查询器的选举:
谁的IP地址小,谁就是查询器
V3版本—SSM模型
1、没有成员关系抑制机制,因为源组播地址不一样,特定组查询
2、没有离开组消息
3、比v1和v2增加了“源组播地址
响应抑制机制
同一个组中,如果一台接收者已经发送回复报文,其他设备将不再会发送回复消息。这一过程成为成员报告回复抑制机制
报文类型:
- 普通组查询
- 成员关系报告
- 组播地址
- 组播源地址
- 目的地址:224.0.0.22
- 特定组查询报文
Include:接受来自特定组播的组播流量
Exclude:过滤来自特定组播的组播流量
IGMP Snooping
使用场景在交换机上。因为交换机时根据MAC地址进行转发,交换机收到的是组播MAC,但交换机是找不到组播MAC的。会进行全网泛洪,泛洪的话就会学习到不需要的MAC地址。
如果开启IGMP snooping,交换机会分析报文的功能,形成二层组播转发表项。不需要组播抑制。
二层组播转发表两种接口:
- 路由器端口:
- 成员端口:
转发表
*:任意源
G:特定