IGMP‑Mld‑Snooping
AsterNOS-Igmp-Mld-Snooping
This chapter provides examples on how to use Netconf to manage igmp-mld-snoopig configurations on AsterNOS devices.
Enable L2MC
NOTE: Igmp-mld snooping and mvlan can take effect only when the global enable is true.
Request example to enable mcast-snooping via edit-config.
<config>
<top>
<igmp-mld-snooping>
<global operation="merge">
<enabled>true</enabled>
</global>
</igmp-mld-snooping>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:54ef1dfb-ca04-4f75-832c-6eb45c9258d5">
<ok/>
</rpc-reply>Disable L2MC
Request example to disable mcast-snooping via edit-config.
<config>
<top>
<igmp-mld-snooping>
<global operation="merge">
<enabled>false</enabled>
</global>
</igmp-mld-snooping>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:54ef1dfb-ca04-4f75-832c-6eb45c9258d5">
<ok/>
</rpc-reply>Create IGMP/MLD Snooping For VLAN
NOTE: Other parameters can only be configured when enable is true. igmp/mld proxy and igmp/mld querier can't be enabled together.
Request example to enable igmp snooping and querier for vlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<igmp-snooping>
<snooping>
<enable>true</enable>
<fast-leave>true</fast-leave>
<proxy-enable>false</proxy-enable>
<querier-enable>true</querier-enable>
<querier-ip>3.4.5.6</querier-ip>
<version>v2</version>
<query-interval>100</query-interval>
<query-max-response-time>3</query-max-response-time>
<robustness>2</robustness>
<last-member-query-interval>100</last-member-query-interval>
</snooping>
</igmp-snooping>
<mld-snooping>
<snooping>
<enable>true</enable>
<fast-leave>true</fast-leave>
<proxy-enable>false</proxy-enable>
<querier-enable>true</querier-enable>
<querier-ip>3000::1</querier-ip>
<version>v2</version>
<query-interval>100</query-interval>
<query-max-response-time>3</query-max-response-time>
<robustness>2</robustness>
<last-member-query-interval>100</last-member-query-interval>
</snooping>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:5e585d5e-5c86-4b0a-b5c4-ec74fe4a8e11">
<ok/>
</rpc-reply>GET IGMP/MLD Snooping Of VLAN
Request example to get igmp-mld snooping configurations of vlan 100 via edit-config.
<filter type="subtree">
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:8b748c6c-4588-48a9-8475-1dc4e8b3dd39">
<data>
<top>
<vlans xmlns="http://asterfusion.com/ns/yang/asternos-vlan">
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<igmp-snooping>
<snooping>
<enable>true</enable>
<fast-leave>true</fast-leave>
<proxy-enable>false</proxy-enable>
<querier-enable>true</querier-enable>
<querier-ip>3.4.5.6</querier-ip>
<version>v2</version>
<query-interval>100</query-interval>
<query-max-response-time>3</query-max-response-time>
<robustness>2</robustness>
<last-member-query-interval>100</last-member-query-interval>
</snooping>
<mrouter>
<mrouter-aging>180</mrouter-aging>
</mrouter>
</igmp-snooping>
<mld-snooping>
<snooping>
<enable>true</enable>
<fast-leave>true</fast-leave>
<proxy-enable>false</proxy-enable>
<querier-enable>true</querier-enable>
<querier-ip>3000::1</querier-ip>
<version>v2</version>
<query-interval>100</query-interval>
<query-max-response-time>3</query-max-response-time>
<robustness>2</robustness>
<last-member-query-interval>100</last-member-query-interval>
</snooping>
<mrouter>
<mrouter-aging>180</mrouter-aging>
</mrouter>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</data>
</rpc-reply>Delete IGMP/MLD Snooping From VLAN
Request example to delete igmp-mld snooping of vlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping operation="delete">
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:6848e0d6-1efa-4299-93dc-ec1419a35e58">
<ok/>
</rpc-reply>Create Static Mrouter Interface And Set Mrouter Aging Of VLAN
NOTE: Mrouter interface can it truly take effect only when be added to corresponding VLAN. The default mrouter aging time is 180 s.
Request example to create static mrouter interface of vlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<igmp-snooping>
<mrouter>
<mrouter-interfaces>
<mrouter-interface>
<interface>Ethernet1</interface>
<type>static</type>
</mrouter-interface>
<mrouter-interface>
<interface>Ethernet2</interface>
<type>static</type>
</mrouter-interface>
</mrouter-interfaces>
<mrouter-aging>500</mrouter-aging>
</mrouter>
</igmp-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:fe960fc9-0761-41cd-bc71-db6669027d4b">
<ok/>
</rpc-reply>Get Mrouter Information Of VLAN
NOTE: Currently, only static mrouter interfaces can be obtained.
Request example to get mrouter Information of vlan 100 via get-config.
<filter type="subtree">
<top xmlns="http://asterfusion.com/ns/yang/asternos-interfaces">
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<igmp-snooping>
<mrouter>
</mrouter>
</igmp-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:22f3d443-9e0d-4a9c-9e79-58501d7dbbcd">
<data>
<top>
<vlans xmlns="http://asterfusion.com/ns/yang/asternos-vlan">
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<igmp-snooping>
<mrouter>
<mrouter-aging>500</mrouter-aging>
<mrouter-interfaces>
<mrouter-interface>
<interface>Ethernet1</interface>
<type>static</type>
</mrouter-interface>
<mrouter-interface>
<interface>Ethernet2</interface>
<type>static</type>
</mrouter-interface>
</mrouter-interfaces>
</mrouter>
</igmp-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</data>
</rpc-reply>Delete Static Mrouter Interface Of VLAN
Request example to delete the specified static mrouter interface of vlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<igmp-snooping>
<mrouter>
<mrouter-interfaces>
<mrouter-interface operation="delete">
<interface>Ethernet1</interface>
</mrouter-interface>
</mrouter-interfaces>
</mrouter>
</igmp-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:68c1536f-e73f-4314-9488-8f4833e286d8">
<ok/>
</rpc-reply>Set Multicast Group Limit Of Interface
Request example to set multicast group limit of interface 1 on vlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<group-limits>
<group-limit>
<interface>Ethernet1</interface>
<max-group>10</max-group>
</group-limit>
</group-limits>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:68c1536f-e73f-4314-9488-8f4833e286d8">
<ok/>
</rpc-reply>Create L2 Static Multicast Group
NOTE: Currently does not support configuring source ip(except 0.0.0.0 or 0::0) when creating static multicast group. Static multicast group only support include mode.
Request example to create l2 static multicast group via edit-config.
<config>
<top>
<igmp-mld-snooping operation="create">
<groups>
<group>
<vlan>100</vlan>
<dst-ip>224.1.1.1</dst-ip>
<src-ip>0.0.0.0</src-ip>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
</output-interface>
</output-interfaces>
</group>
<group>
<vlan>100</vlan>
<dst-ip>ff1e::1:1:1:1</dst-ip>
<src-ip>0::0</src-ip>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
</output-interface>
</output-interfaces>
</group>
</groups>
</igmp-mld-snooping>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:9cd62d4f-8f9d-4ee3-a256-bc08e9bf9739">
<ok/>
</rpc-reply>Get Current Static Multicast Group
NOTE: Currently, only static multicast group can be obtained.
Request example to get all static multicast group via get-config.
<filter type="subtree">
<top>
<igmp-mld-snooping>
<groups/>
</igmp-mld-snooping>
</top>
</filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:a54d56ff-7560-4bc5-a4e7-d530def7ecc6">
<data>
<top>
<igmp-mld-snooping xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<groups>
<group>
<dst-ip>224.1.1.1</dst-ip>
<src-ip>0.0.0.0</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
</output-interface>
</output-interfaces>
</group>
<group>
<dst-ip>ff1e::1:1:1:1</dst-ip>
<src-ip>::</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
</output-interface>
</output-interfaces>
</group>
</groups>
</igmp-mld-snooping>
</top>
</data>
</rpc-reply>Delete L2 Static Multicast Group
Request example to delete specified l2 static multicast group edit-config.
<config>
<top>
<igmp-mld-snooping>
<groups>
<group operation="delete">
<vlan>100</vlan>
<dst-ip>224.1.1.1</dst-ip>
<src-ip>0.0.0.0</src-ip>
</group>
</groups>
</igmp-mld-snooping>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:83141dab-051a-409a-a26c-bcb0c05744ac">
<ok/>
</rpc-reply>Delete All L2 Static Multicast Group
Request example to delete all l2 static multicast group edit-config.
<config>
<top>
<igmp-mld-snooping>
<groups operation="delete">
</groups>
</igmp-mld-snooping>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:26504b77-d5a4-42ab-8090-0c15d9709e89">
<ok/>
</rpc-reply>Create MVLAN
Request example to create mld-snooping mvlan 100 with user vlan 101/102/103/105 edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<mld-snooping>
<mvlan operation="create">
<user-vlans>101</user-vlans>
<user-vlans>102</user-vlans>
<user-vlans>103</user-vlans>
<user-vlans>105</user-vlans>
</mvlan>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:26504b77-d5a4-42ab-8090-0c15d9709e89">
<ok/>
</rpc-reply>Get MVLAN
Request example to get mld-snooping mvlan 100 via edit-config.
<filter type="subtree">
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<mld-snooping>
<mvlan>
</mvlan>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</filter>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:f12a2ec3-2b83-47ee-901b-216636be2598">
<data>
<top>
<vlans xmlns="http://asterfusion.com/ns/yang/asternos-vlan">
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<mld-snooping>
<mvlan>
<user-vlans>101</user-vlans>
<user-vlans>102</user-vlans>
<user-vlans>103</user-vlans>
<user-vlans>105</user-vlans>
</mvlan>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</data>
</rpc-reply>Modify MVLAN
Request example to modify mld-snooping mvlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<mld-snooping>
<mvlan operation="replace">
<user-vlans>101</user-vlans>
<user-vlans>102</user-vlans>
</mvlan>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:26504b77-d5a4-42ab-8090-0c15d9709e89">
<ok/>
</rpc-reply>Delete MVLAN
Request example to delete mld-snooping mvlan 100 via edit-config.
<config>
<top>
<vlans>
<vlan>
<vlanid>100</vlanid>
<igmp-mld-snooping>
<mld-snooping>
<mvlan operation="delete">
</mvlan>
</mld-snooping>
</igmp-mld-snooping>
</vlan>
</vlans>
</top>
</config>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:7e3584b4-66d6-40d3-afc7-462cc05b6c28">
<ok/>
</rpc-reply>Show The Multicast Groups Of Device
NOTE: All effective multicast table entries will be displayed, including static and dynamic table entries.
Request example to show multicast group of vlan 100 via rpc show-igmp-mld-snooping-group.
<show-igmp-mld-snooping-group>
<vlan>100</vlan>
</show-igmp-mld-snooping-group>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:d1ee0e18-fb26-47aa-942c-10e20b338d32">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<groups>
<group>
<dst-ip>224.1.1.1</dst-ip>
<src-ip>0.0.0.0</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
<mode>include</mode>
<type>static</type>
</output-interface>
</output-interfaces>
</group>
<group>
<dst-ip>224.1.1.2</dst-ip>
<src-ip>0.0.0.0</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
<mode>include</mode>
<type>dynamic</type>
</output-interface>
</output-interfaces>
</group>
<group>
<dst-ip>ff1e::1:1:1:1</dst-ip>
<src-ip>::</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
<mode>include</mode>
<type>static</type>
</output-interface>
</output-interfaces>
</group>
</groups>
</data>
</rpc-reply>Request example to show multicast group of all vlan via rpc show-igmp-mld-snooping-group.
<show-igmp-mld-snooping-group/>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:7b1acc26-2ba2-47a2-9a42-b17109934994">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<groups>
<group>
<dst-ip>224.1.1.1</dst-ip>
<src-ip>0.0.0.0</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
<mode>include</mode>
<type>static</type>
</output-interface>
</output-interfaces>
</group>
<group>
<dst-ip>224.1.1.2</dst-ip>
<src-ip>0.0.0.0</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
<mode>include</mode>
<type>dynamic</type>
</output-interface>
</output-interfaces>
</group>
<group>
<dst-ip>ff1e::1:1:1:1</dst-ip>
<src-ip>::</src-ip>
<vlan>100</vlan>
<output-interfaces>
<output-interface>
<interface>Ethernet1</interface>
<uvlan>100</uvlan>
<mode>include</mode>
<type>static</type>
</output-interface>
</output-interfaces>
</group>
</groups>
</data>
</rpc-reply>Show IGMP-snooping Configurations Of VLAN
Request example to show igmp snooping configurations of vlan 100 via rpc show-igmp-snooping.
<show-igmp-snooping>
<vlan>100</vlan>
</show-igmp-snooping>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:cb5fd1a1-bac8-493d-b701-8bf1203d7682">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<snooping>
<vlan>100</vlan>
<enable>true</enable>
<fast-leave>false</fast-leave>
<proxy-enable>false</proxy-enable>
<querier-enable>false</querier-enable>
<querier-ip>0.0.0.0</querier-ip>
<version>v2</version>
<robustness>2</robustness>
<last-member-query-interval>1000</last-member-query-interval>
</snooping>
</data>
</rpc-reply>Show MLD-snooping Configurations Of VLAN
Request example to show mld snooping configurations of vlan 100 via rpc show-mld-snooping.
<show-mld-snooping>
<vlan>100</vlan>
</show-mld-snooping>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:99ce6690-729b-4c9c-9c4a-cfa604cd5e7d">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<snooping>
<vlan>100</vlan>
<enable>true</enable>
<fast-leave>false</fast-leave>
<proxy-enable>false</proxy-enable>
<querier-enable>false</querier-enable>
<querier-ip>::</querier-ip>
<version>v1</version>
<robustness>2</robustness>
<last-member-query-interval>1000</last-member-query-interval>
</snooping>
</data>
</rpc-reply>Show IGMP-snooping MVLAN Configurations
Request example to show igmp snooping mvlan configurations via rpc show-igmp-snooping-mvlan.
<show-igmp-snooping-mvlan/>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:b9494ffe-cee8-42be-8803-688ab45b1558">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<mvlan>
<vlan>100</vlan>
<user-vlans>101</user-vlans>
<user-vlans>102</user-vlans>
</mvlan>
</data>
</rpc-reply>Show MLD-snooping MVLAN Configurations
Request example to show mld snooping mvlan configurations via rpc mvlan.
<show-mld-snooping-mvlan/>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:3e16b1a4-3cff-4e0f-9593-c82cc37e5cb8">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<mvlan>
<vlan>100</vlan>
<user-vlans>101</user-vlans>
<user-vlans>102</user-vlans>
</mvlan>
</data>
</rpc-reply>Show The IGMP Mrouter Information
Request example to show igmp mrouter information via rpc show-igmp-snooping-mrouter.
NOTE: All effective igmp mrouter will be displayed, including static and dynamic mrouter.
<show-igmp-snooping-mrouter/>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:031611b1-bd1c-4507-8ad6-4995b65525a4">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<mrouter>
<vlan>100</vlan>
<aging>500</aging>
<interfaces>
<interface>Ethernet1</interface>
<type>static</type>
</interfaces>
<interfaces>
<interface>Ethernet3</interface>
<type>dynamic</type>
</interfaces>
</mrouter>
</data>
</rpc-reply>Show The MLD Mrouter Information
Request example to show mld mrouter information via rpc show-mld-snooping-mrouter.
NOTE: All effective mld mrouter will be displayed, including static and dynamic mrouter.
<show-mld-snooping-mrouter/>Response example
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:27741f46-c77a-4091-97e5-e86eab4984ae">
<data xmlns="http://asterfusion.com/ns/yang/asternos-igmp-mld-snooping">
<mrouter>
<vlan>100</vlan>
<aging>180</aging>
<interfaces>
<interface>Ethernet1</interface>
<type>static</type>
</interfaces>
<interfaces>
<interface>Ethernet3</interface>
<type>dynamic</type>
</interfaces>
</mrouter>
</data>
</rpc-reply>