Skip to main content
Delete his original (guess). The answer I have left undeleted is correct.
Source Link

Check out the sysctl? net.ipv4.conf.all.mc_forwarding

the other possible multicast parameters are

# sysctl -a | grep igmp

net.ipv4.igmp_max_memberships = 20



# sysctl -a | grep mc

net.ipv4.conf.pimreg.mc_forwarding = 1    
net.ipv4.conf.ipsec0.mc_forwarding = 0
net.ipv4.conf.eth1.mc_forwarding = 1
net.ipv4.conf.eth0.mc_forwarding = 
net.ipv4.conf.lo.mc_forwarding = 
net.ipv4.conf.default.mc_forwarding = 
net.ipv4.conf.all.mc_forwarding = 
net.ipv4.neigh.pimreg.mcast_solicit = 
net.ipv4.neigh.ipsec0.mcast_solicit = 
net.ipv4.neigh.eth1.mcast_solicit = 
net.ipv4.neigh.eth0.mcast_solicit = 
net.ipv4.neigh.lo.mcast_solicit = 
net.ipv4.neigh.default.mcast_solicit = 


# sysctl -a | grep pim

net.ipv4.conf.pimreg.arp_filter = 
net.ipv4.conf.pimreg.tag = 
net.ipv4.conf.pimreg.log_martians = 
net.ipv4.conf.pimreg.bootp_relay = 
net.ipv4.conf.pimreg.medium_id = 
net.ipv4.conf.pimreg.proxy_arp = 
net.ipv4.conf.pimreg.accept_source_route = 
net.ipv4.conf.pimreg.send_redirects = 
net.ipv4.conf.pimreg.rp_filter = 
net.ipv4.conf.pimreg.shared_media = 
net.ipv4.conf.pimreg.secure_redirects = 
net.ipv4.conf.pimreg.accept_redirects = 
net.ipv4.conf.pimreg.mc_forwarding = 
net.ipv4.conf.pimreg.forwarding = 
net.ipv4.neigh.pimreg.locktime = 
net.ipv4.neigh.pimreg.proxy_delay = 
net.ipv4.neigh.pimreg.anycast_delay = 
net.ipv4.neigh.pimreg.proxy_qlen = 
net.ipv4.neigh.pimreg.unres_qlen = 
net.ipv4.neigh.pimreg.gc_stale_time = 
net.ipv4.neigh.pimreg.delay_first_probe_time = 
net.ipv4.neigh.pimreg.base_reachable_time = 
net.ipv4.neigh.pimreg.retrans_time = 
net.ipv4.neigh.pimreg.app_solicit = 
net.ipv4.neigh.pimreg.ucast_solicit = 
net.ipv4.neigh.pimreg.mcast_solicit = 

More relevance:

It seems the most kernels(post v1) do support multicast by default or have CONFIG_IP_MULTICAST enabled while compiling. To check whether the compiled and running kernel subscribes to any multicast group, I would use netstat -g.

Check out the sysctl? net.ipv4.conf.all.mc_forwarding

the other possible multicast parameters are

# sysctl -a | grep igmp

net.ipv4.igmp_max_memberships = 20



# sysctl -a | grep mc

net.ipv4.conf.pimreg.mc_forwarding = 1    
net.ipv4.conf.ipsec0.mc_forwarding = 0
net.ipv4.conf.eth1.mc_forwarding = 1
net.ipv4.conf.eth0.mc_forwarding = 
net.ipv4.conf.lo.mc_forwarding = 
net.ipv4.conf.default.mc_forwarding = 
net.ipv4.conf.all.mc_forwarding = 
net.ipv4.neigh.pimreg.mcast_solicit = 
net.ipv4.neigh.ipsec0.mcast_solicit = 
net.ipv4.neigh.eth1.mcast_solicit = 
net.ipv4.neigh.eth0.mcast_solicit = 
net.ipv4.neigh.lo.mcast_solicit = 
net.ipv4.neigh.default.mcast_solicit = 


# sysctl -a | grep pim

