mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-10 07:44:50 +01:00
mcastmngr: add support for snooping mode
Support for snooping mode configuration added.
This commit is contained in:
parent
00b6800c2f
commit
d0350ee279
1 changed files with 16 additions and 9 deletions
|
|
@ -12,12 +12,14 @@ PROG_EXE=/usr/sbin/mcpd
|
||||||
igmp_s_enable=0
|
igmp_s_enable=0
|
||||||
igmp_s_version=2
|
igmp_s_version=2
|
||||||
igmp_s_robustness=2
|
igmp_s_robustness=2
|
||||||
|
igmp_s_mode=0
|
||||||
igmp_s_iface=""
|
igmp_s_iface=""
|
||||||
igmp_s_exceptions=""
|
igmp_s_exceptions=""
|
||||||
|
|
||||||
mld_s_enable=0
|
mld_s_enable=0
|
||||||
mld_s_version=2
|
mld_s_version=2
|
||||||
mld_s_robustness=2
|
mld_s_robustness=2
|
||||||
|
mld_s_mode=0
|
||||||
mld_s_iface=""
|
mld_s_iface=""
|
||||||
mld_s_exceptions=""
|
mld_s_exceptions=""
|
||||||
|
|
||||||
|
|
@ -36,6 +38,7 @@ igmp_q_resp_interval=100
|
||||||
igmp_last_mem_q_int=10
|
igmp_last_mem_q_int=10
|
||||||
igmp_fast_leave=1
|
igmp_fast_leave=1
|
||||||
igmp_p_robustness=2
|
igmp_p_robustness=2
|
||||||
|
igmp_p_mode=0
|
||||||
igmp_p_up_interfaces=""
|
igmp_p_up_interfaces=""
|
||||||
igmp_p_down_interfaces=""
|
igmp_p_down_interfaces=""
|
||||||
igmp_p_exceptions=""
|
igmp_p_exceptions=""
|
||||||
|
|
@ -47,6 +50,7 @@ mld_q_resp_interval=100
|
||||||
mld_last_mem_q_int=10
|
mld_last_mem_q_int=10
|
||||||
mld_fast_leave=1
|
mld_fast_leave=1
|
||||||
mld_p_robustness=2
|
mld_p_robustness=2
|
||||||
|
mld_p_mode=0
|
||||||
mld_p_up_interfaces=""
|
mld_p_up_interfaces=""
|
||||||
mld_p_down_interfaces=""
|
mld_p_down_interfaces=""
|
||||||
mld_p_exceptions=""
|
mld_p_exceptions=""
|
||||||
|
|
@ -74,6 +78,7 @@ read_snooping() {
|
||||||
igmp_s_enable=$sec_enable
|
igmp_s_enable=$sec_enable
|
||||||
config_get igmp_s_version "$config" version 2
|
config_get igmp_s_version "$config" version 2
|
||||||
config_get igmp_s_robustness "$config" robustness 2
|
config_get igmp_s_robustness "$config" robustness 2
|
||||||
|
config_get igmp_s_mode "$config" snooping_mode 0
|
||||||
config_get igmp_s_iface "$config" interface
|
config_get igmp_s_iface "$config" interface
|
||||||
config_get igmp_s_exceptions "$config" filter
|
config_get igmp_s_exceptions "$config" filter
|
||||||
return
|
return
|
||||||
|
|
@ -83,6 +88,7 @@ read_snooping() {
|
||||||
mld_s_enable=$sec_enable
|
mld_s_enable=$sec_enable
|
||||||
config_get mld_s_version "$config" version 2
|
config_get mld_s_version "$config" version 2
|
||||||
config_get mld_s_robustness "$config" robustness 2
|
config_get mld_s_robustness "$config" robustness 2
|
||||||
|
config_get mld_s_mode "$config" snooping_mode 0
|
||||||
config_get mld_s_iface "$config" interface
|
config_get mld_s_iface "$config" interface
|
||||||
config_get mld_s_exceptions "$config" filter
|
config_get mld_s_exceptions "$config" filter
|
||||||
return
|
return
|
||||||
|
|
@ -109,6 +115,7 @@ read_proxy() {
|
||||||
config_get igmp_last_mem_q_int "$config" last_member_query_interval
|
config_get igmp_last_mem_q_int "$config" last_member_query_interval
|
||||||
config_get igmp_fast_leave "$config" fast_leave 1
|
config_get igmp_fast_leave "$config" fast_leave 1
|
||||||
config_get igmp_p_robustness "$config" robustness 2
|
config_get igmp_p_robustness "$config" robustness 2
|
||||||
|
config_get igmp_p_mode "$config" snooping_mode 0
|
||||||
config_get igmp_p_up_interfaces "$config" upstream_interface
|
config_get igmp_p_up_interfaces "$config" upstream_interface
|
||||||
config_get igmp_p_down_interfaces "$config" downstream_interface
|
config_get igmp_p_down_interfaces "$config" downstream_interface
|
||||||
config_get igmp_p_exceptions "$config" filter
|
config_get igmp_p_exceptions "$config" filter
|
||||||
|
|
@ -123,6 +130,7 @@ read_proxy() {
|
||||||
config_get mld_last_mem_q_int "$config" last_member_query_interval
|
config_get mld_last_mem_q_int "$config" last_member_query_interval
|
||||||
config_get mld_fast_leave "$config" fast_leave 1
|
config_get mld_fast_leave "$config" fast_leave 1
|
||||||
config_get mld_p_robustness "$config" robustness 2
|
config_get mld_p_robustness "$config" robustness 2
|
||||||
|
config_get mld_p_mode "$config" snooping_mode 0
|
||||||
config_get mld_p_up_interfaces "$config" upstream_interface
|
config_get mld_p_up_interfaces "$config" upstream_interface
|
||||||
config_get mld_p_down_interfaces "$config" downstream_interface
|
config_get mld_p_down_interfaces "$config" downstream_interface
|
||||||
config_get mld_p_exceptions "$config" filter
|
config_get mld_p_exceptions "$config" filter
|
||||||
|
|
@ -239,16 +247,16 @@ configure_mcpd_snooping() {
|
||||||
|
|
||||||
# Configure snooping related params
|
# Configure snooping related params
|
||||||
if [ "$protocol" == "igmp" ]; then
|
if [ "$protocol" == "igmp" ]; then
|
||||||
config_snooping_common_params $protocol $igmp_p_version $igmp_p_robustness $igmp_s_enable
|
config_snooping_common_params $protocol $igmp_p_version $igmp_p_robustness $igmp_s_mode
|
||||||
config_mcast_querier_params $protocol $igmp_query_interval $igmp_q_resp_interval $igmp_last_mem_q_int
|
config_mcast_querier_params $protocol $igmp_query_interval $igmp_q_resp_interval $igmp_last_mem_q_int
|
||||||
config_mcast_proxy_interface $protocol $igmp_s_iface
|
config_mcast_proxy_interface $protocol $igmp_s_iface
|
||||||
config_snooping_on_bridge $protocol $igmp_s_iface $igmp_s_enable
|
config_snooping_on_bridge $protocol $igmp_s_iface $igmp_s_mode
|
||||||
exceptions=$igmp_s_exceptions
|
exceptions=$igmp_s_exceptions
|
||||||
elif [ "$protocol" == "mld" ]; then
|
elif [ "$protocol" == "mld" ]; then
|
||||||
config_snooping_common_params $protocol $mld_p_version $mld_p_robustness $mld_s_enable
|
config_snooping_common_params $protocol $mld_p_version $mld_p_robustness $mld_s_mode
|
||||||
config_mcast_querier_params $protocol $mld_query_interval $mld_q_resp_interval $mld_last_mem_q_int
|
config_mcast_querier_params $protocol $mld_query_interval $mld_q_resp_interval $mld_last_mem_q_int
|
||||||
config_mcast_proxy_interface $protocol $mld_s_iface
|
config_mcast_proxy_interface $protocol $mld_s_iface
|
||||||
config_snooping_on_bridge $protocol $mld_s_iface $mld_s_enable
|
config_snooping_on_bridge $protocol $mld_s_iface $mld_s_mode
|
||||||
exceptions=$mld_s_exceptions
|
exceptions=$mld_s_exceptions
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
@ -257,24 +265,23 @@ configure_mcpd_snooping() {
|
||||||
}
|
}
|
||||||
|
|
||||||
configure_mcpd_proxy() {
|
configure_mcpd_proxy() {
|
||||||
local s_mode=2
|
|
||||||
local protocol="$1"
|
local protocol="$1"
|
||||||
local fast_leave=0
|
local fast_leave=0
|
||||||
local exceptions=""
|
local exceptions=""
|
||||||
|
|
||||||
# Configure snooping related params
|
# Configure snooping related params
|
||||||
if [ "$protocol" == "igmp" ]; then
|
if [ "$protocol" == "igmp" ]; then
|
||||||
config_snooping_common_params $protocol $igmp_p_version $igmp_p_robustness $s_mode
|
config_snooping_common_params $protocol $igmp_p_version $igmp_p_robustness $igmp_p_mode
|
||||||
config_mcast_querier_params $protocol $igmp_query_interval $igmp_q_resp_interval $igmp_last_mem_q_int
|
config_mcast_querier_params $protocol $igmp_query_interval $igmp_q_resp_interval $igmp_last_mem_q_int
|
||||||
config_mcast_proxy_interface $protocol $igmp_p_up_interfaces
|
config_mcast_proxy_interface $protocol $igmp_p_up_interfaces
|
||||||
config_snooping_on_bridge $protocol $igmp_p_down_interfaces $s_mode
|
config_snooping_on_bridge $protocol $igmp_p_down_interfaces $igmp_p_mode
|
||||||
fast_leave=$igmp_fast_leave
|
fast_leave=$igmp_fast_leave
|
||||||
exceptions=$igmp_p_exceptions
|
exceptions=$igmp_p_exceptions
|
||||||
elif [ "$protocol" == "mld" ]; then
|
elif [ "$protocol" == "mld" ]; then
|
||||||
config_snooping_common_params $protocol $mld_p_version $mld_p_robustness $s_mode
|
config_snooping_common_params $protocol $mld_p_version $mld_p_robustness $mld_p_mode
|
||||||
config_mcast_querier_params $protocol $mld_query_interval $mld_q_resp_interval $mld_last_mem_q_int
|
config_mcast_querier_params $protocol $mld_query_interval $mld_q_resp_interval $mld_last_mem_q_int
|
||||||
config_mcast_proxy_interface $protocol $mld_p_up_interfaces
|
config_mcast_proxy_interface $protocol $mld_p_up_interfaces
|
||||||
config_snooping_on_bridge $protocol $mld_p_down_interfaces $s_mode
|
config_snooping_on_bridge $protocol $mld_p_down_interfaces $mld_p_mode
|
||||||
fast_leave=$mld_fast_leave
|
fast_leave=$mld_fast_leave
|
||||||
exceptions=$mld_p_exceptions
|
exceptions=$mld_p_exceptions
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue