From 002e5f304d26efc5b6e410d564e639caec6f16a1 Mon Sep 17 00:00:00 2001 From: hotyue <52734432+hotyue@users.noreply.github.com> Date: Fri, 10 Apr 2026 14:12:57 +0000 Subject: [PATCH] =?UTF-8?q?fix(google):=20=E5=89=A5=E7=A6=BB=E5=86=97?= =?UTF-8?q?=E4=BD=99=20IP=20=E6=8E=A2=E6=B5=8B=EF=BC=8C=E5=BC=BA=E5=88=B6?= =?UTF-8?q?=E5=85=A8=E5=B1=80=20curl=20=E8=AF=B7=E6=B1=82=E9=81=B5?= =?UTF-8?q?=E5=BE=AA=20IP=5FPREF=20=E9=94=9A=E7=82=B9=E5=8D=8F=E8=AE=AE?= =?UTF-8?q?=E5=87=BA=E7=BD=91=20(v3.0.1)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/mod_google.sh | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/core/mod_google.sh b/core/mod_google.sh index e800e08..d25f7b5 100755 --- a/core/mod_google.sh +++ b/core/mod_google.sh @@ -48,8 +48,8 @@ get_random_coord() { } # --- [环境初始化] --- -# 获取当前出口 IP 仅用于日志记录 -CURRENT_V4=$(curl -4 -m 10 -s https://api.ip.sb/ip || echo "获取IP失败") +# [v3.0.2修复] 直接读取系统已锁定的锚点 IP,彻底杜绝“获取IP失败”及隧道偏移 +CURRENT_IP="${BIND_IP:-Unknown}" # 会话锁定:单次执行内使用固定的浏览器指纹 SESSION_UA=${UA_POOL[$RANDOM % ${#UA_POOL[@]}]} @@ -60,7 +60,7 @@ SESSION_BASE_LON=$(get_random_coord $BASE_LON 270) # 【核心升级】随机决定本次上网深度 (6 - 10 个复合动作,配合高频长效拉伸) TOTAL_ACTIONS=$((6 + RANDOM % 5)) -log "$MODULE_NAME" "INFO " "当前出网 IP: $CURRENT_V4" +log "$MODULE_NAME" "INFO " "当前出网 IP: $CURRENT_IP" log "$MODULE_NAME" "INFO " "设备指纹锁定: ${SESSION_UA:0:45}..." log "$MODULE_NAME" "INFO " "虚拟驻留坐标: $SESSION_BASE_LAT, $SESSION_BASE_LON" @@ -79,19 +79,19 @@ for ((i=1; i<=TOTAL_ACTIONS; i++)); do case $ACTION_TYPE in 1) # 搜索行为 - CODE=$(curl -4 -m 15 -s -L -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ + CODE=$(curl -${IP_PREF:-4} -m 15 -s -L -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ "https://www.google.com/search?q=${ENCODED_KEY}&${LANG_PARAMS}") ;; 2) # 浏览本土新闻 - CODE=$(curl -4 -m 15 -s -L -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ + CODE=$(curl -${IP_PREF:-4} -m 15 -s -L -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ "https://news.google.com/home?${LANG_PARAMS}") ;; 3) # 地图坐标查询 - CODE=$(curl -4 -m 15 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ + CODE=$(curl -${IP_PREF:-4} -m 15 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ "https://www.google.com/maps/search/${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}") ;; 4) # 触发移动端系统底层位置检测像素 - CODE=$(curl -4 -m 10 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ + CODE=$(curl -${IP_PREF:-4} -m 10 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ "https://connectivitycheck.gstatic.com/generate_204") ;; esac @@ -108,8 +108,8 @@ for ((i=1; i<=TOTAL_ACTIONS; i++)); do done # --- [结果纠偏自检] --- -# 去掉所有语言参数,进行一次最干净的直连测试 -FINAL_URL=$(curl -4 -m 15 -s -L -o /dev/null -w "%{url_effective}" https://www.google.com) +# 去掉所有语言参数,进行一次最干净的直连测试 (强制遵循锚点协议) +FINAL_URL=$(curl -${IP_PREF:-4} -m 15 -s -L -o /dev/null -w "%{url_effective}" https://www.google.com) if [[ "$FINAL_URL" == *"$VALID_URL_SUFFIX"* ]]; then STATUS="✅ 目标区域达成 ($VALID_URL_SUFFIX)"