组播通信实验


前言

组播是计算机网络中数据传输的一种基本方式,组播结合了单播的点对点和广播的广泛覆盖的优点,是一种高效的数据传输方式,适用于需要向多用户发送相同内容的场景。相比之下,单播适合一对一的通信,而广播则在网络上发送给所有设备,可能导致资源浪费和网络拥堵。


一、服务类型

ASM:任意组播,任意发送者都可以成为组播源。
SSM:指定源组播,用户可能仅对某些源发送组播信息,而不愿接受其他源发送的信息。

二、组播地址范围

在这里插入图片描述

三、IGMP版本区别

Igmp v1 224.0.0.1:向所有主机发送成员关系查询信息,周期性60s。
问题
静默离开组成员离开不送报文。超时时间130=60*2+10,造成流量浪费
查询器选举,无查询路由器选举机制
Igmp v2 224.0.0.2:对igmp v1 不足进行了改进和优化。路由器选举,IP地址小的成为查询器。
Igmp v3 224.0.0.3:支持ssm(指定源)模型需求。查询报文和成员报告报文。一个成员可以携带多个组播信息。

验证版本信息

igmp v1

加入igmp v1

[R3-GigabitEthernet0/0/1] igmp version 1

在这里插入图片描述
查看igmp信息

[R3-GigabitEthernet0/0/1]display igmp group
Interface group report information of VPN-Instance: public net 
 GigabitEthernet0/0/1(192.168.2.254): 
  Total 1 IGMP Group reported
   Group Address   Last Reporter   Uptime      Expires     
   239.1.1.1       192.168.2.2     00:03:03    00:00:34 

离开igmp v1

在这里插入图片描述

查看igmp信息时,发现组成员离开不发送报文信息还在,当超时时间130=60*2+10后再次查看才没有。

igmp v2

加入igmp v2

[R3-GigabitEthernet0/0/1] igmp version 2

在这里插入图片描述
在这里插入图片描述
查看igmp信息

[R3-GigabitEthernet0/0/1]display igmp group
Interface group report information of VPN-Instance: public net 
 GigabitEthernet0/0/1(192.168.2.254): 
  Total 1 IGMP Group reported
   Group Address   Last Reporter   Uptime      Expires     
   239.1.1.1       192.168.2.1     00:04:39    00:01:45  

当两个终端加入组播时,IP地址小的成为查询器。

离开igmp v2

在这里插入图片描述

[R3-GigabitEthernet0/0/1]display igmp group
Interface group report information of VPN-Instance: public net 
 GigabitEthernet0/0/1(192.168.2.254): 
  Total 1 IGMP Group reported
   Group Address   Last Reporter   Uptime      Expires     
   239.1.1.1       192.168.2.2     00:07:38    00:01:49    

当地址小的终端(查询器)离开时,Last Reporter立马变成了192.168.2.2

四、PIM原理与配置

Pim-dm

原理:小规模,接收者密集,周期性的“扩散—剪枝”。相互发送hello,优先级高或IP地址大的成或cost值小为DR。选举完后不能替换,只有发生故障才重新选举。
Assert竞选结束后,该网段上只存在一个下游接口,只传输一份组播报文,避免资源的浪费。

配置

在这里插入图片描述

在上面实验中我们创建2个组播源,分别是139.1.1.1与138.1.1.1他们的网关分别是AR1的GE0/0/0和GE0/0/2。要求AR3设备下的终端访问239.1.1.1,AR4设备下的终端访问238.1.1.1。

基础配置

  • 在各路由器上运行ospf并把各接口宣告进去
  • 配置组播源
    在这里插入图片描述
    在这里插入图片描述

配置好组播源的基础配置和组播源视频位置,然后点运行

  • 配置终端设备

在这里插入图片描述
在这里插入图片描述

源,目的IP和MAC要核对好,不能出错。

配置组播协议

AR1

#
multicast routing-enable    ##组播路由使能
#
#
interface GigabitEthernet0/0/0
 ip address 192.168.1.254 255.255.255.0 
 pim dm
#
interface GigabitEthernet0/0/1
 ip address 192.168.12.1 255.255.255.0 
 pim dm
#
interface GigabitEthernet0/0/2
 ip address 192.168.4.254 255.255.255.0 
 pim dm
#

AR2

## 与AC1配置相似

AC3

#
multicast routing-enable    ##组播路由使能
#
#
interface GigabitEthernet0/0/0
 ip address 192.168.23.3 255.255.255.0 
 pim dm
#
interface Gig。abitEthernet0/0/1
 ip address 192.168.2.254 255.255.255.0 
 igmp enable    ##开启igmp功能,这里默认是igmp2
#

AC4

## 与AC1配置相似

配置完成后,在AR4查看igmp接口信息

