mirror of
https://github.com/caiwx86/small-packages.git
synced 2026-10-29 13:45:13 +08:00
update 2026-09-11 16:29:42
This commit is contained in:
1 parent
e964d3fab4
commit
42846bd15f
4 files changed
+32
-22
No files matched your search
+5
-5
@@ -1,18 +1,18 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=clashoo
|
||||
PKG_SHORT_SHA:=4aa9cc1
|
||||
PKG_COMMIT_DATE:=2026.09.10
|
||||
PKG_SHORT_SHA:=dca26db
|
||||
PKG_COMMIT_DATE:=2026.09.11
|
||||
|
||||
PKG_VERSION:=$(PKG_COMMIT_DATE)~$(PKG_SHORT_SHA)
|
||||
PKG_RELEASE:=2
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-alpha-$(PKG_SHORT_SHA).tar.gz
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-alpha-$(PKG_SHORT_SHA)
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-alpha-$(PKG_SHORT_SHA)
|
||||
PKG_SOURCE_URL:=https://github.com/kenzok8/openwrt-clashoo/releases/download/mihomo-src
|
||||
PKG_SOURCE_VERSION:=4aa9cc17fc91feb60d406bd273206ddb7d43f431
|
||||
PKG_HASH:=c9ad80f837c520a6b9269d33f45ea16a30a9cc5c68828287b25a488b351b8b2f
|
||||
PKG_SOURCE_VERSION:=dca26db017bcde90071f3e16f97b12fafbccfa31
|
||||
PKG_HASH:=593e53b3aeb52bbd3f49ddf4ae7773ce340bf2e984a9d5634a6385fa3041b5a2
|
||||
PKG_BUILD_VERSION:=alpha-$(PKG_SHORT_SHA)
|
||||
|
||||
PKG_LICENSE:=GPL3.0+
|
||||
|
||||
@@ -417,7 +417,7 @@ load_acl() {
|
||||
[ "$_ipv4" != "1" ] && $ip6t_n -A PSW_DNS $(comment "$remarks") -p udp ${_ipt_source} --dport 53 -j REDIRECT --to-ports ${dns_redirect} 2>/dev/null
|
||||
$ipt_n -A PSW_DNS $(comment "$remarks") -p tcp ${_ipt_source} --dport 53 -j REDIRECT --to-ports ${dns_redirect}
|
||||
[ "$_ipv4" != "1" ] && $ip6t_n -A PSW_DNS $(comment "$remarks") -p tcp ${_ipt_source} --dport 53 -j REDIRECT --to-ports ${dns_redirect} 2>/dev/null
|
||||
[ -z "$(get_cache_var "ACL_${sid}_default")" ] && echolog " - ${msg}与全局配置不同节点,DNS 重定向到专用 DNS 服务器 [${dns_redirect}]。"
|
||||
[ -z "$(get_cache_var "ACL_${sid}_default")" ] && echolog " - ${msg}节点不同于全局配置,DNS 重定向到专用服务器[${dns_redirect}]。"
|
||||
fi
|
||||
|
||||
[ -n "$tcp_port" ] || [ -n "$udp_port" ] && {
|
||||
@@ -785,8 +785,8 @@ filter_server_port() {
|
||||
local address="$1"
|
||||
local port=$(echo "$2" | tr '-' ':' | tr -d ' ')
|
||||
local stream=$(echo "$3" | tr 'A-Z' 'a-z')
|
||||
local ipt_tmp="$ipt_n" _is_tproxy _ipt_cmd _ver multi_ports p ports
|
||||
[ "$(config_n_get @global_forwarding[0] tcp_proxy_way redirect)" = "tproxy" ] && _is_tproxy="TPROXY"
|
||||
local _is_tproxy="$4"
|
||||
local ipt_tmp="$ipt_n" _ipt_cmd _ver multi_ports p ports
|
||||
[ "$stream" = "udp" ] && _is_tproxy="TPROXY"
|
||||
[ -n "$_is_tproxy" ] && ipt_tmp="$ipt_m"
|
||||
for _ver in 4 6; do
|
||||
@@ -813,7 +813,7 @@ filter_server_port() {
|
||||
}
|
||||
|
||||
filter_node() {
|
||||
local node="$1" stream="$2"
|
||||
local node="$1" stream="$2" _is_tproxy="$3"
|
||||
[ -z "$node" ] && return 1
|
||||
local address=$(config_n_get "$node" address)
|
||||
local port=$(config_n_get "$node" port)
|
||||
@@ -822,13 +822,15 @@ filter_node() {
|
||||
[ -z "$address" ] && return 1
|
||||
echo "$address" | grep -Eq "$EXCLUDE_VPSIP" && return 1
|
||||
[ -z "$port" ] && return 1
|
||||
filter_server_port "$address" "$port" "$stream"
|
||||
filter_server_port "$address" "$port" "$stream" "$_is_tproxy"
|
||||
}
|
||||
|
||||
filter_direct_node_list() {
|
||||
[ ! -s "$TMP_PATH/direct_node_list" ] && return
|
||||
local _is_tproxy
|
||||
[ "$(config_n_get @global_forwarding[0] tcp_proxy_way redirect)" = "tproxy" ] && _is_tproxy="TPROXY"
|
||||
awk '!seen[$0]++' "$TMP_PATH/direct_node_list" | while read -r _node_id; do
|
||||
filter_node "$_node_id" TCP
|
||||
filter_node "$_node_id" TCP "$_is_tproxy"
|
||||
filter_node "$_node_id" UDP
|
||||
unset _node_id
|
||||
done
|
||||
|
||||
@@ -478,7 +478,7 @@ load_acl() {
|
||||
#nft "add rule $NFTABLE_NAME PSW_DNS ip protocol tcp ${_ipt_source} tcp dport 53 counter redirect to :${dns_redirect} comment \"$remarks\""
|
||||
nft "add rule $NFTABLE_NAME PSW_DNS meta l4proto udp ${_ipt_source} udp dport 53 counter redirect to :${dns_redirect} comment \"$remarks\""
|
||||
nft "add rule $NFTABLE_NAME PSW_DNS meta l4proto tcp ${_ipt_source} tcp dport 53 counter redirect to :${dns_redirect} comment \"$remarks\""
|
||||
[ -z "$(get_cache_var "ACL_${sid}_default")" ] && echolog " - ${msg}与全局配置不同节点,DNS 重定向到专用 DNS 服务器 [${dns_redirect}]。"
|
||||
[ -z "$(get_cache_var "ACL_${sid}_default")" ] && echolog " - ${msg}节点不同于全局配置,DNS 重定向到专用服务器[${dns_redirect}]。"
|
||||
fi
|
||||
|
||||
[ -n "$tcp_port" ] || [ -n "$udp_port" ] && {
|
||||
@@ -857,9 +857,9 @@ filter_server_port() {
|
||||
local address="$1"
|
||||
local port=$(echo "$2" | tr ':' '-' | tr -d ' ')
|
||||
local stream=$(echo "$3" | tr 'A-Z' 'a-z')
|
||||
local _ip_type _port_expr _ver _is_tproxy
|
||||
local _is_tproxy="$4"
|
||||
local _ip_type _port_expr _ver
|
||||
local _nft_output_chain="PSW_OUTPUT_NAT"
|
||||
[ "$(config_n_get @global_forwarding[0] tcp_proxy_way redirect)" = "tproxy" ] && _is_tproxy="TPROXY"
|
||||
[ "$stream" = "udp" ] && _is_tproxy="TPROXY"
|
||||
[ -n "$_is_tproxy" ] && _nft_output_chain="PSW_OUTPUT_MANGLE"
|
||||
case "$port" in
|
||||
@@ -875,7 +875,7 @@ filter_server_port() {
|
||||
}
|
||||
|
||||
filter_node() {
|
||||
local node="$1" stream="$2"
|
||||
local node="$1" stream="$2" _is_tproxy="$3"
|
||||
[ -z "$node" ] && return 1
|
||||
local address=$(config_n_get "$node" address)
|
||||
local port=$(config_n_get "$node" port)
|
||||
@@ -884,13 +884,15 @@ filter_node() {
|
||||
[ -z "$address" ] && return 1
|
||||
echo "$address" | grep -Eq "$EXCLUDE_VPSIP" && return 1
|
||||
[ -z "$port" ] && return 1
|
||||
filter_server_port "$address" "$port" "$stream"
|
||||
filter_server_port "$address" "$port" "$stream" "$_is_tproxy"
|
||||
}
|
||||
|
||||
filter_direct_node_list() {
|
||||
[ ! -s "$TMP_PATH/direct_node_list" ] && return
|
||||
local _is_tproxy
|
||||
[ "$(config_n_get @global_forwarding[0] tcp_proxy_way redirect)" = "tproxy" ] && _is_tproxy="TPROXY"
|
||||
awk '!seen[$0]++' "$TMP_PATH/direct_node_list" | while read -r _node_id; do
|
||||
filter_node "$_node_id" TCP
|
||||
filter_node "$_node_id" TCP "$_is_tproxy"
|
||||
filter_node "$_node_id" UDP
|
||||
unset _node_id
|
||||
done
|
||||
@@ -908,16 +910,22 @@ add_script_mwan3() {
|
||||
}
|
||||
}
|
||||
|
||||
MWAN3_RULE_ARGS="-m connmark --mark ${FWMARK}/0xffffffff -j RETURN"
|
||||
|
||||
mwan3_stop() {
|
||||
nft list chain ip mangle mwan3_hook >/dev/null 2>&1 || return 0
|
||||
local handles=$(nft -a list chain ip mangle mwan3_hook 2>/dev/null | grep "${FWMARK}" | awk -F '# handle ' '{print$2}')
|
||||
for handle in $handles; do
|
||||
nft delete rule ip mangle mwan3_hook handle ${handle} 2>/dev/null
|
||||
done
|
||||
while iptables -w 5 -t mangle -D mwan3_hook ${MWAN3_RULE_ARGS} >/dev/null 2>&1; do :; done
|
||||
}
|
||||
|
||||
mwan3_start() {
|
||||
nft list chain ip mangle mwan3_hook >/dev/null 2>&1 || return 0
|
||||
mwan3_stop
|
||||
nft list chain ip mangle mwan3_hook >/dev/null 2>&1 && nft insert rule ip mangle mwan3_hook ct mark ${FWMARK} counter return >/dev/null 2>&1
|
||||
iptables -w 5 -t mangle -I mwan3_hook 1 ${MWAN3_RULE_ARGS} >/dev/null 2>&1 || \
|
||||
logger -t passwall "mwan3: failed to add ${FWMARK} exemption rule to mangle/mwan3_hook"
|
||||
}
|
||||
|
||||
update_wan_sets() {
|
||||
|
||||
@@ -40,10 +40,11 @@ do
|
||||
mkdir -p $TMP_SUB_PATH
|
||||
for item in $(uci show ${CONFIG} | grep "=subscribe_list" | cut -d '.' -sf 2 | cut -d '=' -sf 1); do
|
||||
sub_update_week_mode=$(config_n_get $item update_week_mode)
|
||||
if [ -n "$sub_update_week_mode" ]; then
|
||||
remark=$(config_n_get $item remark)
|
||||
if [ -n "$sub_update_week_mode" ] && [ "$sub_update_week_mode" = "8" ]; then
|
||||
sub_update_interval_mode=$(config_n_get $item update_interval_mode)
|
||||
echo "$item" >> $TMP_SUB_PATH/${sub_update_week_mode}_${sub_update_interval_mode}
|
||||
[ -n "$sub_update_interval_mode" ] && {
|
||||
echo "$item" >> $TMP_SUB_PATH/${sub_update_week_mode}_${sub_update_interval_mode}
|
||||
}
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -56,7 +57,6 @@ do
|
||||
[ "$sub_update_week_mode" = "8" ] && {
|
||||
[ "$(expr "$CFG_UPDATE_INT" % "$sub_update_interval_mode")" -eq 0 ] && { lua $APP_PATH/subscribe.lua start $cfgids cron > /dev/null 2>&1 & }
|
||||
}
|
||||
|
||||
done
|
||||
rm -rf $TMP_SUB_PATH
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user