1.组播IGMP的各种情况
2.PIM Dense-Mode
3.PIM Sparse-Mode
4.PIM双向树和SSM
5.动态RP之auto-rp
6.动态RP之BSR
7.Anycast RP
8.域间组播
9.IPv6组播

enable
conf t
no ip do lo
enable pass cisco
line con 0
logg sync
exec-t 0 0
exit
line vty 0 4
pass cisco
logg sync
exit
host

1.组播IGMP的各种情况
------------------------------------------------------

实验目的
1.深入了解IGMPv1,IGMPv2,IGMPv3的区别
2.掌握配置IGMPv1,IGMPv2,IGMPv3的方法
3.理解不同IGMP版本查询路由器(querying router)的选举方法
4.理解DR的作用和选取方法
5.理解最后一个报告者(last reporter)的概念和不同IGMP版本的主机离开组的方式
6.理解IGMPv2最后一跳路由器的两种查询方法
7.理解fast leave
8.理解配置限制特定组的加入
9.理解IGMPv3的report方式如何兼容IGMPv2

实验假设:R1和R2模拟两台PC,加入组播组。R3和R4模拟最后一跳路由器

aaarticlea/png;base64,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" alt="" />

基本配置:
完成IP地址和IGP的配置,IGP为全网运行OSPF,均运行在area 0.

R1:
int f0/
ip add 1.1.1.1 255.255.255.0
no shut
exit
int l0
ip add 11.1.1.1 255.255.255.0
exit router ospf
router-id 11.1.1.1
network 1.1.1.0 0.0.0.255 area
network 11.1.1.0 0.0.0.255 area
exit R2:
int f0/
ip add 1.1.1.2 255.255.255.0
no shut
exit
int l0
ip add 22.1.1.1 255.255.255.0
exit router ospf
router-id 22.1.1.1
network 1.1.1.0 0.0.0.255 area
network 22.1.1.0 0.0.0.255 area
exit R3:
int f0/
ip add 1.1.1.3 255.255.255.0
no shut
exit
int l0
ip add 33.1.1.1 255.255.255.0
exit router ospf
router-id 33.1.1.1
network 1.1.1.0 0.0.0.255 area
network 33.1.1.0 0.0.0.255 area
exit R4:
int f0/
ip add 1.1.1.4 255.255.255.0
no shut
exit
int l0
ip add 44.1.1.1 255.255.255.0
exit router ospf
router-id 44.1.1.1
network 1.1.1.0 0.0.0.255 area
network 44.1.1.0 0.0.0.255 area
exit

-----------------------------------------------------
R3/R4:
ip multicast-routing
int f0/0
ip pim sparse-mode
exit

R2:
show ip igmp int f0/0

R3/R4:
show ip igmp int f0/0
show ip pim int

查询路由器的作用:在有多个最后一跳路由器的情况下,由查询路由器发起IGMP的查询(query)消息。IGMPv2和IGMPv3的查询路由器的选取原则为接口IP地址小的为查询路由器。

DR的作用:在有多个第一跳路由器的情况下,由DR负责转发组播源发出的组播流和向RP注册;在有多个最后一跳路由器的情况下,由DR负责向组播源或者RP发送PIM的join消息。
DR的选取原则:优选DR优先级高的为DR,如果优先级一样,则选取IP地址大的为DR。

----------------------------------------------------
R3:
int f0/0
ip pim dr-priority 2
exit

show ip pim int

int f0/0
ip igmp ver 1
no ip pim dr-priority 2
exit

R4:
int f0/0
ip igmp ver 1
exit

show ip igmp int f0/0

DR路由器同时也是IGMPv1的查询路由器。

-----------------------------------------------
观察IGMP在最后一跳路由器和主机之间的交互情况,如哪台主机是last reporter, reporter抑制功能,主机离开一个组是否发送leave信息。

R3/R4:
int f0/0
ip igmp ver 2
exit

R1/R2:
int f0/0
ip igmp join-group 228.1.1.1
exit

R3:
debug ip igmp
no debug all
show ip igmp groups

当前R3的last reporter是R2

R2:
int f0/0
no ip igmp join-group 228.1.1.1

当last reporter离开一个组的时候,要发送leave报文通知最后一跳路由器,然后路由器连续发送两个查询报文,查询是否还有该组的接收者存在,此时的查询报文是针对特定组的查询;对于非last reporter离开一个组,不需要发送leave报文,因为这个时候路由器记录的组播接收者不是它。普通查询是周期性的,为60s一次,特定组的查询是针对有用户发出leave报文才触发的。

-----------------------------------------
fast leave: 在最后一跳路由器的接口只有一个接收者的情况下,如果接受者离开该组,发送leave报文,路由器不需要发送查询报文,直接停止发送组播流到该接口,这样可以大大的减少leave latency。

R3:
access-list 1 permit 229.1.1.1
int f0/0
ip igmp immediate-leave group-list 1
exit

R1:
int f0/0
ip igmp join-group 229.1.1.1
no ip igmp join-group 229.1.1.1
exit

-----------------------------------------------
缺省情况下,最后一跳路由器可以接收任何主机加入任何组。可以配置最后一跳路由器限制特定组的加入。(IGMPv2)

R3:
access-list 2 permit 228.1.1.1
access-list 2 permit 229.1.1.1
int f0/0
ip igmp access-group 2
exit

R1:
int f0/0
ip igmp join-group 230.1.1.1
exit

-------------------------------------------------------
IGMPv3支持针对特定源的特定组加入功能。

R2:
int f0/0
shutdown
exit

R3:
int f0/0
ip igmp version 3
ip pim sparse-mode
exit

end
show running-config int f0/0
conf t

R1:
int f0/0
ip igmp version 3
ip igmp join-group 232.1.1.1 source 33.1.1.1
ip igmp join-group 228.1.1.1
exit

end
show running-config int f0/0
conf t

R3:
show ip igmp groups detail

针对232.1.1.1,加入指定源33.1.1.1,为include模式,也就是说只能接收33.1.1.1发出的目的地址为232.1.1.1的组播流;
针对228.1.1.1,为exclude模式,但是排除的组播源列表为空,也就是说可以接收任何组播源发出的目的地址为228.1.1.1的组播流,这样就实现了对IGMPv2的兼容。

2.PIM Dense-Mode
------------------------------------------------------------------------------------------------------

实验目的
1.掌握配置PIM DM的基本步骤
2.掌握trouble shooting PIM DM
3.理解PIM的工作过程,体会组播树的生成和维护过程
4.理解assert选举方法和在哪些链路会选举assert路由器
5.理解嫁接过程
6.理解剪枝过程
7.深入理解RPF检查
8.理解组播路由表的标识位

实验假设:R5模拟组播源,R3模拟第一跳路由器,R7模拟最后一跳路由器,R8模拟组播接收者。
完成IP地址和IGP的配置,IGP为全网运行OSPF,均运行在area 0.

aaarticlea/png;base64,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" alt="" />

配置接口以及IGP(OSPF)

R1:
int f0/
ip add 1.1.1.1 255.255.255.0
no shut
exit
int l0
ip add 11.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.1 255.255.255.0
no shut
exit router ospf
router-id 11.1.1.1
network 1.1.1.0 0.0.0.255 area
network 11.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
exit R2:
int f0/
ip add 1.1.1.2 255.255.255.0
no shut
exit
int l0
ip add 22.1.1.1 255.255.255.0
exit
int s2/
ip add 27.1.1.2 255.255.255.0
no shut
exit
int s2/
ip add 23.1.1.2 255.255.255.0
no shut
exit router ospf
router-id 22.1.1.1
network 1.1.1.0 0.0.0.255 area
network 22.1.1.0 0.0.0.255 area
network 23.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit R3:
int f0/
ip add 1.1.1.3 255.255.255.0
no shut
exit
int l0
ip add 33.1.1.1 255.255.255.0
exit
int f0/
ip add 36.1.1.3 255.255.255.0
no shut
exit
int f1/
ip add 35.1.1.3 255.255.255.0
no shut
exit
int s2/
ip add 23.1.1.3 255.255.255.0
no shut
exit router ospf
router-id 33.1.1.1
network 1.1.1.0 0.0.0.255 area
network 33.1.1.0 0.0.0.255 area
network 35.1.1.0 0.0.0.255 area
network 36.1.1.0 0.0.0.255 area
network 23.1.1.0 0.0.0.255 area
exit R4:
int f0/
ip add 1.1.1.4 255.255.255.0
no shut
exit
int l0
ip add 44.1.1.1 255.255.255.0
exit router ospf
router-id 44.1.1.1
network 1.1.1.0 0.0.0.255 area
network 44.1.1.0 0.0.0.255 area
exit R5:
int f1/
ip add 35.1.1.5 255.255.255.0
no shut
exit
int l0
ip add 55.1.1.1 255.255.255.0
exit router ospf
router-id 55.1.1.1
network 35.1.1.0 0.0.0.255 area
network 55.1.1.0 0.0.0.255 area
exit R6:
int f0/
ip add 36.1.1.6 255.255.255.0
no shut
exit
int l0
ip add 66.1.1.1 255.255.255.0
exit router ospf
router-id 66.1.1.1
network 36.1.1.0 0.0.0.255 area
network 66.1.1.0 0.0.0.255 area
exit R7:
int f0/
ip add 78.1.1.7 255.255.255.0
no shut
exit
int f1/
ip add 17.1.1.7 255.255.255.0
no shut
exit
int s2/
ip add 27.1.1.7 255.255.255.0
no shut
exit
int l0
ip add 77.1.1.1 255.255.255.0
exit router ospf
router-id 77.1.1.1
network 78.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
network 77.1.1.0 0.0.0.255 area
exit R8:
int f0/
ip add 78.1.1.8 255.255.255.0
no shut
exit
int l0
ip add 88.1.1.1 255.255.255.0
exit router ospf
router-id 88.1.1.1
network 78.1.1.0 0.0.0.255 area
network 88.1.1.0 0.0.0.255 area
exit

配置PIM Dense-Mode(除组播源及接受者外)

R1:
ip multicast-routing
int f0/
ip pim dense-mode
exit
int f1/
ip pim dense-mode
exit R2:
ip multicast-routing
int f0/
ip pim dense-mode
exit
int s2/
ip pim dense-mode
exit
int s2/
ip pim dense-mode
exit R3:
ip multicast-routing
int f0/
ip pim dense-mode
exit
int f0/
ip pim dense-mode
exit
int f1/
ip pim dense-mode
exit
int s2/
ip pim dense-mode
exit R4:
ip multicast-routing
int f0/
ip pim dense-mode
exit R6:
ip multicast-routing
int f0/
ip pim dense-mode
exit R7:
ip multicast-routing
int f0/
ip pim dense-mode
exit
int f1/
ip pim dense-mode
exit
int s2/
ip pim dense-mode
exit

-------------------------------------------------
R2:
show ip pim int
show ip pim neighbor

R8:
int f0/0
ip igmp join-group 228.1.1.1
exit

R7:
show ip mroute

R5:
ping 228.1.1.1 repeat 10000

ping产生的是组播数据流,沿着组播树到达接收者,接收者然后单播发送echo reply报文到组播源,所以看到reply报文是从78.1.1.8来的。
由于测试数据分别经过组播树和单播路由,因此如果测试不成功,并不代表组播树一定有问题,还可能是单播的路由有故障,此时可以在接收者上debug ip icmp来判断。

R6:
int l0
ip pim dense-mode
ip igmp join-group 228.1.1.1
exit

R5:
ping 228.1.1.1 repeat 10000

R3/R1/R2/R7:
show ip mroute

可以看到组播路径是R5->R3->R1->R7->R8。在R3的s2/1的出接口和R2的s2/0的出接口上都有A标识,标识是该链路的assert路由器,避免重复组播流。
assert路由器选取原则:优选去往组播源IGP metric值小的路由器,其次选IP地址大的路由器。

每个路由器转发组播包的时候,都需要做RPF(reverse path forwarding)检查,确定收到组播的接口与echo reply的接口一致,否则丢弃组播包,此处检查的依据是组播源。
RPF检查的顺序:组播静态路由-->DVMRP(现实中不用)-->MB-BGP学习到的路由-->单播协议学习到的路由

对于每个组,路由器上的组播路由表都有两个表项,分别为(*,G)和(S,G),在转发组播数据流的时候,是依据(S,G)表项来进行的,可以理解为最长匹配原则。

(S,G)表项的计时器是由于有组播流触发而生成的。

R7:
show ip rpf 35.1.1.5

观察graft和prume
---------------------------------------------------------------------------
R8:
int f0/0
no ip igmp join-group 228.1.1.1
exit

R7:
debug ip pim

R8:
int f0/0
ip igmp join-group 228.1.1.1
no ip igmp join-group 228.1.1.1
exit

R7:
ip mroute 35.1.1.5 255.255.255.255 27.1.1.2
end

show ip rpf 35.1.1.5

R8:
int f0/0
ip igmp join-group 228.1.1.1
exit

R2/R7:
show ip mroute

Trouble Shooting commands:
-------------------------------------------------------------------------

show ip pim interface
show ip pim neighbor
mrinfo {hostname | add}
show ip rpf {source-add | name}
show ip route
show ip igmp interface
show ip igmp groups
show ip mroute
show ip mroute summary
show ip mroute count
show ip mroute active
debug ip mrouting [group]
debug ip mpacket [detail][access-list][group]
debug ip pim [group]

3.PIM Sparse-Mode
----------------------------------------------------------------------------------------------------------------

实验目的:
1.掌握Sparse-Mode的配置方法
2.观察Sparse-Mode共享树的生成和维护过程
3.观察Sparse-Mode源树的生成和维护过程
4.观察Sparse-Mode共享树向源树的切换过程
5.观察Sparse-Mode标识
6.掌握测试Sparse-Mode的方法和思路

实验假设:R5模拟组播源,R3模拟第一跳路由器,R2是RP,R7模拟最后一跳路由器,R8模拟组播接收者。
完成IP地址和IGP的配置,IGP为全网运行OSPF,均运行在area 0.

aaarticlea/png;base64,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" alt="" />

配置接口以及IGP(OSPF)

