9. 安全考虑
我们考虑每种类型的伪造消息的后果.
9.1. 查询消息
来自 IP 地址低于当前查询者的机器的伪造查询消息将导致查询者选举发生. 这可能导致当前查询者停止发送查询并等待新查询者开始. 由于新查询者无效, 路由器上的查询定时器可能最终到期, 导致它们丢弃其成员信息.
通过发送具有小 Max Resp Code 的伪造查询, 可以进行拒绝服务 (DoS) 攻击. 这将导致 LAN 上的所有主机同时发送报告, 可能会使网络或路由器不堪重负.
9.2. 当前状态报告消息
伪造的报告消息可能导致路由器相信网络上有组的成员, 而实际上没有. 这可能导致组播流量不必要地转发到网络, 消耗带宽.
9.3. 状态变更报告消息
伪造的状态变更报告消息可能导致路由器相信系统已加入或离开组. 伪造的 "加入" 报告 (ALLOW 或 TO_IN) 会导致不必要的流量. 伪造的 "离开" 报告 (BLOCK 或 TO_EX) 可能导致路由器发送组特定查询, 如果没有有效主机及时响应, 路由器可能会停止转发该组的流量, 从而导致合法成员的拒绝服务.
9.4. IPsec
IPsec 认证头 (Authentication Header, AH) [RFC2402] 可用于保护 IGMP 消息. 使用 AH 时, 认证应用于整个 IP 数据包, 包括 IGMP 消息. 这可以防止 IGMP 消息的伪造. 但是, 组播的密钥管理很复杂, 是一个正在进行的研究领域.