net.ipv4.conf.pimreg.arp_filter = 
net.ipv4.conf.pimreg.tag = 
net.ipv4.conf.pimreg.log_martians = 
net.ipv4.conf.pimreg.bootp_relay = 
net.ipv4.conf.pimreg.medium_id = 
net.ipv4.conf.pimreg.proxy_arp = 
net.ipv4.conf.pimreg.accept_source_route = 
net.ipv4.conf.pimreg.send_redirects = 
net.ipv4.conf.pimreg.rp_filter = 
net.ipv4.conf.pimreg.shared_media = 
net.ipv4.conf.pimreg.secure_redirects = 
net.ipv4.conf.pimreg.accept_redirects = 
net.ipv4.conf.pimreg.mc_forwarding = 
net.ipv4.conf.pimreg.forwarding = 
net.ipv4.neigh.pimreg.locktime = 
net.ipv4.neigh.pimreg.proxy_delay = 
net.ipv4.neigh.pimreg.anycast_delay = 
net.ipv4.neigh.pimreg.proxy_qlen = 
net.ipv4.neigh.pimreg.unres_qlen = 
net.ipv4.neigh.pimreg.gc_stale_time = 
net.ipv4.neigh.pimreg.delay_first_probe_time = 
net.ipv4.neigh.pimreg.base_reachable_time = 
net.ipv4.neigh.pimreg.retrans_time = 
net.ipv4.neigh.pimreg.app_solicit = 
net.ipv4.neigh.pimreg.ucast_solicit = 
net.ipv4.neigh.pimreg.mcast_solicit = 

More relevance:

It seems the most kernels(post v1) do support multicast by default or have CONFIG_IP_MULTICAST enabled while compiling. To check whether the compiled and running kernel subscribes to any multicast group, I would use netstat -g.

It seems the most kernels(post v1) do support multicast by default or have CONFIG_IP_MULTICAST enabled while compiling. To check whether the compiled and running kernel subscribes to any multicast group, I would use netstat -g.

updated previous answer with new answer, deleted the new answer
Source Link
Nikhil Mulley
  • 8.3k
  • 33
  • 50
# sysctl -a | grep igmp

net.ipv4.igmp_max_memberships = 20



# sysctl -a | grep mc

net.ipv4.conf.pimreg.mc_forwarding = 1
     
net.ipv4.conf.ipsec0.mc_forwarding = 0
 
net.ipv4.conf.eth1.mc_forwarding = 1
 
net.ipv4.conf.eth0.mc_forwarding = 1

net.ipv4.conf.lo.mc_forwarding = 0

net.ipv4.conf.default.mc_forwarding = 0

net.ipv4.conf.all.mc_forwarding = 1

net.ipv4.neigh.pimreg.mcast_solicit = 3

net.ipv4.neigh.ipsec0.mcast_solicit = 0

net.ipv4.neigh.eth1.mcast_solicit = 3

net.ipv4.neigh.eth0.mcast_solicit = 3

net.ipv4.neigh.lo.mcast_solicit = 3

net.ipv4.neigh.default.mcast_solicit = 3



# sysctl -a | grep pim

net.ipv4.conf.pimreg.arp_filter = 0

net.ipv4.conf.pimreg.tag = 0

net.ipv4.conf.pimreg.log_martians = 0

net.ipv4.conf.pimreg.bootp_relay = 0

net.ipv4.conf.pimreg.medium_id = 0

net.ipv4.conf.pimreg.proxy_arp = 0

net.ipv4.conf.pimreg.accept_source_route = 1

net.ipv4.conf.pimreg.send_redirects = 1

net.ipv4.conf.pimreg.rp_filter = 0

net.ipv4.conf.pimreg.shared_media = 1

net.ipv4.conf.pimreg.secure_redirects = 1

net.ipv4.conf.pimreg.accept_redirects = 1

net.ipv4.conf.pimreg.mc_forwarding = 1

net.ipv4.conf.pimreg.forwarding = 1

net.ipv4.neigh.pimreg.locktime = 100

net.ipv4.neigh.pimreg.proxy_delay = 80

net.ipv4.neigh.pimreg.anycast_delay = 100

net.ipv4.neigh.pimreg.proxy_qlen = 64

net.ipv4.neigh.pimreg.unres_qlen = 3

net.ipv4.neigh.pimreg.gc_stale_time = 60

net.ipv4.neigh.pimreg.delay_first_probe_time = 5

net.ipv4.neigh.pimreg.base_reachable_time = 30

net.ipv4.neigh.pimreg.retrans_time = 100

net.ipv4.neigh.pimreg.app_solicit = 0

net.ipv4.neigh.pimreg.ucast_solicit = 3

net.ipv4.neigh.pimreg.mcast_solicit = 3

More relevance:

It seems the most kernels(post v1) do support multicast by default or have CONFIG_IP_MULTICAST enabled while compiling. To check whether the compiled and running kernel subscribes to any multicast group, I would use netstat -g.

It seems the most kernels(post v1) do support multicast by default.

[root@centos module]# grep CONFIG_IP_MULTICAST /usr/src/kernels/2.6.18-274.7.1.el5-i686/.config 
CONFIG_IP_MULTICAST=y
[root@centos module]# netstat -g
IPv6/IPv4 Group Memberships
Interface       RefCnt Group
--------------- ------ ---------------------
lo              1      all-systems.mcast.net
eth0            1      224.0.0.251
eth0            1      all-systems.mcast.net