R1:
int f0/
ip add 1.1.1.1 255.255.255.0
no shut
exit
int l0
ip add 11.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.1 255.255.255.0
no shut
exit router ospf
router-id 11.1.1.1
network 1.1.1.0 0.0.0.255 area
network 11.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
exit R2:
int f0/
ip add 1.1.1.2 255.255.255.0
no shut
exit
int l0
ip add 22.1.1.1 255.255.255.0
exit
int s2/
ip add 27.1.1.2 255.255.255.0
no shut
exit
int s2/
ip add 23.1.1.2 255.255.255.0
no shut
exit router ospf
router-id 22.1.1.1
network 1.1.1.0 0.0.0.255 area
network 22.1.1.0 0.0.0.255 area
network 23.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit R3:
int f0/
ip add 1.1.1.3 255.255.255.0
no shut
exit
int l0
ip add 33.1.1.1 255.255.255.0
exit
int f0/
ip add 36.1.1.3 255.255.255.0
no shut
exit
int f1/
ip add 35.1.1.3 255.255.255.0
no shut
exit
int s2/
ip add 23.1.1.3 255.255.255.0
no shut
exit router ospf
router-id 33.1.1.1
network 1.1.1.0 0.0.0.255 area
network 33.1.1.0 0.0.0.255 area
network 35.1.1.0 0.0.0.255 area
network 36.1.1.0 0.0.0.255 area
network 23.1.1.0 0.0.0.255 area
exit R4:
int f0/
ip add 1.1.1.4 255.255.255.0
no shut
exit
int l0
ip add 44.1.1.1 255.255.255.0
exit router ospf
router-id 44.1.1.1
network 1.1.1.0 0.0.0.255 area
network 44.1.1.0 0.0.0.255 area
exit R5:
int f1/
ip add 35.1.1.5 255.255.255.0
no shut
exit
int l0
ip add 55.1.1.1 255.255.255.0
exit router ospf
router-id 55.1.1.1
network 35.1.1.0 0.0.0.255 area
network 55.1.1.0 0.0.0.255 area
exit R6:
int f0/
ip add 36.1.1.6 255.255.255.0
no shut
exit
int l0
ip add 66.1.1.1 255.255.255.0
exit router ospf
router-id 66.1.1.1
network 36.1.1.0 0.0.0.255 area
network 66.1.1.0 0.0.0.255 area
exit R7:
int f0/
ip add 78.1.1.7 255.255.255.0
no shut
exit
int f1/
ip add 17.1.1.7 255.255.255.0
no shut
exit
int s2/
ip add 27.1.1.7 255.255.255.0
no shut
exit
int l0
ip add 77.1.1.1 255.255.255.0
exit router ospf
router-id 77.1.1.1
network 78.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
network 77.1.1.0 0.0.0.255 area
exit R8:
int f0/
ip add 78.1.1.8 255.255.255.0
no shut
exit
int l0
ip add 88.1.1.1 255.255.255.0
exit router ospf
router-id 88.1.1.1
network 78.1.1.0 0.0.0.255 area
network 88.1.1.0 0.0.0.255 area
exit

配置PIM Sparse-Mode(除组播源及接受者外)

R1:
ip multicast-routing
ip pim rp-address 22.1.1.1
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R2:
ip multicast-routing
ip pim rp-address 22.1.1.1
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit R3:
ip multicast-routing
ip pim rp-address 22.1.1.1
int f0/
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit R4:
ip multicast-routing
ip pim rp-address 22.1.1.1
int f0/
ip pim sparse-mode
exit R6:
ip multicast-routing
ip pim rp-address 22.1.1.1
int f0/
ip pim sparse-mode
exit R7:
ip multicast-routing
ip pim rp-address 22.1.1.1
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit

-------------------------------------------------
R2:
show ip pim int
show ip pim neighbor
show ip pim rp mapping

R8:
int f0/0
ip igmp join-group 228.1.1.1
exit

R7:
show ip mroute
conf t
ip pim spt-threshold infinity
end
show ip mroute

R1/R2:
show ip mroute

R7:
int s2/0
ip ospf cost 1
exit
show ip route ospf

R2:
int f0/0
ip ospf cost 3
exit
int s2/1
ip ospf cost 2
exit
show ip route ospf

R7:
show ip route ospf

R7/R2:
show ip mroute

R5:
ping 228.1.1.1

R3/R2:
show ip mroute

R7:
ip pim spt-threshold 0
clear ip mroute *

R5:(wait until R2/R7 mroute establish again)
ping 228.1.1.1 reapeat 1

R3/R1/R2/R7:
show ip mroute

R5:
ping 228.1.1.1 reapeat 1

R3/R2/R7:
show ip mroute

4.PIM双向树和SSM
--------------------------------------------------------------------------------------------------------------------

实验目的:
1.掌握PIM双向树的配置方法
2.观察PIM双向树的组播路由表和标识
3.观察PIM双向树的DF选择原则
4.掌握PIM SSM的配置方法
5.观察PIM SSM的组播路由表和标识

实验假设:R5模拟组播源,R3模拟第一跳路由器,R7是RP,R8是最后一跳路由器,同时模拟接受者。

aaarticlea/png;base64,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" alt="" />

配置接口以及IGP(OSPF)

R1:
int f0/
ip add 1.1.1.1 255.255.255.0
no shut
exit
int l0
ip add 11.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.1 255.255.255.0
no shut
exit router ospf
router-id 11.1.1.1
network 1.1.1.0 0.0.0.255 area
network 11.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
exit R2:
int f0/
ip add 1.1.1.2 255.255.255.0
no shut
exit
int l0
ip add 22.1.1.1 255.255.255.0
exit
int s2/
ip add 27.1.1.2 255.255.255.0
no shut
exit router ospf
router-id 22.1.1.1
network 1.1.1.0 0.0.0.255 area
network 22.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit R3:
int f0/
ip add 1.1.1.3 255.255.255.0
no shut
exit
int l0
ip add 33.1.1.1 255.255.255.0
exit
int f1/
ip add 35.1.1.3 255.255.255.0
no shut
exit router ospf
router-id 33.1.1.1
network 1.1.1.0 0.0.0.255 area
network 33.1.1.0 0.0.0.255 area
network 35.1.1.0 0.0.0.255 area
exit R5:
int f1/
ip add 35.1.1.5 255.255.255.0
no shut
exit
int l0
ip add 55.1.1.1 255.255.255.0
exit router ospf
router-id 55.1.1.1
network 35.1.1.0 0.0.0.255 area
network 55.1.1.0 0.0.0.255 area
exit R7:
int f0/
ip add 78.1.1.7 255.255.255.0
no shut
exit
int f1/
ip add 17.1.1.7 255.255.255.0
no shut
exit
int s2/
ip add 27.1.1.7 255.255.255.0
no shut
exit
int l0
ip add 77.1.1.1 255.255.255.0
exit router ospf
router-id 77.1.1.1
network 78.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
network 77.1.1.0 0.0.0.255 area
exit R8:
int f0/
ip add 78.1.1.8 255.255.255.0
no shut
exit
int l0
ip add 88.1.1.1 255.255.255.0
exit router ospf
router-id 88.1.1.1
network 78.1.1.0 0.0.0.255 area
network 88.1.1.0 0.0.0.255 area
exit

配置PIM Sparse-Mode(除组播源及接受者外)

R1:
ip multicast-routing
ip pim bidir-enable
ip pim rp-address 77.1.1.1 bidir
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R2:
ip multicast-routing
ip pim bidir-enable
ip pim rp-address 77.1.1.1 bidir
int f0/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit R3:
ip multicast-routing
ip pim bidir-enable
ip pim rp-address 77.1.1.1 bidir
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R7:
ip multicast-routing
ip pim bidir-enable
ip pim rp-address 77.1.1.1 bidir
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit
int l0
ip pim sparse-mode
exit R8:
ip multicast-routing
ip pim bidir-enable
ip pim rp-address 77.1.1.1 bidir
int f0/
ip pim sparse-mode
exit
int l0
ip pim sparse-mode
exit

-------------------------------------------------
R2:
show ip pim int
show ip pim neighbor
show ip pim rp mapping

R8:
int l0
ip igmp join-group 228.1.1.1
exit

show ip mroute

R7:
show ip mroute

R5:
ping 228.1.1.1

R3/R1/R7:
show ip mroute

R2:
int s2/0
ip ospf cost 1
exit

debug ip pim df

R5:
ping 228.1.1.1

R3/R1/R7:
show ip mroute

R8:
no ip pim bidir-enable
int f0/0
no ip pim sparse-mode
exit
int l0
no ip pim sparse-mode
no ip igmp join-group 228.1.1.1
exit

SSM配置
--------------------------------------------
R7:
int f0/0
ip igmp version 3
ip pim sparse-mode
exit
ip pim ssm default

R1/R2/R3:
conf t
ip pim ssm default

R8:
int f0/0
ip igmp version 3
ip igmp join-group 232.1.1.1 source 35.1.1.5
exit

R5:
ping 232.1.1.1

5.动态RP之auto-rp
-------------------------------------------------------------------------------------------

aaarticlea/png;base64,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" alt="" />

配置接口以及IGP(OSPF)

R1:
int f0/
ip add 1.1.1.1 255.255.255.0
no shut
exit
int l0
ip add 11.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.1 255.255.255.0
no shut
exit router ospf
router-id 11.1.1.1
network 1.1.1.0 0.0.0.255 area
network 11.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
exit R2:
int f0/
ip add 1.1.1.2 255.255.255.0
no shut
exit
int l0
ip add 22.1.1.1 255.255.255.0
exit
int s2/
ip add 27.1.1.2 255.255.255.0
no shut
exit router ospf
router-id 22.1.1.1
network 1.1.1.0 0.0.0.255 area
network 22.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit R3:
int f0/
ip add 1.1.1.3 255.255.255.0
no shut
exit
int l0
ip add 33.1.1.1 255.255.255.0
exit
int f1/
ip add 35.1.1.3 255.255.255.0
no shut
exit router ospf
router-id 33.1.1.1
network 1.1.1.0 0.0.0.255 area
network 33.1.1.0 0.0.0.255 area
network 35.1.1.0 0.0.0.255 area
exit R4:
int f0/
ip add 1.1.1.4 255.255.255.0
no shut
exit
int l0
ip add 44.1.1.1 255.255.255.0
exit router ospf
router-id 44.1.1.1
network 1.1.1.0 0.0.0.255 area
network 44.1.1.0 0.0.0.255 area
exit R5:
int f1/
ip add 35.1.1.5 255.255.255.0
no shut
exit
int l0
ip add 55.1.1.1 255.255.255.0
exit router ospf
router-id 55.1.1.1
network 35.1.1.0 0.0.0.255 area
network 55.1.1.0 0.0.0.255 area
exit R7:
int f0/
ip add 78.1.1.7 255.255.255.0
no shut
exit
int f1/
ip add 17.1.1.7 255.255.255.0
no shut
exit
int s2/
ip add 27.1.1.7 255.255.255.0
no shut
exit
int l0
ip add 77.1.1.1 255.255.255.0
exit router ospf
router-id 77.1.1.1
network 78.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
network 77.1.1.0 0.0.0.255 area
exit R8:
int f0/
ip add 78.1.1.8 255.255.255.0
no shut
exit
int l0
ip add 88.1.1.1 255.255.255.0
exit router ospf
router-id 88.1.1.1
network 78.1.1.0 0.0.0.255 area
network 88.1.1.0 0.0.0.255 area
exit

配置PIM Sparse-Mode(除组播源及接受者外)

R1:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R2:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit R3:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R4:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit R7:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit

配置Auto RP
-------------------------------------------------
R2:
show ip pim int
show ip pim neighbor

R2:
ip pim autorp listener
ip pim send-rp-announce 1oopback 0 scope 10 group-list 10
ip access-list 10 permit 224.100.100.100
exit

R3:
ip pim autorp listener
ip pim send-rp-announce 1oopback 0 scope 10 group-list 10
ip access-list 10 permit 224.100.100.100
exit

R1:
ip pim send-rp-discovery loopback 0 scope 10

当使用auto-rp在pim sparse-mode网络中,这个命令需要配置在所有候选路由器上。原因是因为auto-rp的两个组播地址224.0.1.39和224.0.1.40只可以在dense-mode下传输,因为所有端口都配置的是sparse,所以auto-rp的信息会被丢掉。而这个命令就是使得dense-mode的auto-rp traffic可以通过sparse-mode的端口。

设置了send-rp-announce的路由器充当rp,发送224.0.1.39的组播包告诉rp-map的路由器“我是rp”
设置了send-rp-discovery的路由器充当rp-map,发送224.0.1.40的组播包告诉网络中的其他路由器“选谁做rp”。

R7:
show ip pim rp mapping

R8:
int f0/0
ip igmp join-group 224.100.100.100
exit

R5:
ping 224.100.100.100

6.动态RP之BSR
--------------------------------------------------------------------------------------------------

aaarticlea/png;base64,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" alt="" />

------------------------------------------------------------
R2/R3:
no ip pim autorp listener
no ip pim send-rp-announce 1oopback 0
no ip access-list standard 10

R1:
no ip pim send-rp-discovery

配置BSR
------------------------------------------------------------

所有候选BSR通过bootstrap报文来选举BSR,优先级最高的BSR最后会通知在组播网中所有路由器它是BSR。这时候RP的候选会发送c-rp-adv报文到获胜的BSR,报文包括了这个RP的优先级和它对应的组播地址段。BSR将这些信息放入rp-set,然后放在boorstrap报文中发送给组播网中所有的路有器。
在整个过程中,所有的报文都是unicast发送的。

R2:
show ip pim int
show ip pim neighbor

R1:
ip pim bsr-candidate loopback 0 4 10

R3:
ip pim bsr-candidate loopback 0 5 5

R7/R3:
show ip pim bsr-router

R2:
ip pim rp-candidate loopback 0 group-list 1
access-list 1 permit 224.100.100.100

R7:
ip pim rp-candidate loopback 0 group-list 1 priority 100
access-list 1 permit 224.100.100.100

R8:
int f0/0
ip igmp join-group 224.100.100.100

R3:
show ip pim rp mapping
show ip pim rp

R5:
ping 224.100.100.100

Hash配置
--------------------------------------
R1/R3:
ip pim bsr-candidate loopback 0 30

R2/R7:
ip pim rp-candidate loopback 0

R8:
int f0/0
ip igmp join-group 224.100.100.100
ip igmp join-group 224.100.100.1
ip igmp join-group 224.100.100.2
ip igmp join-group 224.100.100.3
ip igmp join-group 224.100.100.4
ip igmp join-group 224.100.100.5
ip igmp join-group 224.100.100.6
ip igmp join-group 224.100.100.7
ip igmp join-group 224.100.100.8
ip igmp join-group 224.100.100.9
ip igmp join-group 224.100.100.10
ip igmp join-group 224.100.100.11
ip igmp join-group 224.100.100.12
ip igmp join-group 224.100.100.13
ip igmp join-group 224.100.100.14
ip igmp join-group 224.100.100.15
ip igmp join-group 224.100.100.16
ip igmp join-group 224.100.100.17
ip igmp join-group 224.100.100.18
ip igmp join-group 224.100.100.19
ip igmp join-group 224.100.100.20
ip igmp join-group 224.100.100.21
ip igmp join-group 224.100.100.22
ip igmp join-group 224.100.100.23
ip igmp join-group 224.100.100.24
ip igmp join-group 224.100.100.25
ip igmp join-group 224.100.100.26
ip igmp join-group 224.100.100.27
ip igmp join-group 224.100.100.28
ip igmp join-group 224.100.100.29
ip igmp join-group 224.100.100.30
ip igmp join-group 224.100.100.31
ip igmp join-group 224.100.100.32
ip igmp join-group 224.100.100.33
exit

