网络笔记_IGMP Snooping

技术背景

二层中组播数据转发的数据
  • 组播数据在二层被泛洪,造成:
    • 网络资源浪费
    • 存在安全隐患
网络笔记_IGMP Snooping_第1张图片
 
 
 

IGMP Snooping概述

  • 解决组播报文在二层泛洪的问题

  • 运行在 数据链路层,是二层交换机上的组播约束机制,用于管理和控制组播组
  • 通过 监听IGMP报文, 建立组播MAC地址表
网络笔记_IGMP Snooping_第2张图片
 
 
 
下图中:
路由端口表示上游接口(接收组播源数据)
成员端口表示下游接口(对组播数据进行分发)
网络笔记_IGMP Snooping_第3张图片
 
 
端口角色
作用
如何生成
路由端口
接收组播数据
上游端口
  • 收到源地址不为0.0.0.0的IGMP普遍组查询报文或PIM Hello报文的接口都将被叫做 动态路由器端口
  • 手工配置的路由器端口叫做 静态路由器端口
成员接口
发送组播数据
下游端口
  • 收到IGMP Report报文的接口,叫做 动态成员端口
  • 手工配置的成员端口叫做 静态成员端口
 
 

IGMP Snooping工作原理

网络笔记_IGMP Snooping_第4张图片

  • 启用IGMP Snooping机制后,查询响应仅向路由器接口转发
  • RTA作为查询器,周期性的发送普遍组查询,该报文被广播到交换机所有端口,包括与交换机内部与CPU直连的端口0,交换机CPU收到查询报文后,判断1口为路由口。
  • 主机B希望加入组播组224.1.2.3,因此以组播方式发送一个IGMP的报告报文,报告中具有目的MAC地址为0x0100.5e01.0203。最初交换机中并没有该MAC地址对应的表项,所以就将该信息广播到交换机的所有端口,包括与交换机内部CPU直连的端口0,;当CPU收到主机B发送的IGMP报告时,CPU利用IGMP报告中的信息建立了一个转发表项,该表项中包括主机B的端口号,连接路由器的接口号和连接交换机内部CPU的接口号
  • 由此得,交换机形成的转发表项:MAC地址为0100.5e01.0203,对应的组播端口与为0、1、3,且不向其他端口发送
  • 后续,如主机C申请加入组播组224.1.2.3的话,将发送一个IGMP报文,CPU收到该报文,将在转发表项MAC地址为0100.5e01.0203增加一个端口4
  • 如主机C申请退出该组,将发送一个退出组的报文,RTA会发送两个确认报文,此时只有3端口进行回应,那么交换机转发表项的MAC地址为0100.5e01.003的端口会将4端口删除,仅留下0/1/3端口。
 
 
 

配置

命令

备注

igmp-snooping enable

开启IGMP-Snooping,系统模式配置

vlan ×

    igmp-snooping enable

开启VLAN下的IGMP-Snooping

display igmp-snooping port-info

验证IGMP-Snooping

display igmp-snooping router-port vlan ×

查看端口下IGMP-snooping状态

 
 
 
 
 
 

你可能感兴趣的:(网络笔记)