I see that eth0 interface on my host thinks its subscribed 224.0.0.251 basic mcast group . Also alternatively, if I ping the group or the network and then all the known multicast enabled host networks are returned to me, I would say multicast is working on the host. Can you try netstat -g or cat /proc/net/igmp and see if it returns any groups on your host?

# sysctl -a | grep igmp

net.ipv4.igmp_max_memberships = 20



# sysctl -a | grep mc

net.ipv4.conf.pimreg.mc_forwarding = 1
 
net.ipv4.conf.ipsec0.mc_forwarding = 0
 
net.ipv4.conf.eth1.mc_forwarding = 1
 
net.ipv4.conf.eth0.mc_forwarding = 1

net.ipv4.conf.lo.mc_forwarding = 0

net.ipv4.conf.default.mc_forwarding = 0

net.ipv4.conf.all.mc_forwarding = 1

net.ipv4.neigh.pimreg.mcast_solicit = 3

net.ipv4.neigh.ipsec0.mcast_solicit = 0

net.ipv4.neigh.eth1.mcast_solicit = 3

net.ipv4.neigh.eth0.mcast_solicit = 3

net.ipv4.neigh.lo.mcast_solicit = 3

net.ipv4.neigh.default.mcast_solicit = 3



# sysctl -a | grep pim

net.ipv4.conf.pimreg.arp_filter = 0

net.ipv4.conf.pimreg.tag = 0

net.ipv4.conf.pimreg.log_martians = 0

net.ipv4.conf.pimreg.bootp_relay = 0

net.ipv4.conf.pimreg.medium_id = 0

net.ipv4.conf.pimreg.proxy_arp = 0

net.ipv4.conf.pimreg.accept_source_route = 1

net.ipv4.conf.pimreg.send_redirects = 1

net.ipv4.conf.pimreg.rp_filter = 0

net.ipv4.conf.pimreg.shared_media = 1

net.ipv4.conf.pimreg.secure_redirects = 1

net.ipv4.conf.pimreg.accept_redirects = 1

net.ipv4.conf.pimreg.mc_forwarding = 1

net.ipv4.conf.pimreg.forwarding = 1

net.ipv4.neigh.pimreg.locktime = 100

net.ipv4.neigh.pimreg.proxy_delay = 80

net.ipv4.neigh.pimreg.anycast_delay = 100

net.ipv4.neigh.pimreg.proxy_qlen = 64

net.ipv4.neigh.pimreg.unres_qlen = 3

net.ipv4.neigh.pimreg.gc_stale_time = 60

net.ipv4.neigh.pimreg.delay_first_probe_time = 5

net.ipv4.neigh.pimreg.base_reachable_time = 30

net.ipv4.neigh.pimreg.retrans_time = 100

net.ipv4.neigh.pimreg.app_solicit = 0

net.ipv4.neigh.pimreg.ucast_solicit = 3

net.ipv4.neigh.pimreg.mcast_solicit = 3 
# sysctl -a | grep igmp

net.ipv4.igmp_max_memberships = 20



# sysctl -a | grep mc

net.ipv4.conf.pimreg.mc_forwarding = 1    
net.ipv4.conf.ipsec0.mc_forwarding = 0
net.ipv4.conf.eth1.mc_forwarding = 1
net.ipv4.conf.eth0.mc_forwarding = 
net.ipv4.conf.lo.mc_forwarding = 
net.ipv4.conf.default.mc_forwarding = 
net.ipv4.conf.all.mc_forwarding = 
net.ipv4.neigh.pimreg.mcast_solicit = 
net.ipv4.neigh.ipsec0.mcast_solicit = 
net.ipv4.neigh.eth1.mcast_solicit = 
net.ipv4.neigh.eth0.mcast_solicit = 
net.ipv4.neigh.lo.mcast_solicit = 
net.ipv4.neigh.default.mcast_solicit = 


# sysctl -a | grep pim

