Here is multicast issue, that I would like to allow multicast traffic only on GRE tunnel, so please, see the attachment, give me your idea it it would work.
According to the longest match route entry for multicast source, RPF check will fail even you add ' ip mroute 0/0 tunnel0' , I think you should add more specific host route entry to accomplish your goal like ' ip mroute x.x.x.x 0.0.0.0 (muticast source ) tunnel 0' . and you should enable ip pim neighbor on the tunnel also.
Yes, I agreed your suggestion we need to specify the source & RP information as mroute static
If we specify the source and RP as mroute static, then, can we accomplish to separate the multicast and data traffic? my intention is multicast traffic is only allowed in GRE tunnel without impacting exiting data traffic.
I do not disagree with the solutions you provided, just to add one more solution to this. We can play with prefix list instead of routing. Block entire class d family in physical path and allow the same in the GRE and block rest in the GRE. That will also solve the purpose.