R1:
show ip pim rp

7.Anycast RP
----------------------------------------------------------------------------------------------------

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXcAAAEaCAIAAABlyIAtAAAgAElEQVR4nOydeVhTV/64D7i00zpO99rptx3HX2faTmemu+0girjiRrWurRY3xIpWxRUVlIqgxGyE7GHfCbIFCPuOhCWIoqHWGK0iiKDgwqIsOb8/Qi43G7JkA877nMcHk3uTk5ub937O55x7DoAIBAJhSICpK4BAIEY5yDIIBMKwIMsgEAjDgiyDQCAMC7IMAoEwLMgyCATCsOjbMlKqFcDhJIRQ6IR/BFhRpXp+TwQCYc4YxDIKkSj/FDohtSAQYxgDWkboBDDLoEgGgRizGLTFpK4UhW+chHp+TwQCYc4YLJZRRjIqzwqdkGUQiLGGwVtMx45ZYa7Rah4EAjG6MaBllC2kt1FaBoEYy6DxMggEwrAgyyAQCMOCLINAIAwLsgwCgTAsI9kyIpkNoRlCCGFHpLOsuPcPsfJB5TbO9bd6/9MR6Sz2EmHPdUQ6SyJrIYQQ1tY79m7W7GUnttFa+l4HgUAMAv1Yprun535ra1Vtbcrly6FlZfS8vNMZGSeFQvfkZDeBwD05+ZRQSM7JCS4tzaipkTY2dnZ3D/9NiwmYMpq97BSWgRBCKJLZ4P57K0aiKhqFWXCKUdkM/1KYvBAIxNAZomXaOzsl9fXRYjEpJ+dEcvLRxMQD8fF7Y2Odo6KcwsM3h4RsCApa5++/gsNZymQu9PObS6XakEjWRCJW5lAoKzicPbGxwSJRfUvL4KuA00FtvSM+ftGgmCCJrNUZpGDRTTFB7CVSvKzmxipKQiAQA2dwlmlqbc2sqWEXFrr4+m7Zt8+DQjkQFOQuELgmJByIi9vD5ztHRjqGhW0KCVkfGLiGx1vB4SxhMOz8/OZQqdYEwuKTJxe7uCzcuVO9/PLLEhptZ1RU7tWrA61Kbb2jrqbNc9s4fU2tXjTCItXgSCPwQSAQA2dAlumRy2vu3o0sLw8qKaFlZfnQaDKZTPFUc3NzUETELgJhT3T0bj5/B84yq3m85Wz2YgZjAY02h0KxJhJnkUibg4OPczjS69fV3iIyNVUR48ylUk+lpbU9ezbwz1BM0KmAYoI23WhYRpGO8RJBnGVQLINA6IfnW6a2peXchQtRFRUhpaX+58+zCwsZ+flh2dmV1dX4zcrKyjyoVAcyeWto6Mbg4LUslu2hQyvI5MV0+nxfX1sKxerMmU8dHFyOHpVIJNheLY8exRcWSv/4A0K4g8nE2lM2ZDK7sHBgH0F7U6gvy6vI7PYT+yiM05sARrEMAqFn+rOMHMLC69cTL17ki8UR5eUhIhGvuJhdWEjLyyNnZ/tkZvplZaUWFLS3t2O7PHnyJDQq6rCHR1RUVP3du8cFgkV0+swTJ2Y7OPgxGA8fPsS2rLl50zs1dS6VqtDKhoAAj9hYfOLGmkh0CArq6unp/wPcipF4xdR7xXT0PVRb74h3RF//Ee4RnXkcFMsgEHqmP8vkX7uWXF0dX1UVIxaHl5cHi0S84mJWQQEtN5eUne2TkeEpFB4XCPbyeBQut6OjQ2331MrKZUzmaje3jMxMuVyueLC7uzujsnJnVJSaUHSVbRER/da/N+goJvRppZggdlSTjoplOiKdtYjjVozEMaZDbePeBxEIxDDQaZnm1tbUy5cFly7FXbgQXVERXlYWJBJxi4oY+fm+ubmkrKwzGRnH4+I8AgMDBYJcsbjgwoX8ysq8yspcsTi7oiLrwoX1QUFLmUw7P7+fQ0ICU1Ku3rgRlJf3PYczQL9g5Vpjo65K4izQqxvVfmsIoaplRDIbO6WDausd7fp81JsAxlI2IpljTMetGIljTDPqz0YghoNOy4hu3BBeuZJ06ZIiKRNWVhZYUqKwDDUnh5iV5Z2efjI11V0gOJyQcCAubjef7xwZuZZMXr5v30oyeQ2Pt5zNXsJgLKTR5lCpMwdpFnw5Ex+vvYrqQUqzl9Z+pb6Ei5ZnlYGPQlLYsL0+Z/UGOP32lCMQiH7QaZnzMllydXXixYuxlZWRFRWhpaUB589zioroeXmU7OyzWVneaWm/pqa6CQSHExL2x8Wt9vTctHt3RmYmhLChoSEgImKXv/9iBmPu2bOOu3ZFREXhC18gCIiPP8TlrvL1naU6jkazuLJY+NSPkmYvO9zIXWUL6FaMRLUppMyw9K8JhYmUw/luxUgUyWMsVuqnGwuBQPRPf5Y5mpSUePEiv7Iyorxc0cHEzM8npKRQcnIImZleaWkeKSlHExJWu7ruP3bsypUr2L5Nzc2RxcWbQkMX0+m2GzY8ffpU/cXLylYdOWLl7T2QWMadybx1Sz1AUTRwbsVItI2LUWZeCM3KgTBYLkZ7H5PCJkqnNHsRmvHmghD2PohAIAZPf5aZSSQeT07GdzCxCgpIdLp/SMgREmkPh7PWxeX02bP37t3D9rp8/To9N3d9UNBKLteexbJxcysoK0svL/9VIFjL4xH5/PqGBmxjcWXlXm9vKze351rmxo0bhj0MCATCYPRnGcWP/KfgYFZhYZBIxCsuZhYU+Jw719jUBCFsbm7GgpSOjo6cqirP1NTNISE/Ke8tWMZkLmUy7Wg0/L0Fs8nkI2Fhl377DXujpqYmMocz7+BB67NnkWUQiNHH8y2jGCPnGB5OyMhQpH59Q0LUNm5ra8vIyTnN4WwlkdYHBKxV3sGkuLdAM/Myk0j8OTAwq6REsfuzzs70iorlDAayDAIx+hiQZbCyjMX6OTLSXSDgFhWxCgv98vLIOTlns7JOZ2R4pqaeSE4+lpS0NSxsjfLegoU02hwKpZ8OprUcjodAsNDPD7WYEIjRyuAsg5U5FMpyNvun4GDH8HDnqKhfYmJ+jojYGhq6MSTkx4CA1Tzed2z2Yjp9AY1mS6EMuQ8bWQaBGAUM0TLqLSASyZZCmefru5BGW0CjLaDR5tNoc319bSmU53ZUI8sgEKMb/VjGoAVZBoEY0SDLIBAIw4Isg0AgDAuyDAKBMCwjyTKP4eNyWH4LoqUEEIiRhE7LyJqaTO4XRfFksW7cuEGG5JfgSwACAMESuOQBfGDMw4RAIIaMTsvIIVw1+Llg9F6+dnN77Y035lPnK/yClSVwiTEPEwKBGDL9zZVXc+fOnGGPdhlOmU0ibT9yZNasWeMzx6tZBkDwB/zDaIcJgUAMmefMLp6Ym2s/7MG7QyuLyWQfNpvH45WWln4s/1jTMilNKcY5RggEYjg8xzJyubywqMiFTl9AJhvNL/NIpD10OofH4/F4RUVFcrl8A9ygbpkOYPEXC1tbWx6P19yMZn5BIMyXAa3HJJPJwsLD3VmsNVTqLIPJZSaRuJpKPcJksnk8Ho8XERGBrfp0DV57Bb6Ct8zJtpMcDmf27NkWFhYTJkywt7ePiopqbW015LFCIBBDYaBrS3Z1dUkkEj6fz+RyjzOZW2k0ewpl+MaZSSQuo1A202hHmUw/jiJ84fH5fIlE0tXVha/ANXhtA9zwEfxoNpwdA2Owx+/cuUMikb788ksAwMsvv/zjjz+mpKR0dnbq8yAhEIhhMOh1shsaGkQiEZ/P5/F4bC7Xh812ZTJ30embabS1VOoyCmUBmTyXRLJRy+MSifNJpKUUyioq1cHX19nP7zCDcZrNZvH64PP5IpGoATeZ3nORUq0AAAA4CSH8/fffPTw8PvzwQwDAa6+9tn379vx8n23Aiiod7EdEIBD6ZNCWwWhtbZXJZCKRSCgUhoeH8zTg8nhsLper+YSS8PBwoVAoEolkMtmQGjtCJ4CziJRqBYBTqryysvLAgQPvvvsuAACAl7/fv7+yslIul0OhE1DiJBzy50YgEINj6JZRo6urq6Wlpa6uTiqVSiSSqqoqsVhcXl5eWlpaXl4uFourqqokEolUKq2rq2tpaVFrEA2JPstgAsH00dPTQ1gGwL8WvfbaawCAf/7z3S8B+PxoBuzVEYpxEAgjoTfLGJ++0EShFqGTapAipVoBJyF89uxZSkrKett/KLb94osviI7fonAGgTAaI9gy6i0mNcv0Sga/LZjnGm1vbz9+/DgAwOQPprPZ7Pv37xu71gjEGGPUWkZKtVJpFeGebeZvBAC8+985FhYW48ePX7JkSURExJMnT4xcewRijDBaLaMuGfzTWF6mrq6OQqFMnz4dAPDSSy+tW7cuKSnp2bNnRv4YCMToZpRYBtd9pFCJ0Ekzv6u7j0kqlXp6en788ccAgFdffdXR0TE3N7e7u9t4HwWBGL2MaMvoRptknotcLr948eKhQ4fef/99AMA777zj4uJSXl4ul8sNUkkEYmwwSi0zPHp6eoqKipydnd944w0AwAcffODu7l5TU2PqeiEQIxJkmf7o7OxMS0tzcHCYNGkSAOCzzz7z8fG5dQtN1odADAJkmQHR3t4eGxu7YsWKiRMnAgCsra2ZTGZjY6Op64VAjACQZQZHS0tLYGDg/PnzLS0tx40bt2jRotDQ0MePH5u6XgiE+YIsM0Tu3r1Lo9G+/fZbAMCLL764evXqhISEp0+fmrpeCITZgSwzXGQymZeX1yeffAIA+Mtf/rJly5asrCzUC45AYCDL6I3q6uojR45MnToVADBlypTdu3eLRCLUC45AIMvoGblcXlJSsmvXrrfeegsAMG3atKNHj165csXU9UIgTAayjKHo6urKyMjYtGnT5MmTAQD/+c9/Tp8+ffPmTVPXC4EwNsgyBqejoyMuLm7VqlUvvPACAMDKysrPz+/evXumrhcCYSSQZYzHo0ePQkJCFi5cOG7cuHHjxi1YsCA4OPjRo0emrhcCYViQZUzAvXv36HT6jBkzAAAvvPDCypUrz50719HRYep6IRAGAVnGlPzxxx9nzpz573//CwCYPHnyxo0bMzIy9DFXKQJhRiDLmAVXrlw5duzYtGnTAABvvfXWrl27zp8/j3rBEaMDZBkzQi6Xl5aW7tmz5+233wYA/O1vf3N1da2urjZ1vRCIYYEsY450d3dnZ2dv2bLlL3/5CwDgk08+OXXqFLbSJgIxskCWMWuePn2amJi4Zs2aF198EQDwzTff+Pr63r1719T1QiAGAbLMyODx48dhYWGLFy8eN26cpaXlvHnzAgICWlpaTF0vBOL5IMuMMJqamlgs1syZMwEAEydOXL58OZ/Pb29vN3W9EAidIMuMVG7dukUgED7//HMAwKRJk3766SehUNjZ2WnqeiEQ6iDLjHh+++2348ePf/DBBwCAN954Y8eOHYWFhT09PaauFwLRC7LMKEEul1dUVLi4uPz1r38FALz33nuHDh2qqqpCg24QJgdZZrTR3d2dm5u7bdu2V199FQDw0UcfnTx5Uiod7LIxCITeQJYZtTx79kwgEKxbt+6ll14CAHz99ddkMrmurs7U9UKMOQxmGSnVCrfcI34xR8Uzg1+UDTFEnjx5EhERsXTp0vHjx1tYWNja2vJ4vObmZqNVQHkuqK3oiTGkNfoQIwfDWkZx7uD+7JMPOq2Mz/379zkczuzZsy0sLCZMmGBvbx8VFdXa2mrgt1VdzlxKtVLzjdBJ5QHdCw0bG5HMxk7sJTJpHXTSEekstrFTFud6bJGwYgLucTtJZK0pa6nAGJYROvVaRXmCqZ52CKNz584dEon05ZdfAgBefvnlH3/8MSUlxWC94FqWM8frQ1UyfRvjL04moZggdnSW2BCMF/ThuRUjwbtDg45IZ8yAHZHOYqyexQSxY0xH34vYyYoNXNXnYpwWkxVVij+bkGXMhd9//93Dw+PDDz8EALz22mvbt2/Pz8/Xby94X2jS9+WrN6BVJaP8r/qWxqW23tFOVqz41xTvPxjLQCiSYRvjLQNhs5cZhGOGj2V6I5ks1TwNajSZEXK5vLKy8sCBA++++y4A4N13392/f39lZaWeesFVLypq7lCVjMqzJg1mbsUoohjVH3Pvf7HWiqI9ohJKQFVB3IqRKBsvSlvV1jsqWzQqmlA8SGiGaq0e7cEUsgzU3mJSgmIZM6Wnp6egoGD79u2vvfYaAOCf//zniRMnrl69OrxX7c8yUqqVxqlhDrFM329YNaZQ+KU32VFMUCZERDJcw6Tvh11MUJFLpOLBGOWrYXvV1jtiCRRRveKPwcQyzV52fWZRbzH19yJGwhiWUUbN2AmDLGPuPHv2LCUlZf369S+//DIA4IsvviASibW1Q0sk9mMZdcngnzZlKINvKOEVADsinXGRQt9muN88Flao7KjrXSSRtb3RjVrEMRDLaE3xqsRBZqAYiMbLIPqntbU1Ojra3t5+woQJFhYWNjY2bDb7/v37g3kNLdlf5UVHWx+2GfQxqXbTiG36IgXVdgpORsoWFi6UUAlwMFT7hvpCGJnqG6lZptmrbxd1r/WFVMrK41pMZgGyDGJANDc3+/v7z5kzx8LCYvz48UuWLImIiHjy5MmwXtRMB8po5DL6sh46LdMbmIh0BUG4l+pnA1xQo5cWk5mALIMYHHV1dRQKZfr06QCAl156ad26dUlJSc+ePTN1vfSHlhgE845uy2ARUF+ytiPSGRdlKPIyuBcvJihjGZEM3yfd1/Lqr3tLI/uLyxYhyyBGCVKp1NPT8+OPPwYAvPrqq46Ojrm5ud3d3QZ90+6envutrVW1tSmXL4eWldHz8k5nZJwUCt2Tk90EAvfk5FNCITknJ7i0NKOmRtrY2Dn4+hQTtHTrKB/szzL4n7rKjiopkr4Wk1cMFsvgmlF9b61sJQ2kjwlnNGQZxGhDLpdfvHjx0KFD77//PgDgnXfecXFxKS8v19e94O2dnZL6+mixmJSTcyI5+Whi4oH4+L2xsc5RUU7h4ZtDQjYEBa3z91/B4SxlMhf6+c2lUm1IJGsiEStzKJQVHM6e2NhgkajekLMLmkmHjhmiZ8sY4VKDME96enqKioqcnZ3feOMNAMAHH3zg7u5eU1MztFdram3NrKlhFxa6+Ppu2bfPg0I5EBTkLhC4JiQciIvbw+c7R0Y6hoVtCglZHxi4hsdbweEsYTDs/PzmUKnWBMLikycXu7gs3LlTvfzyyxIabWdUVO5wu+c1MYuRKebJcC0zgi41COPQ2dmZlpbm4OAwadIkAMBnn33m4+Nz61bvNV4O5QEw4Bv4zTQ4bS1cexWq/Np75PKau3cjy8uDSkpoWVk+NBq2ckNzc3NQRMQuAmFPdPRuPn8HzjKrebzlbPZiBmMBjTaHQrEmEmeRSJuDg49zONLr19WqF5maqjjx5lKpp9LS2vSRUVI0i8ytnWI+DNEyI/BSgzA27e3tsbGxK1asmDhxIgDA2tqayWQebDsIIMDKK/AVKeztZaptaTl34UJURUVIaan/+fPswkJGfn5Ydnal6opUZWVlHlSqA5m8NTR0Y3DwWhbL9tChFWTyYjp9vq+vLYVidebMpw4OLkePSiQSbK+WR4/iCwulf/wBIdzBZGIXORsymV1YaMzDMgYZnGVG6KUGYVpaWloCAwPnz59v+aYl6AR4ywAINsPNcggLr19PvHiRLxZHlJeHiES84mJ2YSEtL4+cne2TmemXlZVaUICfRP3JkyehUVGHPTyioqLq7949LhAsotNnnjgx28HBj8F4+PAhtmXNzZveqalzqVTFebUhIMAjNhYfTVsTiQ5BQV1oDlODMQjLoEsNYpgkPkhUUwyA4L/y/+Zfu5ZcXR1fVRUjFoeXlweLRLziYlZBAS03l5Sd7ZOR4SkUHhcI9vJ4FC63o0O9YZJaWbmMyVzt5paRmYllnbu7uzMqK3dGRakJRVfZFhFh9OMxVhiQZdClBqEXpFCqaZkp6e+nVFcLLl2Ku3AhuqIivKwsSCTiFhUx8vN9c3NJWVlnMjKOx8V5BAYGCgS5YnHBhQv5lZV5lZW5YnF2RUXWhQvrg4KWMpl2fn4/h4QEpqRcvXEjKC/vew5ngH7ByrXGRlMfodHJgCyDLjUIfWEH7dQs4xzzq/DKlaRLlxSRclhZWWBJicIy1JwcYlaWd3r6ydRUd4HgcELCgbi43Xy+c2TkWjJ5+b59K8nkNTzecjZ7CYOxkEabQ6XOHKRZ8OVMfLypD8/o5PmWaW5tTb18GV1qEHrhAXxgD+0VfpkMJ3Mh97xMllxdnXjxYmxlZWRFRWhpacD585yiInpeHiU7+2xWlnda2q+pqW4CweGEhP1xcas9PTft3p2RmQkhbGhoCIiI2OXvv5jBmHv2rOOuXRFRUfjCFwgC4uMPcbmrfH1nqXZuahZXFgutn2cInm8Z0Y0b6FKD0C91sO4ivNgO2yGE52Wyo0lJiRcv8isrI8rLFVk/Zn4+ISWFkpNDyMz0SkvzSEk5mpCw2tV1/7FjV65cwV6nqbk5srh4U2joYjrddsOGp0+fqr3R+bKyVUeOWHl7D+QEc2cysR53qDI1jD56qbXO86B1g1HH8y2DLjUIg3JeJptJJB5PTsZn/VgFBSQ63T8k5AiJtIfDWevicvrs2Xv37mF7Xb5+nZ6buz4oaCWXa89i2bi5FZSVpZeX/yoQrOXxiHx+fUMDtrG4snKvt7eVm9tzLXPjxg0IYe/oftxA3lsxkuGOuBu2ZUbu2OIBWcY8LzWI0cF5mUzx/f4UHMwqLAwSiXjFxcyCAp9z5xqbmiCEzc3N2JnT0dGRU1XlmZq6OSTkJ+WAz2VM5lIm045Gww/4nE0mHwkLu/Tbb9gbNTU1kTmceQcPWp89279ltN7KNFyeG6qMccuY36UGMXrALGNNJNqQyY7h4YSMDEV73DckRG3jtra2jJyc0xzOVhJpfUDAWuWwcsWAT81weCaR+HNgYFZJiWL3Z52d6RUVyxmM/k6w/mef0jKfptZpOhX0zQvjRdAay2jbQNu7aJujE7eved/ZMCDLmNulBjGawFsGK8tYrJ8jI90FAm5REauw0C8vj5yTczYr63RGhmdq6onk5GNJSVvDwtYoB3wupNHmUCj9ZP3WcjgeAsHCEysn46ee/tbR2vFb/AM/BN7oP6bQMp+mrmk6VSbWU2yjZhkdG2h/Fy1zg/bu+9xJ+UzNICxjLpcaxOhCq2WwModCWc5m/xQc7Bge7hwV9UtMzM8REVtDQzeGhPwYELCax/uOzV5Mpy+g0WwplOe3u13tJwMw2d7Vmkj80n4qAFOnrflW8V9rIvEHawDAD8IBZmG1ywI3HYTa62jmZXRtoP1dVC2jsrFqBcyPwVnG4JcaPz/UYhpr9G8Z9csSiWRLoczz9V1Ioy2g0RbQaPNptLm+vrYUynN7D9Qs88m3AICp01z7nv3BGoAv3KX9hQZa59PUPumMehpFwzI6N9Axa6eOpRH01wtmMIZoGUNdavotyDKjkkFZZrjF1R7XYsIU4zptKgAAgGmr827c6C800D6fpo6prYYcy+iYtVM9lhk5meDhWkbPlxpkmbGH8S0z2d5VkY7B2kqKsnP1NAC+oEqVyVdcN1MxQeylaz5NnRPo4afjVWRq1fIyOjbQ/i5a1mPBzfVr1gNt9GwZgxZkmVGJaSyjbDG9N2/qFEcNy0Co1mxRWStW23yauqccVy48oHW8jNYNtL8LVJ+jU+vqcWYJsgzCxJjKMtZExykAAPBn9T4mhL5BlkGYGHSCjXqQZRDG5j68T4CEbXDbGXimCTbJmppMfmopyik2G51ghmDkWaYW1q6GqyfBSa/AV7bALQ/gAyMcJoS++B3+PgVOwaZ9eBu+felZ9SIy2eRn10Iymc3l/vHHH6Y+QqOQ51vGfC41M1esYIQwpsqn4mcn+Rp+3QW7jHCkEHphPpyvNr/MhPwJL02ZYuXlZcJTazaJ5M1m+/v7t7a2mvoIjUKebxk5hKsGPxeM/hVz6tSrr78ONqnPtAYgSISJRjhSiOHTBbvGwXFqX5+F3EJ8SZyYm2s/7BFVQyuLyWQfNpvH45WWlpr6CI1OBjRXXs2dO3OGPdpl+JcaHo/33c3vNC3j1upm6MOEGD5Pnz6Njo227LRU+/omwondsFsulxcWFbnQ6QuM2HqaRyLtodM5PB6PxysqKtLXSnUINQY6u7iZXGoIkKBpGYt1FrNnz6bRaLdv3zbowUIMAblcXl5e7uzs/OqrrwIAXhW+qvb1rYPrsI1lMllYeLg7i7WGSp1lsDNqJpG4mko9wmSyeTwejxcREYEtxYEwBAO1jJlcahph45vwTfw5+vfOv5/1O2tjY2NpaQkA+Oqrr7y8vH7D3eo9shA69Y3d+PvfAbCiSpWPOgkhhFKqlfJBBVKqVe9TZkd9fT2BQPjXv/4FAHjzzTddXFwuXrzYBJu+gl9hX98X8ItGqDLRaldXl0Qi4fP5TC73OJO5lUazp1CGb5yZROIyCmUzjXaUyfTjKM4pHp/Pl0gkXV0or2dYBrcekzlcaq7AKzPgDACBBbSwg3a3YO/NHI2Njf7+/kuWLFGsMfbRRx8dPXq0oqJiBIXBKgqRUtet+EIhECnVCvQ+IXTCSQZTkllZ5unTp3w+f/HixZaWluPHj1+xYkVSUlJnZye2QRfsSoWpFEhJhsn9ZO4bGhpEIhGfz+fxeGwu14fNdmUyd9Hpm2m0tVTqMgplAZk8l0SyUT15ZhOJ80mkpRTKKirVwdfX2c/vMINxms1m8frg8/kikagBN8MRwqAMem1JM7nUPIKPWmFfd4Did6j4uT169Cg6Onrt2rWKFVTfe++93bvtl4JPSL+Z+yWr91NgzlAqRegEnJycgBVVqhm59IU5JkatZfT555/7+vo26mNC+NbWVplMJhKJhEJheHg4TwMuj8fmcrmaTygJDw8XCoUikUgmk6FeJOMz9HWyzelSg7vC45ocWxM7UlJStm7d+sbkFwEAf3799S1btiQnJ3ckbsW2MYffJw58gwk4CYVOvf9aUYVUK+wBjT1M+ym0towM93ZdXV0tLS11dXVSqVQikVRVVYnF4vLy8tLS0vLycrFYXFVVJZFIpFJpXV1dS0sLahCZnKFbBsMMLjWYZfp0g299JDsCsNRnz5497733HgBgPABvfL4oKiqq6vR01SSH2aCwjZM/1QpYOZ+JFwAAACAASURBVDlZASchFDop/lSrr+kso6tlhI8rtSF0Ms9jjjAYerCMGsa/1PQFAIsW9Z3dqhlTxYNyuVzs+z0A4JX3PgIATBw/DgAwazcPP2OxCZFSnVRSLorYpTclo+PHa3TLPK9lpD2u7KuhWjimdRvE6EL/ljEFuAQGdrJiwUyfZLBtgZMQXr169fSBpYobci0tLWfNmkWhUEw7wFwpEswsWFAjVP2zF7X2laGrN7CW0XPiSlXJaN8GMcoYvZZR/i2lqrYyNLZZH3Lbz8/P1tZ23LhxAIAvvvjC09NTIpGMoM4pg/LcPiM8A48rVR83iwQTwkCMLstoGViiLpl+Bp/cv38/KCho2bJlL7zwAgDgn//85+HDh0tLS3t6eoz/kUzOUPuMhhJXqmyDGHWMMstotvO15Rqflwt48uRJbGzsDz/8MHnyZADAu+++u3PnzpycnDHSWzG8PqNhxZUolhmVjA7L6GZ4HRpPnz4VCoXbtm176623AACvvfbaxo0bk5KSRvRCuk/hUz7k+0CfRJiIHxQ3qJaRbvQTVyJGE6PdMnqiu7u7sLDQxcVl6tSpAICXX3555cqVERERDx8+1Lp9M2y+D+8buZID4Q688zH8GBvg/yX8sknepNfRdHqOKxGjAGSZwSGXyy9cuODu7v7vf/8bADBhwoSFCxdyOBxsDOE1eG0mnKn4DX8Dv7kML/f/gs86u5oftzU/anvwqPXBw9b7D1vvP2xtannS1PKksVlRHt978Pjeg8cNDx433H909/6ju/cf1Tc9rG96WNf0sK7x4Z3GljuNLbX3WmrvNd9u6C23dJSVDZum1P9jwrM/YaL5S9JfhtQyGjxooMxYBVlm6Fy7ds3Hx+fbb78FAFhYWMyYMcOb5v3Xrr/ib+Z8C77VT1DT1vEsQySJy7kQm1UZnVERmVYeLiwLSREFCUoCEs9z44vYcYXM2AJ6TJ5vVC4lIocUnkUIzTwTnOEdmOYZIPyVl3qCk+zGEhxlJrnSEw7R4vdT47b/6r9h83bH/Z7Op8N2E/maZRObMuHZi1gNx3WMS0xKHHzLCIEYKMgyeuDOnTsMBmPevHmWW9QnTwEQkCFZ616t7c8yRZKEvCq8ZcJSS3+lBrFisvqxzLJ123719DrlfeaU9xlP7zOeXlg5fdLr9K8nT7W1tUEIy8rLPc5QtrnTVRTDouw+yZzw7AWsei/AF+QQ9dkjDAiyjD5xbXfVtMya+jWafeGt7U+zSn9Lyr+osExIYsHeY6c3Ojq7Hz9RXnkpKf+SLsscIgTkFZU8aG7RLPcfNCv8ouDxk9bz4iv+ScWYYjYfJu8+yVSzzHfwO+MeJMSYA1lGn5yD5zQtAxzBO++8s2PHjszMTEXD5En705zy35ILq+nB8Y6/HNy524XNZmPDjmNi4349ddrD87SHp7eHp/cJT+8TJ71PnPQ+dYbkH5+rq8W0nxy1bNWPLS0Pb9y6Iyy84Budt5cci49idp7kKBSDt8zf4N/+gGg+bYRhQZbRJ52wEz9FE4DgI/lHgizBzz//PGXKFADAK6+8snvv/rTiS8Liy8mF1ZGCPFF5JTYMRy6X9+hGdqueFq3TMvsIYaEpJZ4BQhdy7B6Sei7GjRaDKWb3SebZZ6SdcKcf9HsEH5n2iCHGAsgyeqYZNm+D296Eb74OX98IN96Dvfdh9vT0nD9//tdT3glZZeklVxSWUbSYUgqr0/NKau/U5VX8rjX7SwhMdtx/covLyc0uHhv3ePy0+8SGXcd/3OX+g7Pb2h3Hlm/Zv3HLNgqd7eRK2E85p2mZ43Q+XjG7TzKfPsPlelXuhkLdyQj9gyxjPB63duRXXssU1eAt4x+bseeIZ1hCrq4+JmJwysq1Pw5kQozOzs6ERMEJShDeMm5+MWqK0bSMldqd4Ab6/IixCrKMkXjU2lF04Vp22W+Zohp+WvFRT9LWn3cfOnwkJibmbkNjZmmNLsvQo3NTCy9mllzOOH85rfiSsOhSauHFlIIqQcGFyOT8ouLedd+7urokv99IKayiRee6kGN3E/l7SPxjvlGailG3DA6V+T4RCD2BLGMMHj3pKL54PXzf5wCA9xbvDwwMvHXrFvZsXn4+i8XGF6ayxKVksuMK/bSNlznpn3rguI/0xu2c0svBKaLjHMFBWvx+apyixbSHFKtLMdoso5xzAikGYQCQZQzOoyftJRdlkfu/UCQ+PtmXmV8irr97F0LY1tZeW1dfe6e33L5Tf/tO3e07dbdr627X1t2uuxufV8WMLdBqGc8A4anANPyoPMwyLpTYI5QIXYo57MPr6u7WWlV0MxHCECDLGJaHT9pLq2XRB74AYO2ZCu4SAD7Zm55eciWt+HJR5W95FVfVRuVpzf7qsoza2F+FZfZRzrmSw3UpZr8XKyM7D19DKdUKy8QgyyAMAbKMAZHL5TGZ4hAPewCW7Y7P58admQnAtE3hrNhcJj+HEZNDj872i86iRWX5RmZRIzIp4Rnk8AxSWDoxNP1sSNqZwBQPVtwhUpjLmcC9pwP3eAfu9g7YczrwICnimF+sByfpBDvxOCvBnZngxow/xog7So874hfnri3dqygHvFksrr/afIAqE/Sh3C/CACDLGJYDvoxZU4Ea79jTtN5hpJdymBSmVTEHvVkcXsDNmzdNfUgQYw5kGcNywDcep4Cj/zawYnYT+fvOBGpVDNdfJeWMQBgNZBnDYnzL/OLJUVPModMsrn/gnTt3TH0wEGMUZBnDomoZY5QtrmSVHqXTrIDA4Lt375r6SCDGLsgyhsX4ltnjxcMUs3b7IetZNsHBwR0dHViVnsFnbMj+Af7gCB1zYa4JDw5ijIAso3/kUF4KSwNgQBbMMr5lsLzMvl99V3y/8oMPPgAATJo06YcffoiLi3vY/nA2nI2/n5MACaY+YIhRDrKMnmmH7fbQHvsN7/SNMIlljvmwQ8PCHzx4IJfLL1++fOLECcWaBBP3TlSbmGIcHIcmf0AYFGQZPeMKVSay2uGrfVpMg1rmmA8rLDyipaVFrW4SieQTySeaM+CEwTCTHCvEGAFZRs/8Df4N/wPezGU4+Qb84hPuQoreR44xQnEnBUVGRj16pH3imI1wo6ZlvjnzTWRk5OPHj418rBBjBGQZfXL//v1J7ZPUf8bFgORP8jcWMXx+P77IgBlq1Xu57eVPrT8FALzwwgvfffddWFiYruVfEIihYRTL9DOIXUq1Gvmj2ru7u9PT09esWTNx4kQLvoXaz/jDBx/e/OPmH8biuTPReEEvS9g7C/qb8M0iWAQhvH79uo+Pz1dffQUAmDhx4tKlS0NCQjTbXAjEEDCeZRQ34eHvx8MmaRu5lrlx44a7u/t7770HAJg2bdqpU6dEd0V/hX2LpbwEX1L8jM2Km/BmGAyLh/FP4BP1p27ePHv27DfffKNYbWrx4sWBgYEPHjwwST0RowNjW0bopDqLyTBmZ1NGSLr2NuAiY+3t7REREXPmzAEAvPjiixs2bMjLy8MWKmiEjSfgiZVw5T64TwpH6g3Ot27dIpPJ//vf/wAA48ePt7Oz8/f3v3/fHBfMRJg5xm8x6VooebD0s1Iq9rzyf3paJlUul4vFYmdn51deeQUA8PXXX7PZ7FGfxaitraVSqdbW1hYWFuPGjZs/fz6HwxnGEreIMYdxYxn1SEYvlunTjXpzrPd1tW8wKO7fv+/r6/vpp58CAF5//fW9e/dWV1cP7iVGfgaqrq7Oz89v1qxZFhYWlpaWc+bMYbFY2NK9CIQuRmqLqS86WbQIqPhE8beUaqX54KDfrru7OyMjQ5HWtbS0XLRoUWxs7NOnT4dc2xFtGYy7d+8yGAxbW1tLS0tLS8vZs2fT6fT6+npT1wthphjbMspfnJNQbYmOQf/+lBEKXhzYG+Eko32D53Hjxo3jx4/j07q1tbWDrKFmfc3TMioN2kHVsKGhgc1mz50719LS0sLCYubMmTQaDd38jVBj5I6X0WYZ5d9SqhXQuvzH837q/ad1h11fs7QM7mANuY6NjY1cLnfBggXjxo0DAMyYMYNCody+fVvfddVOd0/P/dbWqtralMuXQ8vK6Hl5pzMyTgqF7snJbgKBe3LyKaGQnJMTXFqaUVMjbWzs1DHtMcJAjHzLqDWTgBVVqiIZbRuov5Yx0rpmbBmqslaaebPBcv/+/YCAADs7u/HjxwMAvv32WxKJpDYH6PBp7+yU1NdHi8WknJwTyclHExMPxMfvjY11jopyCg/fHBKyIShonb//Cg5nKZO50M9vLpVqQyJZE4lYmUOhrOBw9sTGBotE9WhYkIEZBZbR7ELS6MPW3cekh7TuIOprlpbBULSc9NT739zcHBQUtGTJkgkTJgAApk+fTiAQbty4MZzXbGptzaypYRcWuvj6btm3z4NCORAU5C4QuCYkHIiL28PnO0dGOoaFbQoJWR8YuIbHW8HhLGEw7Pz85lCp1gTC4pMnF7u4LNy5U7388ssSGm1nVFTu1av6+OgIdUauZXQzgIEy+krrDrxGw8hAGYXe5Iz+K9fS0hIaGrps2bKJEycCAL788sszZ85cv35dbbNm2BwFowJgwHWo/lSPXF5z925keXlQSQktK8uHRpPJZL17NTcHRUTsIhD2REfv5vN34CyzmsdbzmYvZjAW0GhzKBRrInEWibQ5OPg4hyPVePfI1FRFjDOXSj2Vltb27Jm+D8OYZjRapl/0n9Yd+fQaRk9RjK7Rko8ePQoPD1++/H/jwDgAwOeff+7t7X3t2jUIYSbMfAW+ohgtbQktT8FT2F61LS3nLlyIqqgIKS31P3+eXVjIyM8Py86uVA05y8rKPKhUBzJ5a2joxuDgtSyW7aFDK8jkxXT6fF9fWwrF6syZTx0cXI4elUgk2F4tjx7FFxZK//gDQriDycTaUzZkMruwUB8HAwGhkS3T3dPT3tnZ+uxZ69On7Z2d3XrJqg4MRVp37ty5+k/rjnRUAq3h20Z1FVzNtqrQCYDNh6Oivv/++xdffFHljYV9N39lw2w5hIXXrydevMgXiyPKy0NEIl5xMbuwkJaXR87O9snM9MvKSi0oaG9vx977yZMnoVFRhz08oqKi6u/ePS4QLKLTZ544MdvBwY/BwCfaam7e9E5NnUulKrSyISDAIzYWn7ixJhIdgoK60BmiD/RvmR65vOHx4yKpNFgk8snIOJqYuJfP/zkyckto6MaQkB8DAlZzud+x2YvpdEUoa0Mmz/f1/Y7FcggJOZKYGCwSXamv75HL9VIZuVxeWVk51kbrmhS8ZbSMh8QPyX7yJH4eAH9e8RmAAFABAABIey2zDW7Lv3Ytubo6vqoqRiwOLy8PFol4xcWsggJabi4pO9snI8NTKDwuEOzl8ShcLn7KUQWplZXLmMzVbm4ZmZly5enU3d2dUVm5MypKTSi6yraICKMduFGMfizTI5fXP3qUeuUKNSNjD4vlKRR6pKQcTUo6nJDgcu7crpiY7RERW0JDHYKDfwgIWMnl2rNYi+j0+b6+s8lkrd/uTBLJnsU6FB+fe/Vq/75pg22lsLQG1sihyob379+n0WjGSOsicPTFLk5CbWMI8AOZeh+0EQYCCIBQJZyZIbZNvXxZcOlS3IUL0RUV4WVlQSIRt6iIkZ/vm5tLyso6k5FxPC7OIzAwUCDIFYsLLlzIr6zMq6zMFYuzKyqyLlxYHxS0lMm08/P7OSQkMCXl6o0bQXl533M4A/QLVq6heymGzXAt09zWln7lin9x8X4abcfBg4FBQQ0NDcmpqUfIZJfQ0IPx8S6xsTujorZHRGwOCfkpKGhdQMD3HM4yJtOOTp9HpdqQybZeXlsIhLMBAYK0tHRVgvh8ayLRhkTaER19QdvgixAYMhlOVpyXX8GvZFBm5LQuQgP1vj+V8ZDHjuElo9jgB+ENS2gJpAAAAKi9lplFWC28ciXp0iVFUiasrCywpERhGWpODjEryzs9/WRqqrtAcDgh4UBc3G4+3zkyci2ZvHzfvpVk8hoebzmbvYTBWEijzaFSZw7SLPhyJj7eNAdyFDF0yzS3tSVdvBhZXq64yATk5WUWF+MD1z/++MOXx3P08dkREbENP4qBzcZGMcwikayJxM/375/n4BARGan5LscDA7Hv+3sOpxw38qIYFltAlclc3mx88/1p76O0rknRYRmhEwBgnZPKQCZsAwIk4GOZJXBJzlVJcnV14sWLsZWVkRUVoaWlAefPc4qK6Hl5lOzss1lZ3mlpv6amugkEhxMS9sfFrfb03LR7d0ZmJoSwoaEhICJil7//YgZj7tmzjrt2RURF4QtfIAiIjz/E5a7y9Z2lOo5Gs7iyWPjUD2IIDMUycrm8WCaLr6rSvMj45eVFZ2Xdxo0x7+npSc/K2nfmzFI3twXbt28/eJARHW3PYi2k0WzJ5P9s3uzo4lJSUoJt397Rce78eYfg4PX+/rTExNLq6pUsFv5bPxAXp8jIaZ1ccr73fJTWNSnqeRnceMgvVnyh85b8KOq/AZjytXRjKAztht3nZbKjSUmJFy/yKysjyssVHUzM/HxCSgolJ4eQmemVluaRknI0IWG1q+v+Y8euXLmCvWhTc3NkcfGm0NDFdLrthg2akez5srJVR45YeXsPJJZxZzLRmpzDZNCWkcvl6RIJ/iITWFLSe5HJyVFcZE4Khcy0tJLKSvyO2BxuZ9LS5vn4/M/B4ZSPD341sjv37vllZi6i09W+ZhuN3M2GoCC5XD7j4QxNy0TD6GEeEcTw6KePSdtAJh0DJs/LZDOJxOPJyfgOJlZBAYlO9w8JOUIi7eFw1rq4nD579t69e9hel69fp+fmrg8KUuT+bNzcCsrK0svLfxUI1vJ4RD6/HncHubiycq+3t5Wb23MtM8zBhIhBWyb/999TLl9WXGQilRcZdmGhX16e4iLjmZKyh8U6SCJRuNwajcGUeZcu2bNYS2k0VmLiH8oWTVlNzZH4+OfGrvgyfdMm4KGuGAtooTmmC2EuDGZasfMymeKL/ik4mFVYGCQS8YqLmQUFPufONTY1QQibm5uxIKWjoyOnqsozNbU39+fvv4LDWcZkLmUy7Wg0/L0Fs8nkI2Fhl377DXujpqYmMocz7+BB67NnB2aZjkhnsY0dVmTFuOeKCZqPq27vXN9PXHQrRoJt6Rij3ms2aESy3mrU1jvaSSI18wfYBgZm0JaJFouTq6sTqqp0jWI4lZZ2NjPTJzPTKz1d0XJ2TUjYHxu7l893jo5eFxCAdTDZkMmOoaEOwcFDyMnNOHkyOCl4mnwa3jL74X5DHCOE8cEsowhmHcPDCRkZila5b0iI2sZtbW0ZOTmnOZytJNL6gIC1yjuYFPcWaF69ZhKJPwcGZinb6c86O9MrKpYzGAO3DKaAYoLYhtCMPa78G0LY7IV73EsEtW2Dp9lL1UG3YiTKvYbKsC1zK0bSvxYHyKAtEyISaY5iYKqNYkhOPpKYeDA+fm9s7FYeb/H27WfJ5LDo6J9PnVri47OMyVzo5/c/V9dFzs6aZdnBg2uJxHnK4VK6ynwSqba2thE27oV7v4Bf2ELbQBio1pmNGLngLYOVZSzWz5GR7gIBt6iIVVjol5dHzsk5m5V1OiPDMzX1RHLysaSkrWFha5T3Fiyk0eZQKP10MK3lcDwEgoV+foNpMalYBvc7bPbS+ktWsQyEIpnW3y3OVvrjuaGK2VrmaGIifhQDlvpVjGI4nZ7uKRQqbmDbymCscXYOj4zs7OxU7CuXy1NEolU83gIKZed+9bjj0ePHjJSU3TEx/X/rimJPoeTk5Az74yPMFK2WwcocCmU5m/1TcLBjeLhzVNQvMTE/R0RsxYZ98njYsE9bCkX7i7jaT8YPO/7W0ZroOm1q3wNTHAdiGbxBmr3sxNqijwFYRles0fdsbzMKHxN5ibC2GH7fZi9sY4LWWEbbBtreBdf6wwyI23cwcdagLbOaxzuVnq42iuEYg3GUTHaPilKMYtjo7b19//78/Hxsr0dPniSUlu6OiVGMYpi1YcOT1taHjx+nlJbml5VhmzU1NVE4nHmHDulqJGNlNZWakpIy2MojRgr9W0a9BUQi2VIo83x9F9JoC2i0BTTafBptrq+vLYWiM9nnaj8ZgMn2rtZE4pf2UwGYOm27/WQwdZor0ZpI/ORbAMC3nwwkL4MLQHqzKuohibqJtCRc+o0pimOUVurbTFGHXnEUE7CmlroBNSyjYwPt76IWy+D27V+LGgzaMqu43JlEoktsbFhZGTaKgZKWVvPbb/fu3Ys+d+4UgaC4BU7B9du3AwsLt0VEYBeZRXT6weDg3TExWOfReg6Hn5n5THkjbE9PT2Jy8o9ubv87dQpZZmwyKMsMpeAs88m3QGGZacr4pfcR14G1mFQEobza97kGbyUdv8wBZmG1y0LxuKxY83U08zK6NtD+LqqWUdlYtQLPYyiWUXwTSxmMEykpPGUHk1dAgFzj5qP49PQfT57c5O+/MTj4h4CA1f3eW7CMTmcmJDxo7rsU1Fy9eiAkBFlmDGIcyyjpFYrKU1Ptv3x+iwnqSMfgU7l9sQwu6FClv9BArUurzzJ9bRalZdTTKBqW0bmB9ndR2R7f/zXYXrChW0ZRFtJoOyIjvdPTydnZMZmZ+ZWVeWJxTkVFTkVFdnl5ZllZmkhEj4vbGx6uuLfAnsWyU3Ywaf3651IoJ6OiLkulyWVl+8+d03WjE7LM6MZ4sYzjt0AZ1ODs09tcGqpl1OOO57SY+gkNRGqpk/4sM/RYRvu7aMQyQ80ED9cyWLHz89sQGOgcHX0oPh7rYMJmSMSPYtA6Q+JgC7LM6MYELSZXRYKmL4oZiGX6foe19Y6q/dD4MEEl+6vTSio5nWKC2Euk8vsvJjwnllG1mKLtppaX0bGB9ndRs5KKIosJgxhoozfL4MtsMnkxnb6czV7F5a7h8dbweKu53JVc7ndstmKg1BwKZdbwzhJkmdGNMS1jTXScAgAAb6vNs6N4dhCj8nDdNGopDFyPTEeks66xeSqvrDLERvFIzPNiGZU6yIq1jpfRuoH2d4HqaSYtvV0DwiCWMUJBlhndyJqaTH6OKcopNhvdYTBMkGUQ5ogcwlWDnwtG72UhmczmcvW+BsNYA1kGYabU3LkzZ3jJu2GW2SSSN5vt7++P3eiLGBrIMgjzJTE3117X4F0Dl8Vksg+bzePxSktLTX0YRjzIMgjzRS6XFxYVudDpC3QMaDBEmUci7aHTOTwej8crKirSHAWGGCyDtswPAQEmV4w1kbgGWWbMIJPJwsLD3VmsNVTqMLsm+ykzicTVVOoRJpPN4/F4vIiICGzVJ8QwGbRlCJmZJleMNZG4w88vJSVFCqXfw+/fgG/8Hf7dHbo/g2ixrtFJV1eXRCLh8/lMLvc4k7mVRrMf9mAIhVmWUSibabSjTKYfRxG+8Ph8vkQi6erqMvWHHj0M2jK3HjyYZ6KmMlamnzjxfx984LDP4fWe1/Hzy6yD6wxxjBDmQ0NDg0gk4vP5PB6PzeX6sNmuTOYuOn0zjbaWSl1GoSwgk+eSSDaqJ8xsInE+ibSUQllFpTr4+jr7+R1mME6z2SxeH3w+XyQSNeAm00Poi6HM+ysoLp5nxHayWllIJm/du/fTTz+1cLfQnJHzMrys92OEMENaW1tlMplIJBIKheHh4TwNuDwem0jkWlrytm/XfJbH44WHhwuFQpFIJJPJUC+SQRni7OLJmZkOvr5G9stMInErjcbgcnk8nlgsnvN0jqZlomCU3o8Rwvzp6upqaWmpq6uTSqUSiaSqqkosFpfn55cCUO7uLhaLq6qqJBKJVCqtq6traWlBDSJjMsSVUhRrNhK53C00mo3h/WJLIm2l0cgcDo/HCw4Ovnr1KoRwO9yuaZlPf/40KCgIXZoQEELY0wMBgH5+pq7HWGdYq761tLRkZ2czuNwjDIaDr+9cfY+hmk8iOfj6ujGZLC6Xx+MFBAQUFRW1tbUp3v0yvDwRTsQr5oN7H8yYOQMAMGnSJEdHR5FIhLohxzp/+hM8c8bUlRjr6GEF20ePHpWXl0dHR3N5PAKbfZjBcPLzW0mhzCeRBrum3wIyeTWVus3Pz5XJJHI4XGUT+ty5cxcvXtRcfCsbZv8D/kOxesEKuKIRNkIIr169eujQobfffhsA8PHHH589exal9MYub7wB3dxMXYmxjn7WyVZw//796urq9PT0sLAwhR3YXC6Fw/Fms91ZLFcG4yCDsY/B2E2n/+Lnt4dO30enuzKZbkymF4tF4ig7EpVERkZmZ2dLJJJHjx7186ZyKK+H9Y+g+jadnZ0CgeC7774bN27c+PHjly9fnpycjFrjY46//Q26uJi6EmMdfVoGT2tr6+3bty9fvlxSUpKVlSUQCPh8fnh4eFBQUEBAgMIjAQEBQUFBERERfD4/OTk5Ozu7tLRUIpHU1dXpcc3Qu3fvEgiEjz76CAAwZcqUw4cP//777/p6cYS5869/QScnU1dirGMoyxgNKdVKY2FCPL1Ljcnl8pKSkq1bt06aNAkAYG1tHRQU9OTJE+NWFmF0pk+H69ebuhJjnZFuGdX1UmGvdfqUI3RSERBuvVRFknjr1q0lJSUoSTxqsbWFy5ebuhJjnVFlGcwhmFdUJdO3sZRqBcDnc50OT5kyBQDw0UcfEQgElCQehSxdCufPN3Ulxjoj2zJ9oYmKV7D/SalWapJR/lf5d1dXl0AgWL58+fjx48eNG/fdd98lJSWhJPHooAf2VByZn737kwfwganrMqYZ2ZbR0mLCq0RVMhpPqezY0NBw9uxZLEl86NAhxdg/xAhFCqX/hv9WDKR6Eb7oC31NXaOxy2i2jJRqpfKctlhGDUWS2NHRUZEknjFjRkBAAEoSjzi6Yfe/4L/UxoWnwTRT12uMMootoy4Z9efUnlSltbU1KCho5syZAICXX355y5Yt58+fR0nikUIxLNa8+2QlXGnqeo1RxHNvPwAAGklJREFURpVlVHqQnH510vQIbgtdXd9q/P77766uru+88w4A4MMPP/Tx8bl7966ePwRC3yTDZE3L2EJbU9drjDLSLaMboRbJDJmurq7k5OQVK1YoksT29vZJSUmdnZ16enmEnqmH9ePheDXLHIPHTF2vMcrotYxhaGhoIBKJH3/8MQDg7bffPnjw4G+//WbqSiG0cAqewivmH/AfzbD5+bshDACyzFCQy+WlpaXbtm3785//DACwsrLy9/d//Pixqes1xjh3DlZU9PN8PIy3r/1iVgE42rZ3GJ3Zeo2KxyTIMsOitbU1ODh41qxZiiTx5s2b0az3xkMRpty50982iYkQADjQZduU96vgM3e6h48PMLWHQJbRD9euXTty5IgiSfzPf/7zzJkz9fX1pq7UaOeddyAA8Jtv4NOnOrfJyoIAQIlkQC+I65bE+iP7HT6OYpwBgSyjT7q6ulJSUr7//ntFknjZsmWJiYkoSWwobGzgm2/C8ePh1q1QV/woEkEAYHm5jpdQjUykVKrKGHIrqvT5w8cRzwVZxiDcu3ePRCL961//AgC89dZbBw4cqKmpMXWlRh2LF8MFCyCDAQGATKb2baqrIQAwL0/rkzpFoWg5aUim/+HjCF0gyxgQRZLYyclJkST+3//+h5LE+mTNGjhjBpTL4ebNcPx4WFSkZRuZDAIAdS0QiMvD9Pmi90En4ZCGjyM0QZYxBq2trSEhITY2NgCAl156adOmTShJrAc2b4affQYhhB0dcPp0+PbbWjLBDQ0QABgT0+8L9YUlvYbpNcuwho8jMJBljIpUKj169Ohf//pXAMA//vGP06dPoyTx0Nm1C/7jH71/19bCt97Skgl+8gQCAAMCtL4ALitjRZWqTz8EAHgbfDH84eMIZBkT0NXVlZqaunLlygkTJowbN27p0qXx8fEoSTxoDh+G77zT99/CQi2ZYMViKTTaUF4fDZTRE8gypqSxsZFMJn/yySeKJPH+/fslA+xzRUAIT56EkyerPKI1E/ynP8HTp41ZL4QayDKmRy6Xl5WVbd++ffLkyQCAb7/9lsvl9r9yAwJCCEkkOG6cSuSiNRP85ptosRTTgixjRrS1tYWGhmJJ4o0bNxYWFqIksU44HAiAeiJGMxM8dSpaLMW0IMuYI1Kp9NixY++++y4A4IMPPvD29q6rqzN1pcyP8HAIAHygcYOSWib4k0/QYimmBVnGfOnu7hYKhatWrZowYYKlpeWSJUvi4+OfPXtm6nqZDQkJEAB4+7aWp/CZ4OnT4Y8/Gr1yiD6QZUYAjY2NFArl3//+NwDgzTff3Ldv35UrV0xdKTMgMxMCAHUNqsYywba28LvvjFszhArIMiMGuVxeXl7+888/K5LE33zzDYfDGdNJ4vPnIQA6J3/AMsGvvgrnzTNuzRAqIMuMPNra2sLCwmxtbQEAf/rTnxwcHPLz80dXknhgI1UuXoQAwPx8nRsoMsEAwPff12v1EIMDWWYEc/36dTc3t//7v/9TJIm9vLzu9D/ZitmhbT4XqDrbQj9jbaVSCABMTe3vHWpre6ehQZgOdPRHPN3d3WlpaatXr1YkiRcvXnzu3LmRkSTWNp8LVJGMzvlcGmDDnrZt35QCu7uf8SFfDnWHclVVOu+WRBgFZJnRQ1NTE5VK/c9//gMAeOONN1xcXMwvSfzc+VygymJ9Ou6BboAN78P38dP6ekEvU3wcxIAwomVUomP8ja3o5jN9IpfLKyoqduzY8Ze//AUAMH36dDab/fDhQ1PXC8KBzOcCVVcE1TGfyz64T219gglwQiNsNNoHQQwKY1tGJfrNwgXBaLYOfdPW1hYeHo4liX/66SfTJ4mfN58LVJttQUcsMwPO0FxuKR2mG/3zIAaEaSzTGx5n9U3mIaVaIckYCJlM5u7urkgS/7//9/9OnTpVW1tr0hrpms8Fakzpon0+l+/gd5qWqYSVpvgsiOdjqhaT8kTCP4gkY0i6u7vT09OxJPGiRYtiY2ONnCR+7nwuVlR/9T5sbX1MKTBFTTFfwi97YI8xPwti4JgilsESfRrxMJrNwwg0NTX5+vr+97//VSSJ9+7dW11dbepKKRnwlC40SPsT/JNCMdPh9Fvw1nDfWiSzsRN7iYb7MoahI9JZbGOnLM712KctJuAet5NEmjZI1YFJW0z+epmrudkLd9AhhLC23lHtESW3YiS9p5HubTCKCWZ7zukBuVwuFoudnZ0VSeKvv/6axWKZSZJ4gDyEDwucPrrsurS/buwBU0wQOzpLbAimWX/yVozEpr8TsiPSGTsbOyKdxVg9iwlix5iOvhexkxUbuKpDwDSWUcbBTr/iQ+Yhtpg0LKPylaiAWeZWjAT7bnShbhmRzFSnoEFpb2+PiIiYO3cuAODFF1/csGFDbm5uT89QWh/K5q+uL9IAc8/Nng1XrNDD69TWO9rJihX/6uHlBs1gLAOhSIZtjLcMhM1eZhmOjYLxMkrLiGS40LGvOMZ0YJGL0jLNXrpiS10v4tz/STAauHHjxvHjx9977z0AwLRp0zw9PQeZJO4bQdeLWkrfEIs0LlkCFywY6s593IpRRDFq1yfFf7HWiuKcUQkloKogbsVIlOeM0la19Y7Ks0hFE4oHCc1QrdWj/UqGLGM68F8P3ibYs71fgKplcKeC6u4aL+4lgppn1eimu7s7IyNj7dq1EydOtLS0tLOzi42NfdrP4o19qFgGc4gTftyd3hdpXLMGWlkNaU88fb9h1ZhC4ZfeC1IxQZkQEclwDZO+H3YxQUUukYoHY5Svhu1VW++IXeRE9Yo/BhPLNHvhTlf1FpNZXgtHtmUghOotJpFMcdBV2kQqlmn2UsmfdUQ6954Zqok0HcUsv0VDcP/+fRqN9umnnwIAXn/99T179vSfJO4LTVS8gv3PMIs0bt4MP/10SHviwDeU8AqAHZHOYpWzqHcz3G8eCytUdtT1LpLI2t7oRi3iGIhltKZ4VU5acz05R41lVJPwal7AW4YgsyHUY2bRltbpReXSNFaRy+WVlZU7d+585ZVXAABfffUVk8lsaWnRtq1Gi0l95K4BFmnctQt+8MFQdsSheXVRmkW1nYKTkbKFhQslVAIcDLXTEgthZGoRtKplmr36dlH3Wl9Ipaz8czOMJmdUWAbfDNbaNFXPy+Ayu5o5XR2pGbO9UBiH9vb2yMhILEm8fv36nJwc1SRxf5Yx1CKNrq4qi6UMBY0Tpi/rodMyvYGJSFcQhHupfjbABTV6aTGZLQa3THdPz/3W1qra2pTLl0PLyuh5eaczMk4Khe7JyW4CgXty8imhkJyTE1xamlFTI21s7OzuHviL914onOtvqehftRCaNS0Da+sdldcilQ5CO7GNs0RLJ/cAer7HCDdv3jxx4sT7778PAPj73/9+8uTJ271zYvZjGYMt0ujpqb5YymDREoNg3tFtGSwC6rtEdUQ64y5FirwM7sWLCcpYRiTDn3J9V7v+AmeN7C8uWzQWLdPe2Smpr48Wi0k5OSeSk48mJh6Ij98bG+scFeUUHr45JGRDUNA6f/8VHM5SJnOhn99cKtWGRLImErEyh0JZweHsiY0NFonqtQfneHBNHpXApNmr3zx/MUHsRZBpuYDgNkaxjC66u7szMzMVSWILC4uFCxfGxBzZqi37qxyxoOERvfQxkcnqi6UMkmKCltS+8sH+LIP/qavsqHK29LWYvGKwWAbXjFI5XQfcx4Qz2tiyTFNra2ZNDbuw0MXXd8u+fR4UyoGgIHeBwDUh4UBc3B4+3zky0jEsbFNIyPrAwDU83goOZwmDYefnN4dKtSYQFp88udjFZeHOnerll1+W0Gg7o6Jyr17V8c6YZfA9jqphsPKE6ItllJ2OWrr9tIYtKJbRwYMHD/z8/D777DMAwGuvvbZ79+5Lly6pb6SPgTLag2IOx/2XX9wSE4cZFA8Bs+3QMUOGa5keubzm7t3I8vKgkhJaVpYPjSaTyRRPNTc3B0VE7CIQ9kRH7+bzd+Ass5rHW85mL2YwFtBocygUayJxFom0OTj4OIcjvX5d7S0iU1MVMc5cKvVUWlqb+q036unbvuuJxmUBN16m71KgHqmiWGZIXLhwAUsSf/nllwwGQ0eSeKAYPSgeFGY6MsU8GZZlaltazl24EFVREVJa6n/+PLuwkJGfH5adXana5VlWVuZBpTqQyVtDQzcGB69lsWwPHVpBJi+m0+f7+tpSKFZnznzq4OBy9Ch+/daWR4/iCwulf/wBIdzBZGKnjg2ZzC4sVGzT1zbWPfYJH0/29jGpB7rNXngloVhmGHR0dERFRc2bN0+RJP7xxx/xSeIG2OAG3VbAFXvgnqtQe3BquqB4oCjOOvNvp5gPQ7SMHMLC69cTL17ki8UR5eUhIhGvuJhdWEjLyyNnZ/tkZvplZaUWFLS3t2O7PHnyJDQq6rCHR1RUVP3du8cFgkV0+swTJ2Y7OPgxGPg7aGpu3vROTZ1LpSq0siEgwCM2Fn+NsiYSHYKCuoY0Ch5hHPBJ4qlTp/76669FdUVT4BTsLuoX4Yv5sG9icDMIihGGYoiWyb92Lbm6Or6qKkYsDi8vDxaJeMXFrIICWm4uKTvbJyPDUyg8LhDs5fEoXG5Hh7r1UysrlzGZq93cMjIzsXmVuru7Myord0ZFqQlFV9kWETGsj44wPD09PVlZWevWrXvhhRdArPqMMB/CDxU3Opo8KEYYlKFYprm1NfXyZcGlS3EXLkRXVISXlQWJRNyiIkZ+vm9uLikr60xGxvG4OI/AwECBIFcsLrhwIb+yMq+yMlcszq6oyLpwYX1Q0FIm087P7+eQkMCUlKs3bgTl5X3P4QzQL1i51ogmYRwZPHjwYFL7JM2pp+rhXRQUj3qGYhnRjRvCK1eSLl1SXH/CysoCS0oUlqHm5BCzsrzT00+mproLBIcTEg7Exe3m850jI9eSycv37VtJJq/h8Zaz2UsYjIU02hwqdeYgzYIvZ+Lj9X5EEAZiKpyqbhk5YKcJUFA86hmKZc7LZMnV1YkXL8ZWVkZWVISWlgacP88pKqLn5VGys89mZXmnpf2amuomEBxOSNgfF7fa03PT7t0ZmZkQwoaGhoCIiF3+/osZjLlnzzru2hURFYUvfIEgID7+EJe7ytd3lmqXgWZxZbHwVzmEOXMMHlNvMRX9J6W6GgXFo54hWuZoUlLixYv8ysqI8nJFW5qZn09ISaHk5BAyM73S0jxSUo4mJKx2dd1/7Bh+vY6m5ubI4uJNoaGL6XTbDRs0b/Y9X1a26sgRK2/vgZwc7kzmrVuo52dk8BQ+XQVXYYqZDqdn3ahGQfFYYIiWmUkkHk9OxrelWQUFJDrdPyTkCIm0h8NZ6+Jy+uzZe/fuYXtdvn6dnpu7PihoJZdrz2LZuLkVlJWll5f/KhCs5fGIfH59QwO2sbiycq+3t5Wb23Mtc+PGDT0cBoSxqIJVYTCsEBb2wB6zCoqvhV/uZxqQQaN1ngetG4wBhmgZxXfzU3Awq7AwSCTiFRczCwp8zp1rbGqCEDY3N2NBSkdHR05VlWdq6uaQkJ+Uw6iWMZlLmUw7Gg0/jGo2mXwkLOzSb79hb9TU1ETmcOYdPGh99uxzLSOH8hpYUwSLWqB+x18hDIXZBMWhq+3ENo41WFSMHyM+RIZtmdE0tnhYlrEmEm3IZMfwcEJGhiLK9Q0JUdu4ra0t4/+3d+4xTaVpGG+IBoJkiIYEJSTIhmgYiQ5KCKyIoky1snY1OKhDZBiLBAd1mSWsrIRZRpcVsTcOt9LDRaGAFgXlUlBAkKItUASUKghFQItcBARRsqD99o9uoZdTFOgpl/l++f4gcOCQc06ePu/br89bXn4pKYlCo3mnpBxRbNaUb6PSfJHZQaUGpKaWPnok//X/TkyU1NUdjI+fWWWkQDo1o8cIGNEAbZ7XBaIHFokp3uEr2km5rmNT/EWrAlVmZpRVZmodSEwMyMoKz89n8/mJVVWxFRX08vIrpaWX7t69WFT0r4KCsDt3KBkZXoptVHsRZDeDMUMtfSQpKSI/f29s7BcrJhmQOQNntc5iHsjT+cWCzJkO0HECnNgMNrsD9xyQI//mojDFv99y3ffgp2gtpTfGnnLMmE4508EAkdGYXgbrAKyzYGV0Kv3uUvtkg85UZmrtZjAOsljHr17143B+yc4+c+NGQGYmJT39p2vXfkxJ+QFF/8pi7Y+LIyKIG4Mx53adfJFOnAgODg5KDtLciGHXbZecnJyamnrt2rWMjIysrKwbN27k5OTk5ubeuXOnoKCAx+OVlJSUlpbev3+/srKSz+c/evRIKBTW1dXV19c3NjY+ffpULBa3tLS0tbVJJJLOzs7u7m6pVNrb29vf3z84OPju3bvR0dEPHz6Mj49PTEx8/vx5gSc3LlY6QIcZMFO+O1RABYvEFP+jeOe+4lNaGnwYeZraYjpVgvXkx6ipjJYDsM+CkQ06HS+7WCeiaEP3KqN+s2k0NwbDPSZmL4IQEYSIIN8jyJ6YGDcG44s9uS8ui23bVq1aZbTPSFNlCHWEBcHAwGDlypWGhobGxsYmJiampqZr1qwxMzMzNze3sLCwtLS0srKytra2sbHZuHGjra2tnZ3dli1b7O3tHRwcHB0dnZ2dXVxcXF1d3dzc3N3diUQiiUTy8PAgk8mHDh3y9PT08vI6duyYt7e3j4+Pr68vhULx9/cPCAgIDAw8e/ZsUFBQcHBwSEhIaGhoWFhYeHh4RETExYsXIyMjo6KioqOjaTQak8lEECQ+Pp7FYrHZ7JSUlLS0tPT09MzMzOzsbC6Xe+vWrby8vPz8/MLCwuLi4nv37pWVlVVUVFRVVVVXVwsEgpqaGpFI1NDQ0NTU1Nzc/Pz589bW1vb29o6Ojq6urtevX/f09PT19b19+3ZoaGhkZOT4xHG1u2MEjN6Bd4vCFM+oMtNgi4VSHIRaBaTZl9F2APZZVFVG5WDVf2ApgLvK4LrkFdMgGDQEhmrP8alPpz5+/Pj+/fuRkZGhoaGBgYG+vr6enp5Xr151dXV1dHS0t7e3trY+e/asubm5qanp8ePHIpGopqZGIBBUV1c/ePCgoqKirKzs7t27xcXFhYWF+fn5eXl5N2/e5HK52dnZHA4nPT09LS0tJSWFzWYnJibGx8cjCMJgMGg0WnR0dFRUVGRk5IULFyIiIsLDw8+fPx8aGhoSEhIcHBwUFHTmzJnAwMCAgICTJ09SKBRfX18fHx9vb++jR496eXl5enoePHiQTCZ7eHiQSCQikbhnzx43NzdXV9ft27c7Ozs7Ojo6ODjY29tv3rzZzs7O1tZ2w4YNNjY21tbWVlZWlpaW69atMzc3NzMzW716tampqYmJibGxsaGh4YoVKwwMDPQtvU0arwGAsHLXyrXffTfDzdWTKZ6pYsLM08QOnVFvo2iojNYDtKR2ahmNoLt3wfTIclAZAMAVcEX5CbYAFlIg1fW1Wj7IZLJPnz5NTEyMj4+PjY2Njo4ODw8PDg729/e/efNGKpV2d3e/fPlSIpG8ePGipaVFLBY/efKksbGxvr6+trZWKBQ+fPiQz+dXVlaWl5eXlpaWlJQUFRUVFBTcvn07Nzc3Jyfn+vXrWVlZGRkZV69e/Vb6rabKnEPP/T06+uvvNW6mONH1sGj/r2kYKoOdp6kl2mrOXkZLaqe6l1nKneBlojIAgFyQSwIkB+BwGpyGEqNz5jPR7Sa4qSYx7sAdLJ4H6fdb+/eJdv42nQjx/5xWzDxNrQF6ynG8SlnU08Kh5QDss2DMY1HK+l1iG22Wj8pA8EQp0xczSVN52BLWAXRANwbGcokhAuIAGAB6e5BCyd8ol29OftvI69VrOpfwWL/pekQ9ClojT1N75Lhi8ADmfhnMA7DPAtQzOjETlJYIUGUgX8OUymBPa1MSGa3j3EbBqBAIX4KXU39UnyrzDTnUhUrdRl5PIKz/U+j0Tzc5EQgEwtZA+CDhyFxURjIwsOD6Il//ZrHgw6EHpt0JiUTAmHCiNGxpNiNQ9K8ym5wIKirj5yR3N/DlClfmojIyAA7P/mOvOl976XQWm93Z2anziwLRQOFQMKe1KU90m804t4WomJSNjN9aAoFAcNoETTHOzDEr79nr17vnvdtlPmsXjfYfFis5ObnpstOcu5KQrwZLZRRfqwxbmo2X0ZMpnvIyfk4EhalxUdRKa/2oLtAU48zc08Vv379Pnvfm3bmt/XT6ZRYLRVGhkKEyaUyz76g6Al43M4D+iKj0ZVSntalNdJvFODc9mWLMiklRK7lAU4w/c1cZmUxWxef/GhdHpNP1pi/uNNrf4uKSUBRFUT6fL5MVKakMRt9RVWS0NiYhX2KG95g03OJspFwfplhJZRRV0npjRa00ZYrHxsZwu3p/dOY7j0kikWRwOOGJiV5MpituD8oOKvUHJvOfCQksFEVRNDMzUx5wP/08+/OwvLrqCHhdzWaGKDPvknRxmGKhzi4IRAMdzJacnJwUi8VcLjeBzf4tIYGCIGQGY/6Ks4NKPcBg/Iwg5xMSYpPk9gXlcrlisXhyclJxcvXXWJW+Y1jYnzXKpa9sTEL0xuIwxfBjrjiiyznZvb29AoGAy+WiKMpisy+zWKEJCafj4n5GkCNM5gEGg0in76HRdqre711U6vc02l8YjMNMpk9MzC+xsefi4y+xWInoNFwuVyAQ9CrlhijQojI8fwKBcNRfdQQ89DKLmIU1xRBc0aXKTDE2NiaRSAQCAY/H43A4qAZsFGWx2WzNHyjgcDg8Hk8gEEgkkhkLZp5aX0ap77j10FashsHXNSYh+mdBTTEER3BRGTUmJyeHh4elUmlbW5tYLG5oaBCJRPIP3dXW1sozBMRicVtbm1QqHR4ens2952l/jwmrYQDfY1oKLIQphuCIPlRmYYAbZZY+ejTFEBxZvioDWXbgaYohOAJVBgKB4AtUGQgEgi9QZSAQCL5AlYFAIPgCVQYCgeALVBkIBIIvUGUgEAi+QJWBQCD48j/IarO5POvoogAAAABJRU5ErkJggg==" alt="" />

