2.4.4 IGMPv2查询器选举
- 对于一个网段上有多个组播路由器的共享网段,此网段下运行IGMP的路由器都能从主机那里收到成员关系报告消息,但是只需要一个路由器发送成员资格查询消息,所以这就需要一个路由器选举机制来确定一个路由器作为查询器。
- 只有查询器才会发送成员关系查询报文。在IGMPv1版本中,查询器的选择由组播路由协议决定;
- IGMPv2版本对此做了改进,规定同一网段上有多个组播路由器时,具有最小IP地址的组播路由器被选举出来充当查询器。
- 路由器启动,主动发出到目的地(224.0.0.1)的IGMPv2常规查询信息。
- 收到常规查询信息的路由器,会把此信息的源IP地址和接收口的IP地址作比较,拥有最低IP地址的路由器被选举为IGMP查询路由器。
- 查询器也会有失效的时候,当查询器失效时,另一路由器成为查询器。所以非查询路由器会启动一个查询计时器,周期检查IGMP查询路由器的状态,缺省情况下120秒(其实就是等两个查询周期)。该值可以通过命令 timer other-querier-present interval 修改。
2.4.5 IGMPv2组成员离开
- 离开报告报文目的地址:加入的组播组地址;
- 在IGMPv1版本中,主机悄然离开组播组,不会向任何组播路由器发出任何通知。造成组播路由器只能依靠响应超时来获知组播成员的离开。
- 而在v2版本中,当一个主机决定离开一个组播组时,它会向网络中所有组播路由器以组播方式(224.0.0.2)发送离开组的消息(目的地址为加入的组播组地址),为了明确该组播组中是否还包含其它成员主机,该组播路由器会向网络中发送特定组查询消息。在查询的最大响应时间内(默认为1秒)没有收到该组的报告,则再次发送特定组查询。2次特定组查询后仍没有收到成员报告,则认为组播成员全部离开。(注意只是该组的组播成员,但网络中可能还有其它的组播组)(发送针对组成员离开的特定组查询,最大响应时间才为1s,其它情况为10s)
- 问题1:谁是最后一个离开者
路由器上有记录last reporter,同时主机也可以知道自己是否是last reporter(是否有被抑制)。所以当last reporter发送离开组消息时,路由器就会发送特定组查询。
需要注意的是,如果不是last reporter,离开的时候也是跟V1一样,悄悄离开。
当然,V1也有last reporter,只是它仅仅是个显示而已,不具备像V2这样的特性。
- 问题2:离开组报告也应该是只需要1台主机发送
只是这个时候使用的最大响应时间是特定组查询的最大响应时间1s。
[AR1]dis igmp int g0/0/0 verbose
Interface information of VPN-Instance: public net
GigabitEthernet0/0/0(192.168.1.254):
IGMP is enabled
Current IGMP version is 2
IGMP state: up
IGMP group policy: none
IGMP limit: -
Value of query interval for IGMP (negotiated): -
Value of query interval for IGMP (configured): 60 s //普遍组查询间隔时间
Value of other querier timeout for IGMP: 0 s
//当不是查询器的时候才会设定为120s,然后收到查询器的普遍组查询时再刷新该时间
Value of maximum query response time for IGMP: 10 s //普遍组查询最大响应时间
Value of last member query time: 2 s //特定组查询次数
Value of last member query interval: 1 s //特定组查询最大响应时间
Value of startup query interval: 15 s
Value of startup query count: 2
General query timer expiry (hours:minutes:seconds): 00:00:58
Querier for IGMP: 192.168.1.254 (this router)
IGMP activity: 0 joins, 0 leaves
Robustness (negotiated): -
Robustness (configured): 2
Require-router-alert: disabled
Send-router-alert: enabled
Ip-source-policy: disabled
Query Ip-source-policy: disabled
Prompt-leave: disabled
SSM-Mapping: disabled
Startup-query-timer-expiry: off
Other-querier-present-timer-expiry: off
-
补充:IGMPv2快速离开机制
- 如果路由器上只有一个主机加入了某个主机组,则可以设置快速离开,这样当主机离开该组的时候,路由器就不会发送两次特定组查询了
acl 2000
rule permit source 239.1.1.1 0
int g0/0/0文章来源:https://www.toymoban.com/news/detail-785696.html
igmp prompt-leave group-policy 2000文章来源地址https://www.toymoban.com/news/detail-785696.html
到了这里,关于2.4 IGMPv2基本原理----查询器选举与成员离开的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!