parent
b302eb1c61
commit
a699a82434
@ -743,12 +743,14 @@ add_firewall_rule() {
|
||||
ipset -! create $IPSET_BLOCKLIST6 nethash family inet6 maxelem 1048576 timeout 172800
|
||||
|
||||
#分流规则的IP列表
|
||||
local node_protocol=$(config_n_get $TCP_NODE protocol)
|
||||
process_shunt_rules() {
|
||||
local _node=$1
|
||||
local node_protocol=$(config_n_get $_node protocol)
|
||||
if [ "$node_protocol" = "_shunt" ]; then
|
||||
local default_node_id=$(config_n_get $TCP_NODE default_node "_direct")
|
||||
local default_node_id=$(config_n_get $_node default_node "_direct")
|
||||
local shunt_ids=$(uci show $CONFIG | grep "=shunt_rules" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}')
|
||||
for shunt_id in $shunt_ids; do
|
||||
local _node_id=$(config_n_get $TCP_NODE $shunt_id "nil")
|
||||
local _node_id=$(config_n_get $_node $shunt_id "nil")
|
||||
[ "$_node_id" != "nil" ] && {
|
||||
[ "$_node_id" = "_default" ] && _node_id=$default_node_id
|
||||
if [ "$_node_id" = "_direct" ]; then
|
||||
@ -763,6 +765,9 @@ add_firewall_rule() {
|
||||
}
|
||||
done
|
||||
fi
|
||||
}
|
||||
[ "$TCP_NODE" ] && process_shunt_rules $TCP_NODE
|
||||
[ "$UDP_NODE" ] && [ "$TCP_UDP" = "0" ] && process_shunt_rules $UDP_NODE
|
||||
|
||||
cat $RULES_PATH/chnroute | tr -s '\n' | grep -v "^#" | sed -e "/^$/d" | sed -e "s/^/add $IPSET_CHN &/g" -e "s/$/ timeout 0/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R
|
||||
cat $RULES_PATH/proxy_ip | tr -s '\n' | grep -v "^#" | sed -e "/^$/d" | grep -E "(\.((2(5[0-5]|[0-4][0-9]))|[0-1]?[0-9]{1,2})){3}" | sed -e "s/^/add $IPSET_BLACKLIST &/g" -e "s/$/ timeout 0/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R
|
||||
@ -1228,7 +1233,7 @@ del_firewall_rule() {
|
||||
|
||||
destroy_ipset $IPSET_LANLIST
|
||||
destroy_ipset $IPSET_VPSLIST
|
||||
#destroy_ipset $IPSET_SHUNTLIST
|
||||
destroy_ipset $IPSET_SHUNTLIST
|
||||
#destroy_ipset $IPSET_GFW
|
||||
#destroy_ipset $IPSET_CHN
|
||||
#destroy_ipset $IPSET_BLACKLIST
|
||||
@ -1237,7 +1242,7 @@ del_firewall_rule() {
|
||||
|
||||
destroy_ipset $IPSET_LANLIST6
|
||||
destroy_ipset $IPSET_VPSLIST6
|
||||
#destroy_ipset $IPSET_SHUNTLIST6
|
||||
destroy_ipset $IPSET_SHUNTLIST6
|
||||
#destroy_ipset $IPSET_GFW6
|
||||
#destroy_ipset $IPSET_CHN6
|
||||
#destroy_ipset $IPSET_BLACKLIST6
|
||||
|
@ -829,12 +829,14 @@ add_firewall_rule() {
|
||||
gen_nftset $NFTSET_SHUNTLIST6 ipv6_addr "2d" 0
|
||||
|
||||
#分流规则的IP列表
|
||||
local node_protocol=$(config_n_get $TCP_NODE protocol)
|
||||
process_shunt_rules() {
|
||||
local _node=$1
|
||||
local node_protocol=$(config_n_get $_node protocol)
|
||||
if [ "$node_protocol" = "_shunt" ]; then
|
||||
local default_node_id=$(config_n_get $TCP_NODE default_node "_direct")
|
||||
local default_node_id=$(config_n_get $_node default_node "_direct")
|
||||
local shunt_ids=$(uci show $CONFIG | grep "=shunt_rules" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}')
|
||||
for shunt_id in $shunt_ids; do
|
||||
local _node_id=$(config_n_get $TCP_NODE $shunt_id "nil")
|
||||
local _node_id=$(config_n_get $_node $shunt_id "nil")
|
||||
[ "$_node_id" != "nil" ] && {
|
||||
[ "$_node_id" = "_default" ] && _node_id=$default_node_id
|
||||
if [ "$_node_id" = "_direct" ]; then
|
||||
@ -849,6 +851,9 @@ add_firewall_rule() {
|
||||
}
|
||||
done
|
||||
fi
|
||||
}
|
||||
[ "$TCP_NODE" ] && process_shunt_rules $TCP_NODE
|
||||
[ "$UDP_NODE" ] && [ "$TCP_UDP" = "0" ] && process_shunt_rules $UDP_NODE
|
||||
|
||||
# 忽略特殊IP段
|
||||
local lan_ifname lan_ip
|
||||
@ -1295,7 +1300,7 @@ del_firewall_rule() {
|
||||
|
||||
destroy_nftset $NFTSET_LANLIST
|
||||
destroy_nftset $NFTSET_VPSLIST
|
||||
#destroy_nftset $NFTSET_SHUNTLIST
|
||||
destroy_nftset $NFTSET_SHUNTLIST
|
||||
#destroy_nftset $NFTSET_GFW
|
||||
#destroy_nftset $NFTSET_CHN
|
||||
#destroy_nftset $NFTSET_BLACKLIST
|
||||
@ -1304,7 +1309,7 @@ del_firewall_rule() {
|
||||
|
||||
destroy_nftset $NFTSET_LANLIST6
|
||||
destroy_nftset $NFTSET_VPSLIST6
|
||||
#destroy_nftset $NFTSET_SHUNTLIST6
|
||||
destroy_nftset $NFTSET_SHUNTLIST6
|
||||
#destroy_nftset $NFTSET_GFW6
|
||||
#destroy_nftset $NFTSET_CHN6
|
||||
#destroy_nftset $NFTSET_BLACKLIST6
|
||||
|
Loading…
Reference in New Issue
Block a user