配置接口以及IGP(OSPF)

R1:
int f0/
ip add 1.1.1.1 255.255.255.0
no shut
exit
int l0
ip add 11.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.1 255.255.255.0
no shut
exit router ospf
router-id 11.1.1.1
network 1.1.1.0 0.0.0.255 area
network 11.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
exit R2:
int f0/
ip add 1.1.1.2 255.255.255.0
no shut
exit
int l0
ip add 22.1.1.1 255.255.255.0
exit
int s2/
ip add 27.1.1.2 255.255.255.0
no shut
exit router ospf
router-id 22.1.1.1
network 1.1.1.0 0.0.0.255 area
network 22.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit R3:
int f0/
ip add 1.1.1.3 255.255.255.0
no shut
exit
int l0
ip add 33.1.1.1 255.255.255.0
exit
int f1/
ip add 35.1.1.3 255.255.255.0
no shut
exit router ospf
router-id 33.1.1.1
network 1.1.1.0 0.0.0.255 area
network 33.1.1.0 0.0.0.255 area
network 35.1.1.0 0.0.0.255 area
exit R4:
int f0/
ip add 1.1.1.4 255.255.255.0
no shut
exit
int l0
ip add 44.1.1.1 255.255.255.0
exit router ospf
router-id 44.1.1.1
network 1.1.1.0 0.0.0.255 area
network 44.1.1.0 0.0.0.255 area
exit R5:
int f1/
ip add 35.1.1.5 255.255.255.0
no shut
exit
int l0
ip add 55.1.1.1 255.255.255.0
exit router ospf
router-id 55.1.1.1
network 35.1.1.0 0.0.0.255 area
network 55.1.1.0 0.0.0.255 area
exit R7:
int f0/
ip add 78.1.1.7 255.255.255.0
no shut
exit
int f1/
ip add 17.1.1.7 255.255.255.0
no shut
exit
int s2/
ip add 27.1.1.7 255.255.255.0
no shut
exit
int l0
ip add 77.1.1.1 255.255.255.0
exit R8:
int f0/
ip add 78.1.1.8 255.255.255.0
no shut
exit
int l0
ip add 88.1.1.1 255.255.255.0
exit router ospf
router-id 88.1.1.1
network 78.1.1.0 0.0.0.255 area
network 88.1.1.0 0.0.0.255 area
exit

配置PIM Sparse-Mode(除组播源及接受者外)

R1:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R2:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit R3:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R4:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit R7:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit

配置Anycast RP
-------------------------------------------------
R2:
show ip pim int
show ip pim neighbor

R3/R7:
int l1
ip add 3.3.3.3 255.255.255.255
exit
router ospf 1
network 3.3.3.3 0.0.0.0 area 0
exit

int l1
ip pim sparse-mode
exit

R2:
ip pim bsr-candidate l0

R3/R7:
ip pim rp-candidate l1

R3:
ip msdp peer 77.1.1.1 connect-source l0

R7:
ip msdp peer 33.1.1.1 connect-source l0

show ip msdp summary

R8:
int f0/0
ip igmp join-group 224.100.100.100
exit

R5:
ping 224.100.100.100 repeat 5

R3/R7:
show ip mroute

8.域间组播
-----------------------------------------------------------------------------------------------------

aaarticlea/png;base64,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" alt="" />

配置接口以及IGP(OSPF)

R4:
int l0
ip add 44.1.1.1 255.255.255.0
exit
int f1/
ip add 46.1.1.4 255.255.255.0
no shut
exit
int f0/
ip add 14.1.1.4 255.255.255.0
no shut
exit router ospf
router-id 44.1.1.1
network 44.1.1.0 0.0.0.255 area
network 46.1.1.0 0.0.0.255 area
exit R6:
int l0
ip add 66.1.1.1 255.255.255.0
exit
int f1/
ip add 46.1.1.6 255.255.255.0
no shut
exit
int f0/
ip add 36.1.1.6 255.255.255.0
no shut
exit router ospf
router-id 66.1.1.1
network 66.1.1.0 0.0.0.255 area
network 46.1.1.0 0.0.0.255 area
network 36.1.1.0 0.0.0.255 area
exit R3:
int l0
ip add 33.1.1.1 255.255.255.0
exit
int f0/
ip add 36.1.1.3 255.255.255.0
no shut
exit router ospf
router-id 33.1.1.1
network 33.1.1.0 0.0.0.255 area
network 36.1.1.0 0.0.0.255 area
exit