<R4>display igmp interface 
Interface information of VPN-Instance: public net 
 GigabitEthernet0/0/1(192.168.3.254): 
   IGMP is enabled
   Current IGMP version is 2
   IGMP state: up
   IGMP group policy: none
     # 目前没有配置任何 IGMP 组策略。
   IGMP limit: -
   Value of query interval for IGMP (negotiated): -
   Value of query interval for IGMP (configured): 60 s
     # 配置的 IGMP 查询间隔为 60 秒。
   Value of other querier timeout for IGMP: 0 s
   Value of maximum query response time for IGMP: 10 s
     # 最大查询响应时间设置为 10 秒。
   Querier for IGMP: 192.168.3.254 (this router)
  Total 1 IGMP Group reported
     #  报告总共有 1 个 IGMP 组。

查看动态加入信息

[R3]display igmp group 
Interface group report information of VPN-Instance: public net 
 GigabitEthernet0/0/1(192.168.2.254): 
  Total 1 IGMP Group reported
   Group Address   Last Reporter   Uptime      Expires     
   239.1.1.1       192.168.2.1     00:07:43    00:01:35   

Total 1 IGMP Group reported:报告总共有 1 个 IGMP 组。
Last Reporter: 192.168.2.1 表示最后一个向该 IGMP 组报告的主机 IP 地址

在R2上查看邻居关系

<R2>display pim neighbor 
 VPN-Instance: public net
 Total Number of Neighbors = 3

 Neighbor        Interface           Uptime   Expires  Dr-Priority  BFD-Session
 192.168.12.1    GE0/0/0             00:12:28 00:01:16 1            N          
 192.168.23.3    GE0/0/1             00:12:23 00:01:22 1            N          
 192.168.24.3    GE0/0/2             00:12:21 00:01:24 1            N    

在R3上查看组播路由表信息

<R3>display pim routing-table 
 VPN-Instance: public net
 Total 1 (*, G) entry; 1 (S, G) entry

 (*, 239.1.1.1)   ##(*, G) 显示的是对于某个多播组的无源多播流的路由。
     Protocol: pim-dm, Flag: WC EXT 
     UpTime: 00:13:44
     Upstream interface: NULL
         Upstream neighbor: NULL
         RPF prime neighbor: NULL
     Downstream interface(s) information: None

 (192.168.1.1, 239.1.1.1)  ##(S, G) 显示的是对特定源 (S) 和目标组 (G) 的多播流的路由。
     Protocol: pim-dm, Flag: EXT ACT 
     UpTime: 00:13:48
     Upstream interface: GigabitEthernet0/0/0
         Upstream neighbor: 192.168.23.2
         RPF prime neighbor: 192.168.23.2
     Downstream interface(s) information: None

最终效果图

Pim-sm

原理:PIM-SM是一个有效且灵活的多播路由协议,适合于稀疏的网络环境,通过使用Rendezvous Point、共享树和源特定树的机制,实现了一种高效的多播流量管理和分发方式。

配置:
在这里插入图片描述

在上面实验中我们创建了2个组播源,分别是238.1.1.1与239.1.1.1。要求vlan 10的业务访问组播地址238.1.1.1,vlan 20的业务访问组播地址239.1.1.1,并启用IGMP Snooping记录MAC地址和其要加入的多播组。重要用户192.168.3.1始终接收发往该多播地址的流量,而不会等待接收到IGMP报告。AR2为RP。

基础配置

  • 配置各接口ip并全网运行ospf。
    AR1
#
 sysname R1
#
interface GigabitEthernet0/0/0
 ip address 10.0.112.112 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 10.0.12.1 255.255.255.0 
#
interface GigabitEthernet0/0/2
 ip address 10.0.13.1 255.255.255.0 
#
interface GigabitEthernet1/0/0
 ip address 10.0.113.113 255.255.255.0 
 interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 
#
ospf 1 router-id 1.1.1.1 
 area 0.0.0.0 
  network 1.1.1.1 0.0.0.0 
  network 10.0.12.0 0.0.0.255 
  network 10.0.13.0 0.0.0.255 
  network 10.0.112.0 0.0.0.255 
  network 10.0.113.0 0.0.0.255 
#

AR2

#
 sysname R2
#
interface GigabitEthernet0/0/0
 ip address 10.0.12.2 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 10.0.2.20 255.255.255.0 
#
interface GigabitEthernet1/0/0
 ip address 10.0.23.2 255.255.255.0 
#
interface LoopBack0
 ip address 2.2.2.2 255.255.255.255 
#
ospf 1 router-id 2.2.2.2 
 area 0.0.0.0 
  network 2.2.2.2 0.0.0.0 
  network 10.0.2.0 0.0.0.255 
  network 10.0.12.0 0.0.0.255 
  network 10.0.23.0 0.0.0.255 

AR3

#
 sysname R3
#
interface GigabitEthernet0/0/0
 ip address 10.0.13.3 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 10.0.3.30 255.255.255.0 
#
interface GigabitEthernet2/0/0
 ip address 10.0.36.3 255.255.255.0 
#
interface GigabitEthernet2/0/1
 ip address 10.0.23.3 255.255.255.0 
#
interface LoopBack0
 ip address 3.3.3.3 255.255.255.255 
#
ospf 1 router-id 3.3.3.3 
 area 0.0.0.0 
  network 3.3.3.3 0.0.0.0 
  network 10.0.3.0 0.0.0.255 
  network 10.0.13.0 0.0.0.255 
  network 10.0.23.0 0.0.0.255 
  network 10.0.36.0 0.0.0.255 
#

AR6

#
 sysname R6
#
interface GigabitEthernet0/0/0
 ip address 10.0.36.6 255.255.255.0 
#
interface GigabitEthernet0/0/1
 ip address 192.168.3.254 255.255.255.0 
#
interface LoopBack0
 ip address 6.6.6.6 255.255.255.255 
#
ospf 1 router-id 6.6.6.6 
 area 0.0.0.0 
  network 6.6.6.6 0.0.0.0 
  network 10.0.36.0 0.0.0.255 
  network 192.168.3.0 0.0.0.255 
#

LSW 2

#
sysname LSW2
#
VLAN BATCH 10 100
#
interface Vlanif10
 ip address 192.168.1.1 255.255.255.0

#
interface Vlanif100
 ip address 10.0.2.2 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 100
#
interface GigabitEthernet0/0/2
 port link-type trunk
 port trunk allow-pass vlan 10
 #
interface LoopBack0
 ip address 22.22.22.22 255.255.255.255
#
ospf 1 router-id 22.22.22.22
 area 0.0.0.0
  network 22.22.22.22 0.0.0.0
  network 10.0.2.0 0.0.0.255
  network 192.168.1.0 0.0.0.255
#

LSW 3

#
sysname LSW3
#
vlan 20 100
#
interface Vlanif20
 ip address 192.168.2.254 255.255.255.0
#
interface Vlanif100
 ip address 10.0.3.3 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 100
#
interface GigabitEthernet0/0/2
 port link-type trunk
 port trunk allow-pass vlan 20
 #
interface LoopBack0
 ip address 33.33.33.33 255.255.255.255
#
ospf 1 router-id 33.33.33.33
 area 0.0.0.0
  network 33.33.33.33 0.0.0.0
  network 192.168.2.0 0.0.0.255
  network 10.0.3.0 0.0.0.255
#

LSW1

#
sysname S1
#
vlan batch 10 20
#
interface Ethernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 20
#
interface Ethernet0/0/2
 port link-type trunk
 port trunk allow-pass vlan 10
#
interface Ethernet0/0/3
 port link-type access
 port default vlan 10
#
interface Ethernet0/0/4
 port link-type access
 port default vlan 20

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

配置组播协议

AR1 AR2 AR3在各接口下配置

#
multicast routing-enable
#
interface GigabitEthernet0/0/x
 pim sm
#
pim
 static-rp 2.2.2.2   ##配置静态 RP 的命令

AR6

#
multicast routing-enable
#
#
interface GigabitEthernet0/0/0
 pim sm
#
interface GigabitEthernet0/0/1
 igmp enable
 igmp static-group 238.1.1.1    ##配置该接口静态加入一个多播组,保证接收发往该多播地址的流量
 igmp static-group 239.1.1.1
#
pim
static-rp 2.2.2.2

抓包查看结果
在这里插入图片描述

发现有两个组播地址,终端在不加入组播地址的情况下就会有组播地址流入。

LSW 2

#
multicast routing-enable
#
interface Vlanif10
 igmp enable
 igmp static-group 238.1.1.1
#
interface Vlanif100
 pim sm
#
pim
 static-rp 2.2.2.2
#

LSW 3

#
multicast routing-enable
#
interface Vlanif20
 igmp enable
 igmp static-group 239.1.1.1
#
interface Vlanif100
 pim sm
#
pim
 static-rp 2.2.2.2
#

LSW 1

#
igmp-snooping enable
#
#
vlan 10
 igmp-snooping enable    ##启用IGMP Snooping的交换机会记录下这个设备的MAC地址和其要加入的多播组。
vlan 20
 igmp-snooping enable
#
interface Ethernet0/0/1
 igmp-snooping static-router-port vlan 20  ##将 VLAN 20 中的某个端口标记为静态路由端口,以便处理 IGMP Snooping 相关的多播流量。
#
interface Ethernet0/0/2
 igmp-snooping static-router-port vlan 10   
#
interface Ethernet0/0/3
 l2-multicast static-group group-address 238.1.1.1 vlan 10   ##用于在网络设备上静态配置 L2 多播组,使得所有到达 VLAN 10 的流量从源(发送者)发送到目标多播地址(238.1.1.1)时能够被正确处理和转发。
#
interface Ethernet0/0/4
 l2-multicast static-group group-address 239.1.1.1 to 239.1.1.2 vlan 20   ##创建一个静态的L2多播组,允许多播地址范围 239.1.1.1239.1.1.2 的流量在 VLAN 20 中被正确处理和转发。
#

最终效果图:
在这里插入图片描述

  • 22
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值