allow udp/igmp broadcast to different subnet

i have a streaming(dlna) server using udp protocol on 192.168.88.2/30,the client is at 192.168.66.2,somehow the udp broadcast cann’t arrive at the client,from the server i can ping to the client and client’s gateway 192.168.66.1,the client connection is fine,i cann’t access internet through it.

my firewall rule is simple :smiley: :

 0   chain=srcnat action=masquerade out-interface=Wan

ip route:

 0 A S  0.0.0.0/0                          192.168.1.1        1       
 1 ADC  192.168.1.0/24     192.168.1.2     Wan                0       
 3 ADC  192.168.66.0/30    192.168.66.1    Client        0       
 5 ADC  192.168.88.0/30    192.168.88.1    Server        0

from the packet sniffer:

You have to configure PM or IGMP proxy
http://wiki.mikrotik.com/wiki/Manual:Routing/Multicast

http://wiki.mikrotik.com/wiki/Manual:Routing/IGMP-Proxy

which one is better for high traffic?i am going to use this for HD 1080p streaming,the stream normally around 8mbps-260mbps,can you give me example implementation?i am quite a newbie.thanks.

I have been struggling with this myself. I believe that the 224.x.x.x multicast traffic will not be forwarded since it is intended to be only for one network segment. Unless there are some settings I don’t know about it appears that Mikrotik’s implementation is correct although it would be desirable to have the option to forward that traffic to other segments. In my own investigation using the sniffer I see the packets coming into the router but I never see them leaving.

224.0.0.0/24 is not forwarded. You can try to enter this address in “alternate-subnets”, but I doubt that it will work.

You are indeed correct. Alternate subnets does not work since they are not actually alternate multicast subnets. I do not believe that there is a solution to this unless Mikrotik exposes some of these multicast settings. For example it is an option in DD-WRT as I can see that all 224.0.0.0/4 packets are indeed forwarded by the router to all other segments.

Pablo, do you have problems with whole 224.0.0.0/4 ? Do you have pim or IGMP proxy configured on the router?

Apologies - I should have been clearer. I am using PIM.

The problems between subnets/segments are not with all of 224.0.0.0/4 but rather with 224.0.0.0/24 (224.0.0.0 - 224.0.0.255) which are intended for the local subnet only. Some routers (dd-wrt for example) do seem to have settings to allow those to be forwarded beyond the subnet/segment. Given the flexibility of RouterOS I was hoping that there was such a setting even though 224.0.0.0/24 is designated for multicasting on local subnet only.

As far as I know it is not possible to forward 224.0.0.0/24 it breaks standards.

@mrz you still haven’t answered my question :frowning:,which one is the best?

I was trying with pim
my config is like this

Server(eth1)192.168.88.2/30->Client(eth6)192.168.66.2/30

here is my pim interface after following the guide : http://wiki.mikrotik.com/wiki/Multicast_detailed_example

[admin@local] /routing pim interface> pr
Flags: X - disabled, I - inactive, D - dynamic, R - designated-router, v1 - IGMPv1, v2 - IGMPv2, v3 - IGMPv3 
 #      INTERFACE                                               PROTOCOLS                                             
 0   v2 all                                                     pim                                                   
                                                                igmp                                                  
 1 I v2 Client                                             pim                                                   
                                                                igmp                                                  
 2 DRv2 Wan                                                     pim                                                   
                                                                igmp                                                  
 3 DRv2 House                                                 pim                                                   
                                                                igmp                                                  
 4 DRv2 Server                                             pim                                                   
                                                                igmp                                                  
 5 DR   register                                                pim

pim rp

[admin@local] /routing pim rp> pr
Flags: D - dynamic, X - disabled 
 #    ADDRESS         TYPE      PRIORITY  
 0    192.168.66.1    static    192

when i do the ip route it throws an error :

[admin@local]/ip route add 224.0.1.20/32 via 192.168.66.1
expected end of command (line 1 column 15)

i am using rb1100 if that helps,i really need assistance,anyone?

just tested seems working :slight_smile: ,does my settings above is the right away?but in my log throw up some many error :frowning:

06:38:35 pim,warning JoinDesired(,G) = true: RP for group 239.255.255.250: not found
06:39:35 pim,warning JoinDesired(
,G) = true: RP for group 239.255.255.250: not found
06:40:35 pim,warning JoinDesired(*,G) = true: RP for group 239.255.255.250: not found
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 315: no RP address for this group
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 387: no RP address for this group
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 363: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 383: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 363: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 379: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 395: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 379: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 377: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 393: no RP address for this group

06:41:07 system,info PIM static RP added by Stellar
06:43:34 system,info PIM interface added by Stellar
07:02:28 pim,info Added new address to interface Client: 192.168.66.1/30
07:02:28 pim,info PIM interface started: Client
07:02:28 pim,info IGMP interface started: Client
07:02:28 dhcp,info dhcp-Client assigned 192.168.66.2 to 00:19:C5:4B:EE:1B
08:28:10 dhcp,info dhcp-Client deassigned 192.168.66.2 from 00:19:C5:4B:EE:1B
08:28:10 pim,info PIM interface stopped: Client
08:28:10 pim,info IGMP interface stopped: Client
08:28:10 pim,warning JoinDesired(S,G) = false: upstream neighbor for source 192.168.66.1 and group 239.255.255.250: not found
08:28:13 pim,info Added new address to interface Client: 192.168.66.1/30
08:28:13 pim,info PIM interface started: Client
08:28:13 pim,info IGMP interface started: Client
08:28:14 pim,info PIM interface stopped: Client
08:28:14 pim,info IGMP interface stopped: Client
08:28:28 pim,info Added new address to interface Client: 192.168.66.1/30
08:28:28 pim,info PIM interface started: Client
08:28:28 pim,info IGMP interface started: Client
08:28:28 dhcp,info dhcp-Client assigned 192.168.66.2 to 00:19:C5:4B:EE:1B