配置接口以及IGP(OSPF)

R1:
int l0
ip add 11.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.1 255.255.255.0
no shut
exit
int f0/
ip add 18.1.1.1 255.255.255.0
no shut
exit
int f0/
ip add 14.1.1.1 255.255.255.0
no shut
exit router ospf
router-id 11.1.1.1
network 11.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
network 18.1.1.0 0.0.0.255 area
exit R8:
int l0
ip add 88.1.1.1 255.255.255.0
exit
int f0/
ip add 18.1.1.8 255.255.255.0
no shut
exit router ospf
router-id 88.1.1.1
network 88.1.1.0 0.0.0.255 area
network 18.1.1.0 0.0.0.255 area
exit R7:
int l0
ip add 77.1.1.1 255.255.255.0
exit
int f1/
ip add 17.1.1.7 255.255.255.0
no shut
exit
int s2/
ip add 27.1.1.7 255.255.255.0
no shut
exit router ospf
router-id 77.1.1.1
network 77.1.1.0 0.0.0.255 area
network 17.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit R2:
int l0
ip add 22.1.1.1 255.255.255.0
exit
int s2/
ip add 27.1.1.2 255.255.255.0
no shut
exit router ospf
router-id 22.1.1.1
network 22.1.1.0 0.0.0.255 area
network 27.1.1.0 0.0.0.255 area
exit

