mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
Fix omr-bypass with vlan
This commit is contained in:
parent
b0e38240cc
commit
df1f5a7915
1 changed files with 16 additions and 15 deletions
|
@ -50,6 +50,7 @@ _bypass_domains() {
|
||||||
_bypass_domain() {
|
_bypass_domain() {
|
||||||
local domain=$1
|
local domain=$1
|
||||||
local intf=$2
|
local intf=$2
|
||||||
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
|
|
||||||
[ -z "$intf" ] && intf="all"
|
[ -z "$intf" ] && intf="all"
|
||||||
if [ -n "$domain" ]; then
|
if [ -n "$domain" ]; then
|
||||||
|
@ -68,7 +69,7 @@ _bypass_domain() {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$(uci -q get dhcp.@dnsmasq[0].ipset | grep /$domain/)" = "" ]; then
|
if [ "$(uci -q get dhcp.@dnsmasq[0].ipset | grep /$domain/)" = "" ]; then
|
||||||
uci -q add_list dhcp.@dnsmasq[0].ipset="/$domain/omr_dst_bypass_$intf,omr6_dst_bypass_$intf"
|
uci -q add_list dhcp.@dnsmasq[0].ipset="/$domain/omr_dst_bypass_$intfuci,omr6_dst_bypass_$intf"
|
||||||
else
|
else
|
||||||
dnsmasqipset=$(uci -q get dhcp.@dnsmasq[0].ipset | sed 's/ /\n/g')
|
dnsmasqipset=$(uci -q get dhcp.@dnsmasq[0].ipset | sed 's/ /\n/g')
|
||||||
for dnsipset in $dnsmasqipset; do
|
for dnsipset in $dnsmasqipset; do
|
||||||
|
@ -90,8 +91,8 @@ _bypass_mac() {
|
||||||
config_get intf $1 interface
|
config_get intf $1 interface
|
||||||
config_get enabled $1 enabled
|
config_get enabled $1 enabled
|
||||||
[ "$enabled" = "0" ] && return
|
[ "$enabled" = "0" ] && return
|
||||||
intfuci=$(echo $intf | sed 's/\./_/')
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
local intfid="$(uci -q get omr-bypass.$intfuci.id)"
|
local intfid="$(uci -q get omr-bypass.$intf.id)"
|
||||||
|
|
||||||
[ -z "$intf" ] && intf="all"
|
[ -z "$intf" ] && intf="all"
|
||||||
[ -z "$mac" ] && return
|
[ -z "$mac" ] && return
|
||||||
|
@ -132,8 +133,8 @@ _bypass_lan_ip() {
|
||||||
config_get intf $1 interface
|
config_get intf $1 interface
|
||||||
config_get enabled $1 enabled
|
config_get enabled $1 enabled
|
||||||
[ "$enabled" = "0" ] && return
|
[ "$enabled" = "0" ] && return
|
||||||
intfuci=$(echo $intf | sed 's/\./_/')
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
local intfid="$(uci -q get omr-bypass.$intfuci.id)"
|
local intfid="$(uci -q get omr-bypass.$intf.id)"
|
||||||
|
|
||||||
[ -z "$intf" ] && intf="all"
|
[ -z "$intf" ] && intf="all"
|
||||||
[ -z "$ip" ] && return
|
[ -z "$ip" ] && return
|
||||||
|
@ -190,8 +191,8 @@ _bypass_dest_port() {
|
||||||
config_get intf $1 interface
|
config_get intf $1 interface
|
||||||
config_get enabled $1 enabled
|
config_get enabled $1 enabled
|
||||||
[ "$enabled" = "0" ] && return
|
[ "$enabled" = "0" ] && return
|
||||||
intfuci=$(echo $intf | sed 's/\./_/')
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
local intfid="$(uci -q get omr-bypass.$intfuci.id)"
|
local intfid="$(uci -q get omr-bypass.$intf.id)"
|
||||||
|
|
||||||
[ -z "$intf" ] && intf="all"
|
[ -z "$intf" ] && intf="all"
|
||||||
[ -z "$dport" ] && return
|
[ -z "$dport" ] && return
|
||||||
|
@ -246,8 +247,8 @@ _bypass_src_port() {
|
||||||
config_get intf $1 interface
|
config_get intf $1 interface
|
||||||
config_get enabled $1 enabled
|
config_get enabled $1 enabled
|
||||||
[ "$enabled" = "0" ] && return
|
[ "$enabled" = "0" ] && return
|
||||||
intfuci=$(echo $intf | sed 's/\./_/')
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
local intfid="$(uci -q get omr-bypass.$intfuci.id)"
|
local intfid="$(uci -q get omr-bypass.$intf.id)"
|
||||||
|
|
||||||
[ -z "$intf" ] && intf="all"
|
[ -z "$intf" ] && intf="all"
|
||||||
[ -z "$sport" ] && return
|
[ -z "$sport" ] && return
|
||||||
|
@ -300,8 +301,8 @@ _bypass_proto() {
|
||||||
config_get intf $1 interface
|
config_get intf $1 interface
|
||||||
config_get enabled $1 enabled
|
config_get enabled $1 enabled
|
||||||
[ "$enabled" = "0" ] && return
|
[ "$enabled" = "0" ] && return
|
||||||
intfuci=$(echo $intf | sed 's/\./_/')
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
local intfid="$(uci -q get omr-bypass.$intfuci.id)"
|
local intfid="$(uci -q get omr-bypass.$intf.id)"
|
||||||
|
|
||||||
[ -z "$intf" ] && intf="all"
|
[ -z "$intf" ] && intf="all"
|
||||||
[ -z "$proto" ] && return
|
[ -z "$proto" ] && return
|
||||||
|
@ -459,6 +460,7 @@ _intf_rule() {
|
||||||
#[ "$mode" = "off" ] && return
|
#[ "$mode" = "off" ] && return
|
||||||
[ -z "$count" ] && return
|
[ -z "$count" ] && return
|
||||||
[ -z "$intf" ] && return
|
[ -z "$intf" ] && return
|
||||||
|
intf=$(echo $intf | sed -e 's/\./_/')
|
||||||
[ "$(echo $1 | grep _dev)" != "" ] && return
|
[ "$(echo $1 | grep _dev)" != "" ] && return
|
||||||
[ -z "$RELOAD" ] || [ "$(ipset --list | grep omr_dst_bypass_$intf)" = "" ] && {
|
[ -z "$RELOAD" ] || [ "$(ipset --list | grep omr_dst_bypass_$intf)" = "" ] && {
|
||||||
unset RELOAD
|
unset RELOAD
|
||||||
|
@ -498,9 +500,8 @@ _intf_rule() {
|
||||||
config_foreach _intf_rule_ss_rules ss_rules
|
config_foreach _intf_rule_ss_rules ss_rules
|
||||||
_intf_rule_v2ray_rules
|
_intf_rule_v2ray_rules
|
||||||
|
|
||||||
intfuci=$(echo $intf | sed 's/\./_/')
|
uci -q set omr-bypass.$intf=interface
|
||||||
uci -q set omr-bypass.$intfuci=interface
|
uci -q set omr-bypass.$intf.id=$count
|
||||||
uci -q set omr-bypass.$intfuci.id=$count
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_bypass_ip_set() {
|
_bypass_ip_set() {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue