mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-10-26 21:12:51 +08:00
🎨 Sync 2026-04-04 20:20:52
This commit is contained in:
1 parent
19a1f48f53
commit
945f62c965
14 files changed
+88
-47
No files matched your search
@@ -7,7 +7,7 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=clouddrive2
|
PKG_NAME:=clouddrive2
|
||||||
PKG_VERSION:=0.9.17
|
PKG_VERSION:=1.0.4
|
||||||
PKG_RELEASE=1
|
PKG_RELEASE=1
|
||||||
|
|
||||||
ifeq ($(ARCH),aarch64)
|
ifeq ($(ARCH),aarch64)
|
||||||
|
|||||||
+2
-2
@@ -5,8 +5,8 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=ddns-go
|
PKG_NAME:=ddns-go
|
||||||
PKG_VERSION:=6.16.2
|
PKG_VERSION:=6.16.4
|
||||||
PKG_RELEASE:=3
|
PKG_RELEASE:=4
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://codeload.github.com/jeessy2/ddns-go/tar.gz/v$(PKG_VERSION)?
|
PKG_SOURCE_URL:=https://codeload.github.com/jeessy2/ddns-go/tar.gz/v$(PKG_VERSION)?
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
|
|||||||
|
|
||||||
PKG_NAME:=hickory-dns
|
PKG_NAME:=hickory-dns
|
||||||
PKG_VERSION:=2026.04.02~54a81de
|
PKG_VERSION:=2026.04.02~54a81de
|
||||||
PKG_RELEASE:=9
|
PKG_RELEASE:=10
|
||||||
|
|
||||||
HICKORY_COMMIT:=54a81deefb24bb97df466b9032d5928345fffdde
|
HICKORY_COMMIT:=54a81deefb24bb97df466b9032d5928345fffdde
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
listen_addrs_ipv6 = ["::1"]
|
listen_addrs_ipv6 = ["::1"]
|
||||||
|
listen_port = 5335
|
||||||
|
prometheus_listen_addr = "[::]:9000"
|
||||||
|
|
||||||
[[zones]]
|
[[zones]]
|
||||||
zone = "."
|
zone = "."
|
||||||
@@ -16,14 +18,6 @@ connections = [
|
|||||||
{ protocol = { type = "h3", server_name = "dns.alidns.com", path = "/dns-query", disable_grease = false } }
|
{ protocol = { type = "h3", server_name = "dns.alidns.com", path = "/dns-query", disable_grease = false } }
|
||||||
]
|
]
|
||||||
|
|
||||||
[[zones.stores.name_servers]]
|
|
||||||
ip = "1.12.12.12"
|
|
||||||
trust_negative_responses = true
|
|
||||||
connections = [
|
|
||||||
{ protocol = { type = "https", server_name = "doh.pub", path = "/dns-query" } },
|
|
||||||
{ protocol = { type = "tls", server_name = "dot.pub" } }
|
|
||||||
]
|
|
||||||
|
|
||||||
[[zones.stores.name_servers]]
|
[[zones.stores.name_servers]]
|
||||||
ip = "2400:3200::1"
|
ip = "2400:3200::1"
|
||||||
trust_negative_responses = true
|
trust_negative_responses = true
|
||||||
@@ -31,11 +25,3 @@ connections = [
|
|||||||
{ protocol = { type = "quic", server_name = "dns.alidns.com" } },
|
{ protocol = { type = "quic", server_name = "dns.alidns.com" } },
|
||||||
{ protocol = { type = "h3", server_name = "dns.alidns.com", path = "/dns-query", disable_grease = false } }
|
{ protocol = { type = "h3", server_name = "dns.alidns.com", path = "/dns-query", disable_grease = false } }
|
||||||
]
|
]
|
||||||
|
|
||||||
[[zones.stores.name_servers]]
|
|
||||||
ip = "120.53.53.53"
|
|
||||||
trust_negative_responses = true
|
|
||||||
connections = [
|
|
||||||
{ protocol = { type = "https", server_name = "doh.pub", path = "/dns-query" } },
|
|
||||||
{ protocol = { type = "tls", server_name = "dot.pub" } }
|
|
||||||
]
|
|
||||||
@@ -1,17 +1,23 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
|
|
||||||
USE_PROCD=1
|
USE_PROCD=1
|
||||||
START=99
|
START=18
|
||||||
|
STOP=51
|
||||||
|
|
||||||
PROG=/usr/bin/hickory-dns
|
PROG=/usr/bin/hickory-dns
|
||||||
CONF=/etc/hickory-dns/forwarder.toml
|
CONF=/etc/hickory-dns/forwarder.toml
|
||||||
|
|
||||||
start_service() {
|
start_service() {
|
||||||
procd_open_instance hickory-dns
|
procd_open_instance hickory-dns
|
||||||
procd_set_param command $PROG -c $CONF -p 5335 -q --prometheus-listen-address=0.0.0.0:9000
|
procd_set_param command $PROG -c $CONF -q
|
||||||
procd_set_param user nobody
|
procd_set_param user nobody
|
||||||
procd_set_param stdout 1
|
procd_set_param stdout 1
|
||||||
procd_set_param stderr 1
|
procd_set_param stderr 1
|
||||||
procd_set_param respawn "${respawn_threshold:-3600}" "${respawn_timeout:-5}" "${respawn_retry:-5}"
|
procd_set_param respawn "${respawn_threshold:-3600}" "${respawn_timeout:-5}" "${respawn_retry:-5}"
|
||||||
procd_close_instance hickory-dns
|
procd_close_instance hickory-dns
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
service_triggers() {
|
||||||
|
procd_add_reload_trigger "dhcp" "network" "system"
|
||||||
|
}
|
||||||
@@ -1019,8 +1019,8 @@ add_firewall_rule() {
|
|||||||
unset WAN_IP wan_ip
|
unset WAN_IP wan_ip
|
||||||
|
|
||||||
insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW"
|
insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW"
|
||||||
|
# Only TCP, UDP Invalid.
|
||||||
insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT"
|
insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT"
|
||||||
insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p udp -m socket -j PSW_DIVERT"
|
|
||||||
|
|
||||||
$ipt_m -N PSW_OUTPUT
|
$ipt_m -N PSW_OUTPUT
|
||||||
$ipt_m -A PSW_OUTPUT $(dst $IPSET_LAN) -j RETURN
|
$ipt_m -A PSW_OUTPUT $(dst $IPSET_LAN) -j RETURN
|
||||||
@@ -1047,7 +1047,7 @@ add_firewall_rule() {
|
|||||||
$ipt_m -A PSW_OUTPUT -m conntrack --ctdir REPLY -j RETURN
|
$ipt_m -A PSW_OUTPUT -m conntrack --ctdir REPLY -j RETURN
|
||||||
$ipt_m -A PSW_OUTPUT -m mark --mark 255 -j RETURN
|
$ipt_m -A PSW_OUTPUT -m mark --mark 255 -j RETURN
|
||||||
|
|
||||||
ip rule add fwmark ${FWMARK} lookup 999 priority 999
|
ip rule add fwmark ${FWMARK} table 999 priority 999
|
||||||
ip route add local 0.0.0.0/0 dev lo table 999
|
ip route add local 0.0.0.0/0 dev lo table 999
|
||||||
|
|
||||||
[ "$accept_icmpv6" = "1" ] && {
|
[ "$accept_icmpv6" = "1" ] && {
|
||||||
@@ -1099,8 +1099,8 @@ add_firewall_rule() {
|
|||||||
unset WAN6_IP wan6_ip
|
unset WAN6_IP wan6_ip
|
||||||
|
|
||||||
insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW"
|
insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW"
|
||||||
|
# Only TCP, UDP Invalid.
|
||||||
insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT"
|
insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT"
|
||||||
insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p udp -m socket -j PSW_DIVERT"
|
|
||||||
|
|
||||||
$ip6t_m -N PSW_OUTPUT
|
$ip6t_m -N PSW_OUTPUT
|
||||||
$ip6t_m -A PSW_OUTPUT -m mark --mark 255 -j RETURN
|
$ip6t_m -A PSW_OUTPUT -m mark --mark 255 -j RETURN
|
||||||
@@ -1349,10 +1349,10 @@ del_firewall_rule() {
|
|||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
||||||
ip rule del fwmark ${FWMARK} lookup 999 priority 999 2>/dev/null
|
ip rule del fwmark ${FWMARK} 2>/dev/null
|
||||||
ip route del local 0.0.0.0/0 dev lo table 999 2>/dev/null
|
ip route del local 0.0.0.0/0 dev lo table 999 2>/dev/null
|
||||||
|
|
||||||
ip -6 rule del fwmark ${FWMARK} lookup 999 priority 999 2>/dev/null
|
ip -6 rule del fwmark ${FWMARK} 2>/dev/null
|
||||||
ip -6 route del local ::/0 dev lo table 999 2>/dev/null
|
ip -6 route del local ::/0 dev lo table 999 2>/dev/null
|
||||||
|
|
||||||
destroy_ipset $IPSET_LOCAL
|
destroy_ipset $IPSET_LOCAL
|
||||||
@@ -1422,7 +1422,6 @@ gen_include() {
|
|||||||
|
|
||||||
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW")
|
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW")
|
||||||
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT")
|
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT")
|
||||||
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW" "-p udp -m socket -j PSW_DIVERT")
|
|
||||||
|
|
||||||
WAN_IP=\$(get_wan_ips ip4)
|
WAN_IP=\$(get_wan_ips ip4)
|
||||||
[ ! -z "\${WAN_IP}" ] && {
|
[ ! -z "\${WAN_IP}" ] && {
|
||||||
@@ -1453,7 +1452,6 @@ gen_include() {
|
|||||||
|
|
||||||
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW")
|
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW")
|
||||||
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT")
|
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p tcp -m socket -j PSW_DIVERT")
|
||||||
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW" "-p udp -m socket -j PSW_DIVERT")
|
|
||||||
|
|
||||||
WAN6_IP=\$(get_wan_ips ip6)
|
WAN6_IP=\$(get_wan_ips ip6)
|
||||||
[ ! -z "\${WAN6_IP}" ] && {
|
[ ! -z "\${WAN6_IP}" ] && {
|
||||||
|
|||||||
@@ -834,9 +834,36 @@ filter_direct_node_list() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
del_script_mwan3() {
|
||||||
|
[ -s "/etc/init.d/mwan3" ] && sed -i "/${CONFIG}/d" /etc/init.d/mwan3 >/dev/null 2>&1
|
||||||
|
}
|
||||||
|
|
||||||
|
add_script_mwan3() {
|
||||||
|
del_script_mwan3
|
||||||
|
[ -s "/etc/init.d/mwan3" ] && {
|
||||||
|
sed -i '/start_service()/,/}/ s/^}/ \/usr\/share\/passwall\/nftables.sh mwan3_start\n}/' /etc/init.d/mwan3
|
||||||
|
sed -i '/stop_service().*{/a \ \/usr\/share\/passwall\/nftables.sh mwan3_stop' /etc/init.d/mwan3
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mwan3_stop() {
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
|
mwan3_start() {
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
add_firewall_rule() {
|
add_firewall_rule() {
|
||||||
echolog "开始加载 nftables 防火墙规则..."
|
echolog "开始加载 nftables 防火墙规则..."
|
||||||
gen_nft_tables
|
gen_nft_tables
|
||||||
|
add_script_mwan3
|
||||||
|
mwan3_start
|
||||||
gen_nftset $NFTSET_WAN ipv4_addr 0 "-1"
|
gen_nftset $NFTSET_WAN ipv4_addr 0 "-1"
|
||||||
gen_nftset $NFTSET_VPS ipv4_addr 0 "-1"
|
gen_nftset $NFTSET_VPS ipv4_addr 0 "-1"
|
||||||
gen_nftset $NFTSET_GFW ipv4_addr "2d" 0
|
gen_nftset $NFTSET_GFW ipv4_addr "2d" 0
|
||||||
@@ -1011,7 +1038,8 @@ add_firewall_rule() {
|
|||||||
|
|
||||||
nft "add chain $NFTABLE_NAME PSW_DIVERT"
|
nft "add chain $NFTABLE_NAME PSW_DIVERT"
|
||||||
nft "flush chain $NFTABLE_NAME PSW_DIVERT"
|
nft "flush chain $NFTABLE_NAME PSW_DIVERT"
|
||||||
nft "add rule $NFTABLE_NAME PSW_DIVERT meta l4proto { tcp, udp } socket transparent 1 mark set ${FWMARK} counter accept"
|
# Only TCP, UDP Invalid.
|
||||||
|
nft "add rule $NFTABLE_NAME PSW_DIVERT meta l4proto tcp socket transparent 1 mark set ${FWMARK} counter accept"
|
||||||
|
|
||||||
nft "add chain $NFTABLE_NAME PSW_DNS"
|
nft "add chain $NFTABLE_NAME PSW_DNS"
|
||||||
nft "flush chain $NFTABLE_NAME PSW_DNS"
|
nft "flush chain $NFTABLE_NAME PSW_DNS"
|
||||||
@@ -1098,7 +1126,7 @@ add_firewall_rule() {
|
|||||||
fi
|
fi
|
||||||
unset WAN_IP wan_ip
|
unset WAN_IP wan_ip
|
||||||
|
|
||||||
ip rule add fwmark ${FWMARK} lookup 999 priority 999
|
ip rule add fwmark ${FWMARK} table 999 priority 999
|
||||||
ip route add local 0.0.0.0/0 dev lo table 999
|
ip route add local 0.0.0.0/0 dev lo table 999
|
||||||
|
|
||||||
#ipv6 tproxy mode and udp
|
#ipv6 tproxy mode and udp
|
||||||
@@ -1382,10 +1410,10 @@ del_firewall_rule() {
|
|||||||
# Need to be removed at the end, otherwise it will show "Resource busy"
|
# Need to be removed at the end, otherwise it will show "Resource busy"
|
||||||
nft delete chain $NFTABLE_NAME handle $(nft -a list chains | grep -E "PSW_RULE" | awk -F '# handle ' '{print$2}') 2>/dev/null
|
nft delete chain $NFTABLE_NAME handle $(nft -a list chains | grep -E "PSW_RULE" | awk -F '# handle ' '{print$2}') 2>/dev/null
|
||||||
|
|
||||||
ip rule del fwmark ${FWMARK} lookup 999 priority 999 2>/dev/null
|
ip rule del fwmark ${FWMARK} 2>/dev/null
|
||||||
ip route del local 0.0.0.0/0 dev lo table 999 2>/dev/null
|
ip route del local 0.0.0.0/0 dev lo table 999 2>/dev/null
|
||||||
|
|
||||||
ip -6 rule del fwmark ${FWMARK} lookup 999 priority 999 2>/dev/null
|
ip -6 rule del fwmark ${FWMARK} 2>/dev/null
|
||||||
ip -6 route del local ::/0 dev lo table 999 2>/dev/null
|
ip -6 route del local ::/0 dev lo table 999 2>/dev/null
|
||||||
|
|
||||||
destroy_nftset $NFTSET_LOCAL
|
destroy_nftset $NFTSET_LOCAL
|
||||||
@@ -1410,6 +1438,8 @@ del_firewall_rule() {
|
|||||||
destroy_nftset $NFTSET_BLOCK6
|
destroy_nftset $NFTSET_BLOCK6
|
||||||
destroy_nftset $NFTSET_WHITE6
|
destroy_nftset $NFTSET_WHITE6
|
||||||
|
|
||||||
|
del_script_mwan3
|
||||||
|
|
||||||
echolog "删除 nftables 规则完成。"
|
echolog "删除 nftables 规则完成。"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1492,6 +1522,12 @@ insert_nftset)
|
|||||||
filter_direct_node_list)
|
filter_direct_node_list)
|
||||||
filter_direct_node_list
|
filter_direct_node_list
|
||||||
;;
|
;;
|
||||||
|
mwan3_start)
|
||||||
|
mwan3_start
|
||||||
|
;;
|
||||||
|
mwan3_stop)
|
||||||
|
mwan3_stop
|
||||||
|
;;
|
||||||
stop)
|
stop)
|
||||||
stop
|
stop
|
||||||
;;
|
;;
|
||||||
@@ -1500,3 +1536,7 @@ start)
|
|||||||
;;
|
;;
|
||||||
*) ;;
|
*) ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
reload_service() {
|
||||||
|
restart
|
||||||
|
}
|
||||||
@@ -727,8 +727,8 @@ add_firewall_rule() {
|
|||||||
unset WAN_IP wan_ip
|
unset WAN_IP wan_ip
|
||||||
|
|
||||||
insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW2"
|
insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW2"
|
||||||
|
# Only TCP, UDP Invalid.
|
||||||
insert_rule_before "$ipt_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT"
|
insert_rule_before "$ipt_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT"
|
||||||
insert_rule_before "$ipt_m" "PREROUTING" "PSW2" "-p udp -m socket -j PSW2_DIVERT"
|
|
||||||
|
|
||||||
$ipt_m -N PSW2_OUTPUT
|
$ipt_m -N PSW2_OUTPUT
|
||||||
$ipt_m -A PSW2_OUTPUT $(dst $IPSET_LAN) -j RETURN
|
$ipt_m -A PSW2_OUTPUT $(dst $IPSET_LAN) -j RETURN
|
||||||
@@ -794,8 +794,8 @@ add_firewall_rule() {
|
|||||||
unset WAN6_IP wan6_ip
|
unset WAN6_IP wan6_ip
|
||||||
|
|
||||||
insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW2"
|
insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW2"
|
||||||
|
# Only TCP, UDP Invalid.
|
||||||
insert_rule_before "$ip6t_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT"
|
insert_rule_before "$ip6t_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT"
|
||||||
insert_rule_before "$ip6t_m" "PREROUTING" "PSW2" "-p udp -m socket -j PSW2_DIVERT"
|
|
||||||
|
|
||||||
$ip6t_m -N PSW2_OUTPUT
|
$ip6t_m -N PSW2_OUTPUT
|
||||||
$ip6t_m -A PSW2_OUTPUT -m mark --mark 255 -j RETURN
|
$ip6t_m -A PSW2_OUTPUT -m mark --mark 255 -j RETURN
|
||||||
@@ -999,7 +999,6 @@ gen_include() {
|
|||||||
|
|
||||||
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW2")
|
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "mwan3" "-j PSW2")
|
||||||
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT")
|
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT")
|
||||||
\$(${MY_PATH} insert_rule_before "$ipt_m" "PREROUTING" "PSW2" "-p udp -m socket -j PSW2_DIVERT")
|
|
||||||
|
|
||||||
WAN_IP=\$(get_wan_ips ip4)
|
WAN_IP=\$(get_wan_ips ip4)
|
||||||
[ ! -z "\${WAN_IP}" ] && {
|
[ ! -z "\${WAN_IP}" ] && {
|
||||||
@@ -1025,7 +1024,6 @@ gen_include() {
|
|||||||
|
|
||||||
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW2")
|
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "mwan3" "-j PSW2")
|
||||||
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT")
|
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW2" "-p tcp -m socket -j PSW2_DIVERT")
|
||||||
\$(${MY_PATH} insert_rule_before "$ip6t_m" "PREROUTING" "PSW2" "-p udp -m socket -j PSW2_DIVERT")
|
|
||||||
|
|
||||||
WAN6_IP=\$(get_wan_ips ip6)
|
WAN6_IP=\$(get_wan_ips ip6)
|
||||||
[ ! -z "\${WAN6_IP}" ] && {
|
[ ! -z "\${WAN6_IP}" ] && {
|
||||||
|
|||||||
@@ -736,7 +736,8 @@ add_firewall_rule() {
|
|||||||
|
|
||||||
nft "add chain $NFTABLE_NAME PSW2_DIVERT"
|
nft "add chain $NFTABLE_NAME PSW2_DIVERT"
|
||||||
nft "flush chain $NFTABLE_NAME PSW2_DIVERT"
|
nft "flush chain $NFTABLE_NAME PSW2_DIVERT"
|
||||||
nft "add rule $NFTABLE_NAME PSW2_DIVERT meta l4proto { tcp, udp } socket transparent 1 mark set ${FWMARK} counter accept"
|
# Only TCP, UDP Invalid.
|
||||||
|
nft "add rule $NFTABLE_NAME PSW2_DIVERT meta l4proto tcp socket transparent 1 mark set ${FWMARK} counter accept"
|
||||||
|
|
||||||
nft "add chain $NFTABLE_NAME PSW2_DNS"
|
nft "add chain $NFTABLE_NAME PSW2_DNS"
|
||||||
nft "flush chain $NFTABLE_NAME PSW2_DNS"
|
nft "flush chain $NFTABLE_NAME PSW2_DNS"
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ LUCI_TITLE:=luci-app-ssr-plus
|
|||||||
LUCI_PKGARCH:=all
|
LUCI_PKGARCH:=all
|
||||||
PKG_NAME:=luci-app-ssr-plus
|
PKG_NAME:=luci-app-ssr-plus
|
||||||
PKG_VERSION:=190
|
PKG_VERSION:=190
|
||||||
PKG_RELEASE:=6
|
PKG_RELEASE:=7
|
||||||
|
|
||||||
PKG_CONFIG_DEPENDS:= \
|
PKG_CONFIG_DEPENDS:= \
|
||||||
CONFIG_PACKAGE_$(PKG_NAME)_Iptables_Transparent_Proxy \
|
CONFIG_PACKAGE_$(PKG_NAME)_Iptables_Transparent_Proxy \
|
||||||
|
|||||||
@@ -412,7 +412,6 @@ if is_finded("xray") then
|
|||||||
o = s:option(ListValue, "type", translate("Type"))
|
o = s:option(ListValue, "type", translate("Type"))
|
||||||
o.default = "base64"
|
o.default = "base64"
|
||||||
o:value("rand", "rand")
|
o:value("rand", "rand")
|
||||||
o:value("array", "array")
|
|
||||||
o:value("str", "str")
|
o:value("str", "str")
|
||||||
o:value("hex", "hex")
|
o:value("hex", "hex")
|
||||||
o:value("base64", "base64")
|
o:value("base64", "base64")
|
||||||
|
|||||||
@@ -542,7 +542,7 @@ msgid ""
|
|||||||
"fastest_addr (default: load_balance)."
|
"fastest_addr (default: load_balance)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:433
|
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:432
|
||||||
msgid "Delay (ms)"
|
msgid "Delay (ms)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -611,7 +611,7 @@ msgstr ""
|
|||||||
msgid "DoT upstream (Need use wolfssl version)"
|
msgid "DoT upstream (Need use wolfssl version)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:420
|
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:419
|
||||||
msgid "Domain Strategy"
|
msgid "Domain Strategy"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1467,7 +1467,7 @@ msgstr ""
|
|||||||
msgid "Packet or Rand length as a string, e.g., 10-20."
|
msgid "Packet or Rand length as a string, e.g., 10-20."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:429
|
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:428
|
||||||
msgid "Packet | Rand Length"
|
msgid "Packet | Rand Length"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|||||||
@@ -555,7 +555,7 @@ msgstr ""
|
|||||||
"定义上游逻辑模式,可选择值:负载均衡、并行查询、最快响应(默认值:负载均"
|
"定义上游逻辑模式,可选择值:负载均衡、并行查询、最快响应(默认值:负载均"
|
||||||
"衡)。"
|
"衡)。"
|
||||||
|
|
||||||
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:433
|
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:432
|
||||||
msgid "Delay (ms)"
|
msgid "Delay (ms)"
|
||||||
msgstr "延迟(ms)"
|
msgstr "延迟(ms)"
|
||||||
|
|
||||||
@@ -624,7 +624,7 @@ msgstr "是否要恢复客户端默认配置?"
|
|||||||
msgid "DoT upstream (Need use wolfssl version)"
|
msgid "DoT upstream (Need use wolfssl version)"
|
||||||
msgstr "DoT 上游(需使用 wolfssl 版本)"
|
msgstr "DoT 上游(需使用 wolfssl 版本)"
|
||||||
|
|
||||||
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:420
|
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:419
|
||||||
msgid "Domain Strategy"
|
msgid "Domain Strategy"
|
||||||
msgstr "域名解析策略"
|
msgstr "域名解析策略"
|
||||||
|
|
||||||
@@ -1483,7 +1483,7 @@ msgstr ""
|
|||||||
msgid "Packet or Rand length as a string, e.g., 10-20."
|
msgid "Packet or Rand length as a string, e.g., 10-20."
|
||||||
msgstr "数据包或 Rand 长度以字符串形式输入,例如:10-20。"
|
msgstr "数据包或 Rand 长度以字符串形式输入,例如:10-20。"
|
||||||
|
|
||||||
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:429
|
#: applications/luci-app-ssr-plus/luasrc/model/cbi/shadowsocksr/advanced.lua:428
|
||||||
msgid "Packet | Rand Length"
|
msgid "Packet | Rand Length"
|
||||||
msgstr "数据包 | Rand 长度"
|
msgstr "数据包 | Rand 长度"
|
||||||
|
|
||||||
|
|||||||
@@ -61,6 +61,19 @@ local function base64Encode(text)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Hex 编码
|
||||||
|
local function hexEncode(text)
|
||||||
|
if not text or text == "" then
|
||||||
|
return ''
|
||||||
|
end
|
||||||
|
local hex = ''
|
||||||
|
for i = 1, #text do
|
||||||
|
local byte = string.byte(text, i)
|
||||||
|
hex = hex .. string.format('%02X', byte)
|
||||||
|
end
|
||||||
|
return hex
|
||||||
|
end
|
||||||
|
|
||||||
local function cleanEmptyTables(t)
|
local function cleanEmptyTables(t)
|
||||||
if type(t) ~= "table" then return nil end
|
if type(t) ~= "table" then return nil end
|
||||||
for k, v in pairs(t) do
|
for k, v in pairs(t) do
|
||||||
@@ -562,7 +575,7 @@ end
|
|||||||
{
|
{
|
||||||
rand = (n_type == "rand") and (n_packet and (type(n_packet) == "string" and (n_packet:find("-")) and n_packet or tonumber(n_packet))) or nil,
|
rand = (n_type == "rand") and (n_packet and (type(n_packet) == "string" and (n_packet:find("-")) and n_packet or tonumber(n_packet))) or nil,
|
||||||
type = (type(n_type) == "string" and n_type ~= "rand") and n_type or nil,
|
type = (type(n_type) == "string" and n_type ~= "rand") and n_type or nil,
|
||||||
packet = (n_type ~= "rand") and (n_type ~= "str" and (n_packet and type(n_packet) == "string" and base64Encode(n_packet)) or n_packet) or nil,
|
packet = (n_type ~= "rand") and ((n_packet and type(n_packet) == "string") and ((n_type == "hex" and hexEncode(n_packet)) or (n_type == "base64" and base64Encode(n_packet))) or n_packet) or nil,
|
||||||
delay = (type(n_delay) == "string" and string.find(n_delay, "-")) and n_delay or (n_delay and tonumber(n_delay))
|
delay = (type(n_delay) == "string" and string.find(n_delay, "-")) and n_delay or (n_delay and tonumber(n_delay))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user