配置AS 200 Pim Sparse-Mode

R4:
ip multicast-routing
int f1/
ip pim sparse-mode
exit
int l0
ip pim sparse-mode
exit R6:
ip multicast-routing
int f1/
ip pim sparse-dense-mode
exit
int f0/
ip pim sparse-dense-mode
exit
int l0
ip pim sparse-dense-mode
exit ip pim send-rp-announce l0 scope
ip pim send-rp-discovery l0 scope R3:
ip multicast-routing
int f0/
ip pim sparse-mode
exit
int l0
ip pim sparse-mode
exit

R4:

show ip pim rp mapping

R3:
int f0/1
ip igmp join-group 228.1.1.1
exit

R6:
show ip mroute

配置AS 100 Pim Sparse-Mode

R1:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit R8:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int f0/
ip pim sparse-mode
exit R7:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit
int f1/
ip pim sparse-mode
exit ip pim bsr-candidate l0
ip pim rp-candidate l0 R2:
ip multicast-routing
int l0
ip pim sparse-mode
exit
int s2/
ip pim sparse-mode
exit

R1:
show ip pim rp mapping

R2:
int s2/0
ip igmp join-group 228.1.1.1
exit

R7:
show ip mroute

MSDP Peer的配置
----------------------------------------------
R4:
router bgp 200
bgp router-id 44.1.1.1
neighbor 14.1.1.1 remote-as 100
neighbor 66.1.1.1 remote-as 200
neighbor 66.1.1.1 update-source l0
neighbor 66.1.1.1 next-hop-self
exit

R6:
router bgp 200
bgp router-id 66.1.1.1
neighbor 44.1.1.1 remote-as 200
neighbor 44.1.1.1 update-source l0
neighbor 33.1.1.1 remote-as 200
neighbor 33.1.1.1 update-source l0
neighbor 33.1.1.1 route-reflector-client
network 66.1.1.0 mask 255.255.255.0
exit

R3:
router bgp 200
bgp router-id 33.1.1.1
neighbor 66.1.1.1 remote-as 200
neighbor 66.1.1.1 update-source l0
exit

R1:
router bgp 100
bgp router-id 11.1.1.1
neighbor 14.1.1.4 remote-as 200
neighbor 77.1.1.1 remote-as 100
neighbor 77.1.1.1 update-source l0
neighbor 77.1.1.1 next-hop-self
exit

R7:
router bgp 100
bgp router-id 77.1.1.1
neighbor 11.1.1.1 remote-as 100
neighbor 11.1.1.1 update-source l0
network 77.1.1.0 mask 255.255.255.0
exit

R6:
ip msdp peer 77.1.1.1 connect-source l0

R7:
ip msdp peer 66.1.1.1 connect-source l0

R6/R7:
show ip msdp peer
show tcp brief

R3:
debug ip icmp

R8:
ping 228.1.1.1 repeat 3

R1:
int f0/0
ip pim sparse-mode
ip pim bsr-border
exit

R4:
int f0/0
ip pim sparse-mode
ip pim bsr-border
exit

R1:
router bgp 100
network 18.1.1.0 mask 255.255.255.0
exit

R6:
show ip route bgp
show ip msdp sa-cache
show ip mroute

R4:
show ip mroute

---------------------------------------------------------------------------------------
R1:
router bgp 100
no network 18.1.1.0 mask 255.255.255.0
address-family ipv4 multicast
neighbor 14.1.1.4 activate
network 18.1.1.0 mask 255.255.255.0
exit
exit

R4:
router bgp 200
address-family ipv4 multicast
neighbor 14.1.1.1 activate
neighbor 66.1.1.1 activate
exit
exit

R6:
router bgp 200
address-family ipv4 multicast
neighbor 44.1.1.1 activate
exit
exit

show ip bgp ipv4 multicast

R3:
debug ip icmp

R8:
ping 228.1.1.1 repeat 3

R1:
int f0/0
no ip pim sparse-mode
exit

int tunnel 0
ip add 41.1.1.1 255.255.255.0
tunnel source f0/0
tunnel destination 14.1.1.4
ip pim sparse-mode
ip pim bsr-border
exit

R4:
int f0/0
no ip pim sparse-mode
exit

int tunnel 0
ip add 41.1.1.4 255.255.255.0
tunnel source f0/0
tunnel destination 14.1.1.1
ip pim sparse-mode
ip pim bsr-border
exit

ip mroute 18.1.1.0 255.255.255.0 tunnel 0

R4:
show ip mroute

9.IPv6组播
-----------------------------------------------------------------------

CCIE路由实验(6) -- 组播Multicasting的更多相关文章

  1. CCIE路由实验(7) -- MPLS VPN

    1.LDP协议的各种情况2.LDP和BGP交互3.LDP高级部分4.MPLS VPN (RIP和静态)5.MPLS VPN (EIGRP)6.MPLS VPN (OSPF)7.MPLS VPN (EB ...

  2. CCIE路由实验(9) -- IPv6

    1.IPv6地址的各种情况2.配置通过DHCP-PD方式分配前缀信息3.IPv6路由基本配置4.IPv6路由--RIPng5.IPv6路由--EIGRPv66.IPv6路由--OSPFv37.IPv6 ...

  3. CCIE路由实验(8) -- QoS

    1.查看端口缺省的队列机制2.配置CB-WFQ3.配置CB-LLQ4.配置CB-Shapping在以太接口下5.配置CB-Shapping在FR接口下6.配置帧中继流量整形FRTS7.配置CB-Pol ...

  4. CCIE路由实验(4) -- BGP路由控制

    1.过滤BGP路由的方法2.用AS-path filter控制路由3.用Community Filter控制路由 enableconf tno ip do loenable pass ciscolin ...

  5. CCIE路由实验(3) -- BGP高级部分

    当一个AS包含多个IBGP对等体时,路由反射器非常有用.因为IBGP客户只需要和路由反射器建立邻居关系,从而降低了IBGP的连接数量.路由反射器和它的客户合称为一个簇.路由反射是克服IBGP水平分割的 ...

  6. CCIE路由实验(2) -- BGP选路原则

    BGP路径属性分为4类: 公认必遵(Well-Known Mandatory):BGP更新报文中必须包含的,且必须被所有BGP厂商实现所能识别的,包括ORIGIN,AS-PATH和Next_Hop 1 ...

  7. CCIE路由实验(10) -- IS-IS

    1.配置基本的集成IS-IS路由协议2.多区域的集成IS-IS配置3.IS-IS认证4.IS-IS路由泄露5.IS-IS汇总6.在IS-IS中手动产生一条默认路由7.IS-IS协议重分布8.用IS-I ...

  8. CCIE路由实验(5) -- BGP负载均衡

    enableconf tno ip do loenable pass ciscoline con 0logg syncexec-t 0 0exitline vty 0 4pass ciscologg ...

  9. HCNP Routing&Switching之组播技术-组播路由协议PIM

    前文我们了解了组播技术中组播分发树相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16019334.html:今天我们来聊一聊组播路由协议PIM相关话题 ...

随机推荐

  1. 带参数的存储过程和标量Function

    在SQL Server中,我们通常会使用NEWID(),GETDATE(),等一些数据库函数,这些函数是很有帮助的,然后数据库也能够让我们自己写函数,即Function,下面简单说说Function的 ...

  2. LeetCode 二叉树的最小深度

    计算二叉树的最小深度.最小深度定义为从root到叶子节点的最小路径. public class Solution { public int run(TreeNode root) { if(root = ...

  3. 编译kernel:make Image uImage与zImage的区别

    make Image uImage与zImage的区别  http://blog.chinaunix.net/uid-25322094-id-3589796.html 内核编译(make)之后会生成两 ...

  4. HDU 2023题解分析

    我想说这道题我还没弄明白我错哪了,交了20多遍一直都是Runtime Error,改了N次还是不对,后来搜了一下,说是数组开小了,又把数组开大,还不对,又改发现一个平均值求错,再改,还不对,洗洗睡吧. ...

  5. Opencv 完美配置攻略 2014 (Win8.1 + Opencv 2.4.8 + VS 2013)下

    前面说了一些在OpenCV在VS2013下的配置的过程,下面说一下其中的个别的知识点,了解一下这样配置的一点点更细节的过程.其实配置项目属性的时候,有两种方式: 一.通过项目属性管理器配置项目属性表 ...

  6. Android的回调模拟

    想要彻底理解安卓中用的回调,最好的办法是自己写一个类似的实现安卓中回调功能的实现方法. 我自己写了一个可以实现setOnClickListener回调的工程: 具体目录: 工程源码的具体地址:http ...

  7. vs 2010 引用DLL 遇到问题

    1.新建项目→添加引用,提示:未能添加对dll的引用,请确保此文件可访问并且是一个有效的程序集或COM组件 解决方案:首先把DLL放system32中,然后,regsvr32 绝对路径注册一下: 如果 ...

  8. MVCC 多版本并发控制

    关于事务的介绍暂且不谈. InnoDB行级锁,虽然在很大程度上提高了事务的并发性,但是终究还是要耗费很大的.为了更进一步的提高并发性同时降低开销,存储引擎会同时实现MVCC. InnoDB实现MVCC ...

  9. CentOS 6.5(64bit)安装GCC4.8.2+Qt5.2.1(替换GCC的链接库)

    截至目前,Qt的最新版本为5.2.1,CentOS的版本为6.5,GCC的版本为4.8.2,经过一番尝试,终于将Qt开发环境安装到了CentOS(64 bit)中,整个过程中有几个需要注意的地方,在这 ...

  10. cocos2d-x游戏开发系列教程-超级玛丽07-CMGameMap(三)-按键处理

    在地图初始化好了之后,就开始移动马里奥吧,我在windows下,是使用键盘来移动马里奥的 w是跳,d是前进,a是后退,那么在程序里是怎么来获取这个按键的呢? 普通的windows程序,在按键之后,会有 ...