增加分享链接功能

This commit is contained in:
Olia Lisa 2025-12-29 18:15:29 +08:00
parent 557e8a6fb9
commit 8661527fc0
2 changed files with 28 additions and 3 deletions

View File

@ -24,21 +24,27 @@ print_share_link() {
local sni=$(echo "$config" | jq -r '.inbounds[0].tls.server_name')
local ipv4=$(curl -4 -sSL --connect-timeout 3 --retry 2 ip.sb || echo "null")
local port=$(echo "$config" | jq -r '.inbounds[0].listen_port')
local password=$(echo "$config" | jq -r '.inbounds[0].users[0].password')
local congestion_control=$(echo "$config" | jq -r '.inbounds[0].congestion_control')
# 检查sni
if [ "$sni" = "你的域名或伪装域名" ] || [ -z "$sni" ] || [[ "$sni" == null ]]; then
sni="bing.com" # 可根据需要修改默认值
fi
# 构建分享链接基于常见TUIC v5客户端如NekoBox、SFA支持的格式
local share_link="tuic://$uuid@$ipv4:$port?sni=$sni&alpn=h3&insecure=1&allowInsecure=1&congestion_control=bbr#Tuic节点"
# 构建分享链接
local share_link="tuic://$uuid:$password@$ipv4:$port?sni=$sni&alpn=h3&insecure=1&allowInsecure=1&congestion_control=bbr#Tuic节点"
share_link = $(url_encode "$share_link")
# 输出分享链接
echo -e "\033[32m"
echo "IPV4: $ipv4"
echo "port: $port"
echo "uuid: $uuid"
echo "password: $password"
echo "sni: $sni"
echo "congestion_control: $congestion_control"
echo ""
echo "分享链接: $share_link"
echo -e "\033[0m"

View File

@ -97,3 +97,22 @@ gen_password() {
echo "$rand"
}
# URL编码
url_encode() {
local str="$1"
local encoded=""
local i char hex
for ((i = 0; i < ${#str}; i++)); do
char="${str:$i:1}"
case "$char" in
[a-zA-Z0-9.~_-]) encoded+="$char" ;;
*)
printf -v hex '%02X' "'$char"
encoded+="%$hex"
;;
esac
done
echo "$encoded"
}