@mrz you still haven’t answered my question ,which one is the best?

IGMP proxy is acting as multicast proxy. For example, if your ISP is streaming IPTV and you want your home PC which is behind a router to receive that stream, then use IGMP proxy.

PIM is a set of tools to route multicast traffic across the network.

ok thank you mrz,hmm but the topology is lan not wan,if you read above my post i posted the topology,i was implemented through PIM,it works,now i am able to stream across the other subnet,here is the warning shows up on the log :

06:38:35 pim,warning JoinDesired(,G) = true: RP for group 239.255.255.250: not found
06:39:35 pim,warning JoinDesired(
,G) = true: RP for group 239.255.255.250: not found
06:40:35 pim,warning JoinDesired(*,G) = true: RP for group 239.255.255.250: not found
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 315: no RP address for this group
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 387: no RP address for this group
06:40:44 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 363: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 383: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 324: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 363: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 379: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 395: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 379: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 377: no RP address for this group
06:40:45 pim,warning RX WHOLEPKT signal: vif_index = 31 src = 192.168.1.1 dst = 239.255.255.250 len = 393: no RP address for this group

06:41:07 system,info PIM static RP added by Stellar
06:43:34 system,info PIM interface added by Stellar
07:02:28 pim,info Added new address to interface Client: 192.168.66.1/30
07:02:28 pim,info PIM interface started: Client
07:02:28 pim,info IGMP interface started: Client
07:02:28 dhcp,info dhcp-Client assigned 192.168.66.2 to 00:19:C5:4B:EE:1B
08:28:10 dhcp,info dhcp-Client deassigned 192.168.66.2 from 00:19:C5:4B:EE:1B
08:28:10 pim,info PIM interface stopped: Client
08:28:10 pim,info IGMP interface stopped: Client
08:28:10 pim,warning JoinDesired(S,G) = false: upstream neighbor for source 192.168.66.1 and group 239.255.255.250: not found
08:28:13 pim,info Added new address to interface Client: 192.168.66.1/30
08:28:13 pim,info PIM interface started: Client
08:28:13 pim,info IGMP interface started: Client
08:28:14 pim,info PIM interface stopped: Client
08:28:14 pim,info IGMP interface stopped: Client
08:28:28 pim,info Added new address to interface Client: 192.168.66.1/30
08:28:28 pim,info PIM interface started: Client
08:28:28 pim,info IGMP interface started: Client
08:28:28 dhcp,info dhcp-Client assigned 192.168.66.2 to 00:19:C5:4B:EE:1B

can you give the script to fix it?i am really lost :frowning:

disable multicast on wan interface then warnings will be gone.

hmm,i seem couldn’t remove it :

[Stellar@Solaris] /routing pim interface> pr        
Flags: X - disabled, I - inactive, D - dynamic, R - designated-router, 
v1 - IGMPv1, v2 - IGMPv2, v3 - IGMPv3 
 #      INTERFACE                            PROTOCOLS                          
 0   v2 all                                  pim                                
                                             igmp                               
 1  Rv2 Client                          pim                                
                                             igmp                               
[b] 2 DRv2 Wan                                  pim                                
                                             igmp    [/b]                           
 3 DRv2 Hotspot                              pim                                
                                             igmp                               
 4 DRv2 Server                          pim                                
                                             igmp                               
 5 DRv2 House                               pim                                
                                             igmp                               
 6 DR   register                             pim

[admin@local] /routing pim interface> remove 2
[b]no such item (4)[/b]

i am enabling upnp on all interface,could be that’s why i can’t remove it?

[admin@local] /ip upnp interfaces> pr
Flags: X - disabled 
 #   INTERFACE                                                          TYPE    
 0   Wan                                                                external
 1   Hotspot                                                            internal
 2   Server                                                        internal
 3   Client                                                        internal
 4   House                                                              internal

You can’t remove it because it is dynamically added. Remove “all” and add each interface you need manually (in your case add only “Server”, “House”)

i can remove all except Wan and register interface

[admin@local] /routing pim interface> pr
Flags: X - disabled, I - inactive, D - dynamic, R - designated-router,
v1 - IGMPv1, v2 - IGMPv2, v3 - IGMPv3

INTERFACE PROTOCOLS

0 D Wan pim
1 DR register pim
[Stellar@Solaris] /routing pim interface> remove 0
no such item (4)
[admin@local] /routing pim interface> remove 1
no such item (4)

it seems this a bug,fixed with uninstalling and reinstalling multicast package :slight_smile:

You will still see dynamic entry if there is some multicast traffic on it or somebody has joned to that interface. So its not exactly a bug.

it’s not the dynamic entry that i’ve pointed out as the bug but the problem which prevent me cann’t remove Wan interface from /routing pim interface.Btw found out this warning blue line on my log :

05:52:11 pim,warning JoinDesired(S,G) = false: upstream neighbor for source 192.1
68.66.1 and group 239.255.255.250: not found
>
05:52:11 pim,warning JoinDesired(S,G) = false: upstream neighbor for source 192.1
68.66.2 and group 239.255.255.250: not found
06:00:52 dhcp,info client deassigned 192.168.66.2 from XX:XX:XX:XX:XX:X

it seems i still did something wrong :frowning: