mcastmngr: Implement APAS support via VLAN translation.
Add support for APAS by adding VLAN tags to untagged IGMP/MLD packets ingressing on the bridge.
A setup can be done with the following commands where VID 101 is the IPTV VLAN:
uci add network bridge-vlan # =cfg0da1b0
uci set network.@bridge-vlan[-1].device='br-lan'
uci set network.@bridge-vlan[-1].vlan='1'
uci add_list network.@bridge-vlan[-1].ports='eth0.1:u*'
uci add_list network.@bridge-vlan[-1].ports='eth0.2:u*'
uci add_list network.@bridge-vlan[-1].ports='eth0.3:u*'
uci add_list network.@bridge-vlan[-1].ports='eth3:u*'
uci add_list network.@bridge-vlan[-1].ports='eth4:u*'
uci add network bridge-vlan # =cfg0ea1b0
uci set network.@bridge-vlan[-1].device='br-lan'
uci set network.@bridge-vlan[-1].vlan='101'
uci add_list network.@bridge-vlan[-1].ports='eth0.1'
uci add_list network.@bridge-vlan[-1].ports='eth0.2'
uci add_list network.@bridge-vlan[-1].ports='eth0.3'
uci add_list network.@bridge-vlan[-1].ports='eth3'
uci add_list network.@bridge-vlan[-1].ports='eth4:t'
uci commit
uci -q delete mcast.igmp_proxy_1 uci -q delete mcast.mc_proxy_MLD
uci -q set mcast.igmp_snooping_1=snooping
uci -q set mcast.igmp_snooping_1.enable='1'
uci -q set mcast.igmp_snooping_1.proto='igmp'
uci -q set mcast.igmp_snooping_1.version='2'
uci -q set mcast.igmp_snooping_1.robustness='2'
uci -q set mcast.igmp_snooping_1.query_interval='125'
uci -q set mcast.igmp_snooping_1.query_response_interval='100'
uci -q set mcast.igmp_snooping_1.last_member_query_interval='10'
uci -q set mcast.igmp_snooping_1.fast_leave='1'
uci -q set mcast.igmp_snooping_1.snooping_mode='2'
uci -q set mcast.igmp_snooping_1.interface='br-lan'
uci -q set mcast.igmp_snooping_1.vid='101'
uci -q commit mcast
/etc/init.d/network restart sleep 2 /etc/init.d/mcast restart