关于这个linux组播转发弄了很久,主要还是因为自己太菜,对网络知识太缺乏。现在环境搭建好,想记录总结下,顺便给有同样困境的人一些参考。(因为自己遇到问题时到处提问很想找到同样的环境资料),自己弄完的时候觉得其实还是很简单,但是当时没有方向,真的是有点不知所措。
一、需求
先简单说一下最初的需求和环境
环境如上,之所以用Linux进行转发,是因为需要用到Linux TC(traffic control)模块,对组播数据进行延时,丢包或者其他处理,测试接收端对组播数据的恢复处理能力。
二、前期准备
最初领导给的任务是搭建Linux TC测试环境,并没有其他的信息。自己上网查找资料,安装虚拟机linux,搭建好了TC模块(Windows下面也有一个比较好的网络流量控制工具“NEWT”)。
详见之前的随笔:https://www.cnblogs.com/little-monica/p/11459772.html
TC模块可以正常使用之后,以为工作就算完成了,完全没有去想怎么把数据转发给接收端的问题。很快将PC加在整个测试环境中时就显示出尴尬,不知道该怎么将linux处理的数据发送给接收端。于是又各种查资料,发现iptables可以进行IP转发,好像可以满足我的需求(这个时候完全没有意识到组播数据和非组播数据转发的区别)。最早也没有想到测试组播,以为只要是对进来的IP流进行处理了就行,而且很快单播在这个环境中就可以使用了,组播却不行,但是我们实际应用中大部分都是组播。
三、真正开始Linux组播转发
刚开始进行组播测试就遇到了问题,无法接收发送端发过来的组播(虚拟机),但是主机wireshark是可以收到的,怎么回事呢?
原来为了安全考虑,linux是不自动接收组播的,linux系统会根据rp_filter的值来对数据包进行检查。当rp_filter为1时,会对数据包的目的地址进行检查,如果目的ip不是本机ip,则直接丢弃数据包。因为组播数据包的目的地址是组播IP,肯定和本机ip不匹配,所以数据包会被丢弃。当把rp_filter改为0时,不进行检查,所有数据包都会收到,所以应用程序就可以收到组播消息了。(参考文章:https://www.cnblogs.com/jiexianzhu/p/11016125.html)
另外请参考:https://github.com/troglobit/pimd
需要将/proc/sys/net/ipv4/conf/all/rp_filter设置为0:
1、sysctl -w net.ipv4.conf.all.rp_filter=0 或者echo "0">/proc/sys/net/ipv4/conf/all/rp_filter,sysctl -w是临时改变某个参数值,这两种都是临时起作用,重启linux或者重启网络后就失效了
2、要参数更改的值永久生效需要将其写入文件,在/etc/sysctl.conf 文件中添加 net.ipv4.conf.all.rp_filter =0,再sysctl -p加载(-p 从指定的文件加载系统参数,如不指定即从/etc/sysctl.conf中加载)
到此可以正常接收组播了,进行组播转发还需要打开组播转发开关。
1、将/proc/sys/net/ipv4/ip_forward设置为1,设置方法参考上一步rp_filter。 (打开IP转发开关)
2、将/proc/sys/net/ipv4/conf/all/mc_forwarding设置为1. 设置方法参考上一步rp_filter。 (打开组播转发开关)
这一步也耗费了很多时间,怎么修改,mc_forwarding的值都是0,也是上网查了很久,后来在一个英文讨论区(忘记名字了,暂且这么叫吧)发现只要修改正常,在启用转发时才能看到mc_forwarding的值变为“1”.
这个时候我还是用的虚拟机单网卡跑测试环境(后来自己想了想,觉得单网卡好像没法转发,就加了一个USB网卡),查资料的时候有两篇文章提到虚拟机如果用桥接模式是不能转发组播的,另外一篇提到需要用到host-only模式,但是只有两句话,我也不知道该不该顺着这个思路走,先自己多试试。然后就是各种研究虚拟机的3种模式,也不知道什么原因,桥接的时候能接收到组播,转发总是不成功。NAT和Host only模式连组播都收不到,为此专门充钱在网站上提问,但是都没有得到准确的回复。这个时候真是头大啊,没有思路,反反复复调试又回头走,网上能查的资料都找遍了也没有头绪,但是看几篇做组播转发的文章实现起来都很简单。
最后暂时放弃了虚拟机环境,重新安装Linux系统测试。
Linux版本:Linux fedora29 4.18.16-300.fc29.x86_64
pimd ver:pimd version 2.3.2
1、查看linux路由表,网上有一些环境有配置发送接收端组播路由的,我这里不需要,还是根据各自的需求和环境来:
2、查看目前版本是否支持组播,如果不支持,需要编译内核:
ifconfig出现 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric,支持组播
3、安装PIMD:sudo yum install pimd,等待安装完成,pimd的配置信息在/etc/pimd.conf里,我是使用的默认配置,查看pimd使用输入pimd -h。
4、运行pimd,这个时候没有任何信息显示:
[xx@localhost~]$:sudo pimd
查看pimd运行信息
[xx@localhost~]$:sudo pimd -d
显示信息不全,但是能看到转发模块建立起来,并且选取了输出网卡(192.168.1.56)作为汇聚点。
如果这个时候想查看pimd全部运行状态,可以pimd -q先退出,然后再次运行pimd -d查看。
值得注意的是pimd -d命令是一直运行的,如果想使用终端建议再新开一个窗口,不要ctrl+c退出。最早我是犯过这个错误的,以为pimd就在后台运行了,这个只是个调试信息中断没有关系。
实际上直接终端输入pimd就可以了,无奈新手看见只输入pimd没有信息输出又是调试阶段所以用pimd -d。
5、可以查看路由信息[xx@localhost~]$:sudo pimd -r:
6、查看组播路由表 [xx@localhost~]$:sudo ip mroute show:
(10.10.50.12, 238.1.1.10) Iif:enp0s25 Oifs:enp0s26f7u1u3 State:resolved
如果显示 Iif:unresolved State:unresolved:
iif是接收多播数据包的网络接口,如果设备名是关键词unresolved,就表示路由监控进程不能解析这个条目;接下来的关键词是oif,它后面跟着一些输出网络接口,接口之间用空格分开。
7、查看linux路由转发节点的组播虚拟转发接口信息 [xx@localhost~]$:more /proc/net/ip_mr_vif
可以看出,发送端A的数据从linux网卡enp0s25进入,从另一个网卡enp0s26f7u1u3发出了
8、最后配置接收端B,设置发送端组播的地址和端口号,可以正常接收到组播。
注意:如果发现打印出来的转发接口信息完全正常,输入输出的数据稳定增长,组播路由表也正常,但是接收端仍然接收不到数据,试试关闭防火墙。
systemctl start firewalld 启动防火墙
systemctl stop firewalld 关闭防火墙 暂时关闭,重启失效
systemctl disable firewalld 禁用防火墙 永久关闭
结合Linux tc模块进行处理,至此就比较简单了,因为都通了,搭配使用就好了。
值得注意的是刚开始我用的linux接收组播的enp0s25网卡进行tc处理,并没有效果。想了想应该在整个linux组播数据出去之前对输出数据做控制,就是在enp0s26f7u1u3网卡上使用tc模块。
接收端观看组播信息,tc模块使用正常。
虽然文章写起来简单,但是如果没有一点基础知识调试起来也不那么容易,有时候赶巧了碰见合适的环境在网上找教程一次就能成功。事实上大部分都不可能完全相同,自己在这个过程中查了各种资料,一点有用的信息都不敢错过,走了很多很多的弯路。但是也要感谢这些弯路,遇到问题解决问题的过程中学到很多东西。有时候觉得无路可走的时候,可能真的就是接近终点了。
以上都是凭回忆记录下来的,可能多多少少有些遗漏,欢迎纠正讨论。
附上网上一篇启发最多的文章链接,里面关于一些原理讲解的也比较透彻:https://www.jianshu.com/p/2c625f68a304
另外贴上pimd运行中的打印信息:
sudo pimd -d
debug level 0xffffffff (dvmrp_detail,dvmrp_prunes,dvmrp_routes,dvmrp_neighbors,dvmrp_timers,igmp_proto,igmp_timers,igmp_members,trace,timeout,packets,interfaces,kernel,cache,rsrr,pim_detail,pim_hello,pim_register,pim_join_prune,pim_bootstrap,pim_asserts,pim_cand_rp,pim_routes,pim_timers,pim_rpf)
22:49:46.521 pimd version 2.3.2 starting ...
22:49:46.521 Got 262144 byte send buffer size in 0 iterations
22:49:46.521 Got 262144 byte recv buffer size in 0 iterations
22:49:46.521 Got 262144 byte send buffer size in 0 iterations
22:49:46.521 Got 262144 byte recv buffer size in 0 iterations
22:49:46.522 Getting vifs from kernel
22:49:46.522 Installing enp0s25 (10.10.50.36 on subnet 10.10.50/24) as vif #0-2 - rate 0
22:49:46.522 Installing enp0s26f7u1u3 (192.168.1.56 on subnet 192.168.1) as vif #1-9 - rate 0
22:49:46.522 Getting vifs from /etc/pimd.conf
22:49:46.522 Local static RP: 192.168.1.56, group 224.0.0.0/4
22:49:46.522 Local Cand-BSR address 192.168.1.56, priority 5
22:49:46.522 Local Cand-RP address 192.168.1.56, priority 20, interval 30 sec
22:49:46.522 spt-threshold packets 0 interval 100
22:49:46.522 Local static RP: 169.254.0.1, group 232.0.0.0/8
22:49:46.522 IGMP query interval : 12 sec
22:49:46.522 IGMP querier timeout : 41 sec
22:49:46.522 Another multicast routing application is already running.
[pbi@localhost pimdLog]$ sudo pimd -q
[pbi@localhost pimdLog]$ sudo pimd -d
debug level 0xffffffff (dvmrp_detail,dvmrp_prunes,dvmrp_routes,dvmrp_neighbors,dvmrp_timers,igmp_proto,igmp_timers,igmp_members,trace,timeout,packets,interfaces,kernel,cache,rsrr,pim_detail,pim_hello,pim_register,pim_join_prune,pim_bootstrap,pim_asserts,pim_cand_rp,pim_routes,pim_timers,pim_rpf)
22:50:07.387 pimd version 2.3.2 starting ...
22:50:07.387 Got 262144 byte send buffer size in 0 iterations
22:50:07.387 Got 262144 byte recv buffer size in 0 iterations
22:50:07.387 Got 262144 byte send buffer size in 0 iterations
22:50:07.387 Got 262144 byte recv buffer size in 0 iterations
22:50:07.387 Getting vifs from kernel
22:50:07.387 Installing enp0s25 (10.10.50.36 on subnet 10.10.50/24) as vif #0-2 - rate 0
22:50:07.387 Installing enp0s26f7u1u3 (192.168.1.56 on subnet 192.168.1) as vif #1-9 - rate 0
22:50:07.387 Getting vifs from /etc/pimd.conf
22:50:07.387 Local static RP: 192.168.1.56, group 224.0.0.0/4
22:50:07.388 Local Cand-BSR address 192.168.1.56, priority 5
22:50:07.388 Local Cand-RP address 192.168.1.56, priority 20, interval 30 sec
22:50:07.388 spt-threshold packets 0 interval 100
22:50:07.388 Local static RP: 169.254.0.1, group 232.0.0.0/8
22:50:07.388 IGMP query interval : 12 sec
22:50:07.388 IGMP querier timeout : 41 sec
22:50:07.388 Interface enp0s25 comes up; vif #0 now in service
22:50:07.388 query_groups(): Sending IGMP v3 query on enp0s25
22:50:07.388 Send IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:07.388 SENT 36 bytes IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:07.388 SENT 46 bytes PIM v2 Hello from 10.10.50.36 to 224.0.0.13
22:50:07.388 Interface enp0s26f7u1u3 comes up; vif #1 now in service
22:50:07.388 query_groups(): Sending IGMP v3 query on enp0s26f7u1u3
22:50:07.388 Send IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:07.388 SENT 36 bytes IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:07.388 SENT 46 bytes PIM v2 Hello from 192.168.1.56 to 224.0.0.13
22:50:07.411 Interface register_vif0 comes up; vif #2 now in service
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
Multicast Routing Table ======================================================
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 0
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
22:50:07.411 Received IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:07.411 RECV 46 bytes PIM v2 Hello from 10.10.50.36 to 224.0.0.13
22:50:07.411 Cache miss, src 10.10.50.12, dst 238.1.1.10, iif 0
22:50:07.411 create group entry, group 238.1.1.10
22:50:07.411 RECV 46 bytes PIM v2 Hello from 192.168.1.56 to 224.0.0.13
22:50:07.411 Received IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:07.411 Received IGMP v3 Membership Report from 10.10.50.36 to 224.0.0.22
22:50:07.411 accept_membership_report(): IGMP v3 report, 32 bytes, from 10.10.50.36 to 224.0.0.22 with 3 group records.
22:50:07.411 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:07.411 Set delete timer for group: 224.0.0.22
22:50:07.411 SM group order from 10.10.50.36 (*,224.0.0.22)
22:50:07.411 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:07.411 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:07.411 Set delete timer for group: 224.0.0.2
22:50:07.411 SM group order from 10.10.50.36 (*,224.0.0.2)
22:50:07.411 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:07.411 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:07.411 Set delete timer for group: 224.0.0.13
22:50:07.411 SM group order from 10.10.50.36 (*,224.0.0.13)
22:50:07.411 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:07.411 Received IGMP v3 Membership Report from 192.168.1.56 to 224.0.0.22
22:50:07.411 accept_membership_report(): IGMP v3 report, 32 bytes, from 192.168.1.56 to 224.0.0.22 with 3 group records.
22:50:07.411 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:07.411 Set delete timer for group: 224.0.0.22
22:50:07.411 SM group order from 192.168.1.56 (*,224.0.0.22)
22:50:07.411 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:07.411 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:07.411 Set delete timer for group: 224.0.0.2
22:50:07.411 SM group order from 192.168.1.56 (*,224.0.0.2)
22:50:07.411 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:07.412 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:07.412 Set delete timer for group: 224.0.0.13
22:50:07.412 SM group order from 192.168.1.56 (*,224.0.0.13)
22:50:07.412 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:08.086 Received IGMP v3 Membership Report from 10.10.50.36 to 224.0.0.22
22:50:08.086 accept_membership_report(): IGMP v3 report, 32 bytes, from 10.10.50.36 to 224.0.0.22 with 3 group records.
22:50:08.086 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:08.086 Set delete timer for group: 224.0.0.22
22:50:08.086 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:08.086 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:08.086 Set delete timer for group: 224.0.0.2
22:50:08.086 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:08.086 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:08.086 Set delete timer for group: 224.0.0.13
22:50:08.086 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:08.405 Received IGMP v3 Membership Report from 192.168.1.56 to 224.0.0.22
22:50:08.405 accept_membership_report(): IGMP v3 report, 32 bytes, from 192.168.1.56 to 224.0.0.22 with 3 group records.
22:50:08.405 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:08.405 Set delete timer for group: 224.0.0.22
22:50:08.405 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:08.405 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:08.405 Set delete timer for group: 224.0.0.2
22:50:08.405 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:08.405 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:08.405 Set delete timer for group: 224.0.0.13
22:50:08.405 Not creating routing entry for LAN scoped group 224.0.0.13
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
Multicast Routing Table ======================================================
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 0
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
22:50:13.410 SENT 34 bytes PIM v2 Bootstrap from 10.10.50.36 to 224.0.0.13
22:50:13.410 SENT 34 bytes PIM v2 Bootstrap from 192.168.1.56 to 224.0.0.13
Candidate Rendezvous-Point Set ===============================================
RP address Incoming Group Prefix Priority Holdtime
--------------- -------- ------------------ -------- ---------------------
------------------------------------------------------------------------------
Current BSR address: 192.168.1.56
22:50:13.410 RECV 34 bytes PIM v2 Bootstrap from 10.10.50.36 to 224.0.0.13
22:50:13.410 RECV 34 bytes PIM v2 Bootstrap from 192.168.1.56 to 224.0.0.13
22:50:16.214 Received IGMP v3 Membership Report from 192.168.1.56 to 224.0.0.22
22:50:16.214 accept_membership_report(): IGMP v3 report, 40 bytes, from 192.168.1.56 to 224.0.0.22 with 4 group records.
22:50:16.214 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:16.214 Set delete timer for group: 224.0.0.22
22:50:16.214 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:16.214 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:16.214 Set delete timer for group: 224.0.0.2
22:50:16.214 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:16.214 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:16.214 Set delete timer for group: 224.0.0.13
22:50:16.214 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:16.214 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.251 report_type 34
22:50:16.214 Set delete timer for group: 224.0.0.251
22:50:16.215 SM group order from 192.168.1.56 (*,224.0.0.251)
22:50:16.215 Not creating routing entry for LAN scoped group 224.0.0.251
22:50:17.749 Received IGMP v3 Membership Report from 10.10.50.36 to 224.0.0.22
22:50:17.749 accept_membership_report(): IGMP v3 report, 40 bytes, from 10.10.50.36 to 224.0.0.22 with 4 group records.
22:50:17.749 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:17.749 Set delete timer for group: 224.0.0.22
22:50:17.749 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:17.749 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:17.749 Set delete timer for group: 224.0.0.2
22:50:17.749 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:17.749 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:17.749 Set delete timer for group: 224.0.0.13
22:50:17.749 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:17.749 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.251 report_type 34
22:50:17.749 Set delete timer for group: 224.0.0.251
22:50:17.749 SM group order from 10.10.50.36 (*,224.0.0.251)
22:50:17.750 Not creating routing entry for LAN scoped group 224.0.0.251
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
Multicast Routing Table ======================================================
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 0
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
Candidate Rendezvous-Point Set ===============================================
RP address Incoming Group Prefix Priority Holdtime
--------------- -------- ------------------ -------- ---------------------
------------------------------------------------------------------------------
Current BSR address: 192.168.1.56
22:50:17.750 Cache miss, src 10.10.50.12, dst 238.1.1.10, iif 0
22:50:17.750 create group entry, group 238.1.1.10
22:50:20.494 Received IGMP v2 Membership Report from 192.168.1.100 to 238.1.1.10
22:50:20.495 accept_group_report(): igmp_src 192.168.1.100 ssm_src 238.1.1.10 group 238.1.1.10 report_type 22
22:50:20.495 Change IGMP compatibility mode to v2 for group 238.1.1.10
22:50:20.495 Set delete timer for group: 238.1.1.10
22:50:20.495 SM group order from 192.168.1.100 (*,238.1.1.10)
22:50:20.495 create group entry, group 238.1.1.10
22:50:21.227 Received IGMP v2 Membership Report from 10.10.50.12 to 224.1.1.1
22:50:21.227 accept_group_report(): igmp_src 10.10.50.12 ssm_src 224.1.1.1 group 224.1.1.1 report_type 22
22:50:21.227 Change IGMP compatibility mode to v2 for group 224.1.1.1
22:50:21.227 Set delete timer for group: 224.1.1.1
22:50:21.227 SM group order from 10.10.50.12 (*,224.1.1.1)
22:50:21.227 create group entry, group 224.1.1.1
22:50:23.229 query_groups(): Sending IGMP v3 query on enp0s25
22:50:23.229 Send IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:23.229 SENT 36 bytes IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:23.229 query_groups(): Sending IGMP v3 query on enp0s26f7u1u3
22:50:23.229 Send IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:23.229 SENT 36 bytes IGMP Membership Query from 192.168.1.56 to 224.0.0.1
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
Multicast Routing Table ======================================================
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 0
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
22:50:23.229 New RP candidate 192.168.1.56 for group 224.0.0.0/4, priority 20
Candidate Rendezvous-Point Set ===============================================
RP address Incoming Group Prefix Priority Holdtime
--------------- -------- ------------------ -------- ---------------------
192.168.1.56 2 224/4 20 75
------------------------------------------------------------------------------
Current BSR address: 192.168.1.56
22:50:23.230 NETLINK: vif 1, ifindex=9
22:50:23.230 NETLINK: gateway is 192.168.1.1
22:50:23.230 For src 169.254.0.1, iif is 1, next hop router is 192.168.1.1: NOT A PIM ROUTER
22:50:23.230 New RP candidate 192.168.1.56 for group 224.0.0.0/4, priority 1
22:50:23.230 Received IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:23.230 Received IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:23.237 Received IGMP v2 Membership Report from 10.10.50.12 to 224.1.1.1
22:50:23.237 accept_group_report(): igmp_src 10.10.50.12 ssm_src 224.1.1.1 group 224.1.1.1 report_type 22
22:50:23.237 accept_group_report(): al_pv=2
22:50:23.237 Set delete timer for group: 224.1.1.1
22:50:23.237 create group entry, group 224.1.1.1
22:50:23.237 Adding vif 0 for group 224.1.1.1
22:50:23.662 Received IGMP v3 Membership Report from 10.10.50.36 to 224.0.0.22
22:50:23.662 accept_membership_report(): IGMP v3 report, 40 bytes, from 10.10.50.36 to 224.0.0.22 with 4 group records.
22:50:23.662 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:23.662 Set delete timer for group: 224.0.0.22
22:50:23.662 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:23.662 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:23.662 Set delete timer for group: 224.0.0.2
22:50:23.662 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:23.662 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:23.662 Set delete timer for group: 224.0.0.13
22:50:23.662 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:23.662 accept_group_report(): igmp_src 10.10.50.36 ssm_src 0.0.0.0 group 224.0.0.251 report_type 34
22:50:23.662 Set delete timer for group: 224.0.0.251
22:50:23.662 Not creating routing entry for LAN scoped group 224.0.0.251
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
22:50:27.666 NETLINK: vif 1, ifindex=9
22:50:27.666 NETLINK: gateway is 192.168.1.1
22:50:27.666 For src 169.254.0.1, iif is 1, next hop router is 192.168.1.1: NOT A PIM ROUTER
Multicast Routing Table ======================================================
----------------------------------- (*,G) ------------------------------------
Source Group RP Address Flags
--------------- --------------- --------------- ---------------------------
INADDR_ANY 224.1.1.1 192.168.1.56 WC RP
Joined oifs: ...
Pruned oifs: ...
Leaves oifs: l..
Asserted oifs: ...
Outgoing oifs: o..
Incoming : ..I
TIMERS: Entry JP RS Assert VIFS: 0 1 2
0 60 0 0 0 0 0
----------------------------------- (S,G) ------------------------------------
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 1
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
Candidate Rendezvous-Point Set ===============================================
RP address Incoming Group Prefix Priority Holdtime
--------------- -------- ------------------ -------- ---------------------
192.168.1.56 2 224/4 1 65535
224/4 20 70
169.254.0.1 1 232/8 1 65535
------------------------------------------------------------------------------
Current BSR address: 192.168.1.56
22:50:27.989 Cache miss, src 10.10.50.12, dst 238.1.1.10, iif 0
22:50:27.989 create group entry, group 238.1.1.10
22:50:27.989 create source entry, source 10.10.50.12
22:50:27.989 move_kernel_cache: SG
22:50:29.308 Received IGMP v2 Membership Report from 192.168.1.100 to 238.1.1.10
22:50:29.308 accept_group_report(): igmp_src 192.168.1.100 ssm_src 238.1.1.10 group 238.1.1.10 report_type 22
22:50:29.308 accept_group_report(): al_pv=2
22:50:29.308 Set delete timer for group: 238.1.1.10
22:50:29.308 Adding vif 1 for group 238.1.1.10
22:50:30.549 Received IGMP v3 Membership Report from 192.168.1.56 to 224.0.0.22
22:50:30.549 accept_membership_report(): IGMP v3 report, 40 bytes, from 192.168.1.56 to 224.0.0.22 with 4 group records.
22:50:30.549 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:30.549 Set delete timer for group: 224.0.0.22
22:50:30.549 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:30.549 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:30.549 Set delete timer for group: 224.0.0.2
22:50:30.549 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:30.549 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:30.549 Set delete timer for group: 224.0.0.13
22:50:30.549 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:30.550 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.251 report_type 34
22:50:30.550 Set delete timer for group: 224.0.0.251
22:50:30.550 Not creating routing entry for LAN scoped group 224.0.0.251
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
Multicast Routing Table ======================================================
----------------------------------- (*,G) ------------------------------------
Source Group RP Address Flags
--------------- --------------- --------------- ---------------------------
INADDR_ANY 224.1.1.1 192.168.1.56 WC RP
Joined oifs: ...
Pruned oifs: ...
Leaves oifs: l..
Asserted oifs: ...
Outgoing oifs: o..
Incoming : ..I
TIMERS: Entry JP RS Assert VIFS: 0 1 2
0 55 0 0 0 0 0
----------------------------------- (S,G) ------------------------------------
----------------------------------- (*,G) ------------------------------------
Source Group RP Address Flags
--------------- --------------- --------------- ---------------------------
INADDR_ANY 238.1.1.10 192.168.1.56 WC RP
Joined oifs: ...
Pruned oifs: ...
Leaves oifs: .l.
Asserted oifs: ...
Outgoing oifs: .o.
Incoming : ..I
TIMERS: Entry JP RS Assert VIFS: 0 1 2
0 60 0 0 0 0 0
----------------------------------- (S,G) ------------------------------------
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 2
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
Candidate Rendezvous-Point Set ===============================================
RP address Incoming Group Prefix Priority Holdtime
--------------- -------- ------------------ -------- ---------------------
192.168.1.56 2 224/4 1 65535
224/4 20 65
169.254.0.1 1 232/8 1 65535
------------------------------------------------------------------------------
Current BSR address: 192.168.1.56
22:50:37.556 SENT 46 bytes PIM v2 Hello from 10.10.50.36 to 224.0.0.13
22:50:37.556 query_groups(): Sending IGMP v3 query on enp0s25
22:50:37.556 Send IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:37.556 SENT 36 bytes IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:37.556 SENT 46 bytes PIM v2 Hello from 192.168.1.56 to 224.0.0.13
22:50:37.556 query_groups(): Sending IGMP v3 query on enp0s26f7u1u3
22:50:37.556 Send IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:37.556 SENT 36 bytes IGMP Membership Query from 192.168.1.56 to 224.0.0.1
Virtual Interface Table ======================================================
Vif Local Address Subnet Thresh Flags Neighbors
--- --------------- ------------------ ------ --------- -----------------
0 10.10.50.36 10.10.50/24 1 DR NO-NBR
1 192.168.1.56 192.168.1 1 DR NO-NBR
2 10.10.50.36 register_vif0 1
Vif SSM Group Sources
Multicast Routing Table ======================================================
----------------------------------- (*,G) ------------------------------------
Source Group RP Address Flags
--------------- --------------- --------------- ---------------------------
INADDR_ANY 224.1.1.1 192.168.1.56 WC RP
Joined oifs: ...
Pruned oifs: ...
Leaves oifs: l..
Asserted oifs: ...
Outgoing oifs: o..
Incoming : ..I
TIMERS: Entry JP RS Assert VIFS: 0 1 2
0 50 0 0 0 0 0
----------------------------------- (S,G) ------------------------------------
----------------------------------- (*,G) ------------------------------------
Source Group RP Address Flags
--------------- --------------- --------------- ---------------------------
INADDR_ANY 238.1.1.10 192.168.1.56 WC RP
Joined oifs: ...
Pruned oifs: ...
Leaves oifs: .l.
Asserted oifs: ...
Outgoing oifs: .o.
Incoming : ..I
TIMERS: Entry JP RS Assert VIFS: 0 1 2
0 55 0 0 0 0 0
----------------------------------- (S,G) ------------------------------------
--------------------------------- (*,*,G) ------------------------------------
Number of Groups: 2
Number of Cache MIRRORs: 0
------------------------------------------------------------------------------
Candidate Rendezvous-Point Set ===============================================
RP address Incoming Group Prefix Priority Holdtime
--------------- -------- ------------------ -------- ---------------------
192.168.1.56 2 224/4 1 65535
224/4 20 60
169.254.0.1 1 232/8 1 65535
------------------------------------------------------------------------------
Current BSR address: 192.168.1.56
22:50:37.557 Received IGMP Membership Query from 10.10.50.36 to 224.0.0.1
22:50:37.557 RECV 46 bytes PIM v2 Hello from 10.10.50.36 to 224.0.0.13
22:50:37.557 Received IGMP Membership Query from 192.168.1.56 to 224.0.0.1
22:50:37.557 RECV 46 bytes PIM v2 Hello from 192.168.1.56 to 224.0.0.13
22:50:37.757 Received IGMP v3 Membership Report from 192.168.1.56 to 224.0.0.22
22:50:37.757 accept_membership_report(): IGMP v3 report, 40 bytes, from 192.168.1.56 to 224.0.0.22 with 4 group records.
22:50:37.757 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.22 report_type 34
22:50:37.757 Set delete timer for group: 224.0.0.22
22:50:37.757 Not creating routing entry for LAN scoped group 224.0.0.22
22:50:37.757 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.2 report_type 34
22:50:37.757 Set delete timer for group: 224.0.0.2
22:50:37.757 Not creating routing entry for LAN scoped group 224.0.0.2
22:50:37.757 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.13 report_type 34
22:50:37.757 Set delete timer for group: 224.0.0.13
22:50:37.757 Not creating routing entry for LAN scoped group 224.0.0.13
22:50:37.757 accept_group_report(): igmp_src 192.168.1.56 ssm_src 0.0.0.0 group 224.0.0.251 report_type 34
22:50:37.758 Set delete timer for group: 224.0.0.251
22:50:37.758 Not creating routing entry for LAN scoped group 224.0.0.251
22:50:38.230 Cache miss, src 10.10.50.12, dst 238.1.1.10, iif 0
22:50:38.230 create source entry, source 10.10.50.12
22:50:38.230 move_kernel_cache: SG
22:50:38.230 move_kernel_cache: SG
22:50:38.230 Added kernel MFC entry src 10.10.50.12 grp 238.1.1.10 from enp0s25 to enp0s26f7u1u3
22:50:38.997 Received IGMP v2 Membership Report from 10.10.50.12 to 224.1.1.1
22:50:38.997 accept_group_report(): igmp_src 10.10.50.12 ssm_src 224.1.1.1 group 224.1.1.1 report_type 22
22:50:38.997 accept_group_report(): al_pv=2
22:50:38.997 Set delete timer for group: 224.1.1.1
22:50:38.997 Adding vif 0 for group 224.1.1.1