Hi Nagp, I’d recommend option 1, since the mechanisms to achieve it are already in place.
To add a path to receive traffic for a multicast FIB entry is much the same as for unicast (i.e. see ip6_create_mfib_with_table_id() where we add the special IPv6 ND entries). The additional configuration required for multicast is for you to decide on which interfaces to accept the incoming multicast packets. If you are accepting only on specific interfaces, then you can add a path for the entry that specifies ACCEPT (see ip6_mfib_interface_enable_disable()). If you want to accept from any interface then you can set a flag on the entry to that effect (see dhcp6_proxy_set_server()). Post lookup, mcast packets will be sent to ipX_local and then onto your handler registered through ipX_register_protocol(). Hth, neale From: <vpp-dev-boun...@lists.fd.io> on behalf of Nagaprabhanjan Bellaru <nagp.li...@gmail.com> Date: Monday, 22 May 2017 at 08:05 To: vpp-dev <vpp-dev@lists.fd.io> Subject: [vpp-dev] What's a correct way to process IP multicast packets? I was wondering if any of the following options work: * Have a dpo-receive assigned to a multicast address and use the ip protocol type to punt packets to a custom node in graph * Have a custom dpo type created and redirect packets directly from ip lookup with a "fib_table_entry_special_dpo_add" Which is recommended? Is there any better way to do this? Thanks, -nagp
_______________________________________________ vpp-dev mailing list vpp-dev@lists.fd.io https://lists.fd.io/mailman/listinfo/vpp-dev