net.ipv4.conf.pimreg.arp_filter = 
net.ipv4.conf.pimreg.tag = 
net.ipv4.conf.pimreg.log_martians = 
net.ipv4.conf.pimreg.bootp_relay = 
net.ipv4.conf.pimreg.medium_id = 
net.ipv4.conf.pimreg.proxy_arp = 
net.ipv4.conf.pimreg.accept_source_route = 
net.ipv4.conf.pimreg.send_redirects = 
net.ipv4.conf.pimreg.rp_filter = 
net.ipv4.conf.pimreg.shared_media = 
net.ipv4.conf.pimreg.secure_redirects = 
net.ipv4.conf.pimreg.accept_redirects = 
net.ipv4.conf.pimreg.mc_forwarding = 
net.ipv4.conf.pimreg.forwarding = 
net.ipv4.neigh.pimreg.locktime = 
net.ipv4.neigh.pimreg.proxy_delay = 
net.ipv4.neigh.pimreg.anycast_delay = 
net.ipv4.neigh.pimreg.proxy_qlen = 
net.ipv4.neigh.pimreg.unres_qlen = 
net.ipv4.neigh.pimreg.gc_stale_time = 
net.ipv4.neigh.pimreg.delay_first_probe_time = 
net.ipv4.neigh.pimreg.base_reachable_time = 
net.ipv4.neigh.pimreg.retrans_time = 
net.ipv4.neigh.pimreg.app_solicit = 
net.ipv4.neigh.pimreg.ucast_solicit = 
net.ipv4.neigh.pimreg.mcast_solicit = 

More relevance:

It seems the most kernels(post v1) do support multicast by default or have CONFIG_IP_MULTICAST enabled while compiling. To check whether the compiled and running kernel subscribes to any multicast group, I would use netstat -g.

It seems the most kernels(post v1) do support multicast by default.

[root@centos module]# grep CONFIG_IP_MULTICAST /usr/src/kernels/2.6.18-274.7.1.el5-i686/.config 
CONFIG_IP_MULTICAST=y
[root@centos module]# netstat -g
IPv6/IPv4 Group Memberships
Interface       RefCnt Group
--------------- ------ ---------------------
lo              1      all-systems.mcast.net
eth0            1      224.0.0.251
eth0            1      all-systems.mcast.net

I see that eth0 interface on my host thinks its subscribed 224.0.0.251 basic mcast group . Also alternatively, if I ping the group or the network and then all the known multicast enabled host networks are returned to me, I would say multicast is working on the host. Can you try netstat -g or cat /proc/net/igmp and see if it returns any groups on your host?

Source Link
Nikhil Mulley
  • 8.3k
  • 33
  • 50

Check out the sysctl? net.ipv4.conf.all.mc_forwarding

the other possible multicast parameters are

# sysctl -a | grep igmp

net.ipv4.igmp_max_memberships = 20



# sysctl -a | grep mc

net.ipv4.conf.pimreg.mc_forwarding = 1

net.ipv4.conf.ipsec0.mc_forwarding = 0

net.ipv4.conf.eth1.mc_forwarding = 1

net.ipv4.conf.eth0.mc_forwarding = 1

net.ipv4.conf.lo.mc_forwarding = 0

net.ipv4.conf.default.mc_forwarding = 0

net.ipv4.conf.all.mc_forwarding = 1

net.ipv4.neigh.pimreg.mcast_solicit = 3

net.ipv4.neigh.ipsec0.mcast_solicit = 0

net.ipv4.neigh.eth1.mcast_solicit = 3

net.ipv4.neigh.eth0.mcast_solicit = 3

net.ipv4.neigh.lo.mcast_solicit = 3

net.ipv4.neigh.default.mcast_solicit = 3



# sysctl -a | grep pim

net.ipv4.conf.pimreg.arp_filter = 0

net.ipv4.conf.pimreg.tag = 0

net.ipv4.conf.pimreg.log_martians = 0

net.ipv4.conf.pimreg.bootp_relay = 0

net.ipv4.conf.pimreg.medium_id = 0

net.ipv4.conf.pimreg.proxy_arp = 0

net.ipv4.conf.pimreg.accept_source_route = 1

net.ipv4.conf.pimreg.send_redirects = 1

net.ipv4.conf.pimreg.rp_filter = 0

net.ipv4.conf.pimreg.shared_media = 1

net.ipv4.conf.pimreg.secure_redirects = 1

net.ipv4.conf.pimreg.accept_redirects = 1

net.ipv4.conf.pimreg.mc_forwarding = 1

net.ipv4.conf.pimreg.forwarding = 1

net.ipv4.neigh.pimreg.locktime = 100

net.ipv4.neigh.pimreg.proxy_delay = 80

net.ipv4.neigh.pimreg.anycast_delay = 100

net.ipv4.neigh.pimreg.proxy_qlen = 64

net.ipv4.neigh.pimreg.unres_qlen = 3

net.ipv4.neigh.pimreg.gc_stale_time = 60

net.ipv4.neigh.pimreg.delay_first_probe_time = 5

net.ipv4.neigh.pimreg.base_reachable_time = 30

net.ipv4.neigh.pimreg.retrans_time = 100

net.ipv4.neigh.pimreg.app_solicit = 0

net.ipv4.neigh.pimreg.ucast_solicit = 3

net.ipv4.neigh.pimreg.mcast_solicit = 3