From 4e73e1edd733cdf18926e9051c7e2a5aa51dc9fb Mon Sep 17 00:00:00 2001 From: wyc <1104749580@qq.com> Date: Wed, 12 Aug 2026 10:14:49 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=84=E5=88=99=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 2 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../🇸🇬新加坡 _ 高速专线-hy2/public_ip.yaml | 1 + .../🇸🇬新加坡01 _ 电信联通推荐/public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../🇸🇬新加坡02 _ 电信联通推荐/public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../public_ip.yaml | 1 + .../🇸🇬新加坡2 _ 高速专线-hy2/public_ip.yaml | 1 + .../🇸🇬新加坡3 _ 高速专线-hy2/public_ip.yaml | 1 + .../🇸🇬新加坡4 _ 高速专线-hy2/public_ip.yaml | 1 + .../🇸🇬新加坡5 _ 高速专线-hy2/public_ip.yaml | 1 + .../🇹🇼台湾 _ 避免晚高峰使用/public_ip.yaml | 5 +- .../🇹🇼台湾2 _ 避免晚高峰使用/public_ip.yaml | 5 +- .../🇹🇼台湾3 _ 避免晚高峰使用/public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../public_ip.yaml | 5 +- .../public_ip.yaml | 5 +- .../public_ip.yaml | 5 +- .../public_ip.yaml | 1 + .../🇺🇸美国圣何塞01 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞01-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国圣何塞02 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞02-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国圣何塞03 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞03-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国圣何塞04 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞04-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国圣何塞05 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞05-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国圣何塞06 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞06-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国圣何塞07 _ 三网推荐/public_ip.yaml | 5 +- .../🇺🇸美国圣何塞07-0.1倍/public_ip.yaml | 10 +- .../🇺🇸美国洛杉矶08 _ 三网推荐/public_ip.yaml | 1 + .../🇺🇸美国洛杉矶08-0.1倍/public_ip.yaml | 5 +- src/base/Proxy_Ping0_Labeler.cpp | 180 ++++++++++++++---- src/base/config.h | 4 +- 70 files changed, 286 insertions(+), 106 deletions(-) diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本01 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本01 _ 电信移动联通推荐/public_ip.yaml index f0d9af7..541c38c 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本01 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本01 _ 电信移动联通推荐/public_ip.yaml @@ -1,9 +1,10 @@ proxy_name: 🇯🇵AWS日本01 | 电信移动联通推荐 username: n0012 mixed_port: 7897 -public_ip: 103.62.49.138 -public_ipv4: 103.62.49.138 +expired_public_ipv4: 103.62.49.138 +public_ipv4_error: ipify 请求失败:SSL connection failed public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:17Z public_ipv6_cached_at_utc: 2026-08-12T01:47:08Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本02 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本02 _ 电信移动联通推荐/public_ip.yaml index 1cd1db8..a7082a2 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本02 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本02 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.162 public_ipv4: 103.62.49.162 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:22Z public_ipv6_cached_at_utc: 2026-08-12T01:47:09Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本03 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本03 _ 电信移动联通推荐/public_ip.yaml index 4610ea9..01ed2a7 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本03 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本03 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.170 public_ipv4: 103.62.49.170 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:23Z public_ipv6_cached_at_utc: 2026-08-12T01:47:10Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本04 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本04 _ 电信移动联通推荐/public_ip.yaml index df41e09..f1c5afa 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本04 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本04 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.178 public_ipv4: 103.62.49.178 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:23Z public_ipv6_cached_at_utc: 2026-08-12T01:47:10Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本05 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本05 _ 电信移动联通推荐/public_ip.yaml index c1f882e..e5d42b2 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本05 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本05 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.154 public_ipv4: 103.62.49.154 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:24Z public_ipv6_cached_at_utc: 2026-08-12T01:47:11Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本06 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本06 _ 电信移动联通推荐/public_ip.yaml index e5d44fd..5c31030 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本06 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本06 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.154 public_ipv4: 103.62.49.154 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:25Z public_ipv6_cached_at_utc: 2026-08-12T01:47:12Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本07 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本07 _ 电信移动联通推荐/public_ip.yaml index dc4fc3c..785c044 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本07 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本07 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.178 public_ipv4: 103.62.49.178 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:25Z public_ipv6_cached_at_utc: 2026-08-12T01:47:12Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本08 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本08 _ 电信移动联通推荐/public_ip.yaml index 9a5816d..1111423 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本08 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本08 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.170 public_ipv4: 103.62.49.170 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:26Z public_ipv6_cached_at_utc: 2026-08-12T01:47:13Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本09 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本09 _ 电信移动联通推荐/public_ip.yaml index 54feb0c..34764cf 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本09 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本09 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.162 public_ipv4: 103.62.49.162 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:27Z public_ipv6_cached_at_utc: 2026-08-12T01:47:14Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵AWS日本10 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵AWS日本10 _ 电信移动联通推荐/public_ip.yaml index 2c2f1f6..c3515c2 100644 --- a/Node_Exit_Ip_Cache/🇯🇵AWS日本10 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵AWS日本10 _ 电信移动联通推荐/public_ip.yaml @@ -3,8 +3,8 @@ username: n0021 mixed_port: 7897 public_ip: 103.62.49.138 public_ipv4: 103.62.49.138 -public_ipv4_error: ipify 请求失败:SSL connection failed public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:27Z public_ipv6_cached_at_utc: 2026-08-12T01:47:14Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京01-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京01-0.1倍 _ 电信联通推荐/public_ip.yaml index 5ccdb52..14c98a6 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京01-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京01-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.138 public_ipv4: 103.62.49.138 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:10:58Z public_ipv6_cached_at_utc: 2026-08-12T01:46:52Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京02-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京02-0.1倍 _ 电信联通推荐/public_ip.yaml index ca1a135..3d268d8 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京02-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京02-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.162 public_ipv4: 103.62.49.162 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:00Z public_ipv6_cached_at_utc: 2026-08-12T01:46:53Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京03-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京03-0.1倍 _ 电信联通推荐/public_ip.yaml index 0aee8b4..2ac0b5d 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京03-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京03-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.170 public_ipv4: 103.62.49.170 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:01Z public_ipv6_cached_at_utc: 2026-08-12T01:46:55Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京04-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京04-0.1倍 _ 电信联通推荐/public_ip.yaml index 1a4a232..70ba3df 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京04-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京04-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.178 public_ipv4: 103.62.49.178 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:03Z public_ipv6_cached_at_utc: 2026-08-12T01:46:56Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京05-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京05-0.1倍 _ 电信联通推荐/public_ip.yaml index 22110d2..a72616c 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京05-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京05-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.154 public_ipv4: 103.62.49.154 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:05Z public_ipv6_cached_at_utc: 2026-08-12T01:46:58Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京06-0.1倍 _ 高速专线推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京06-0.1倍 _ 高速专线推荐/public_ip.yaml index a102b97..505a802 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京06-0.1倍 _ 高速专线推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京06-0.1倍 _ 高速专线推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.162 public_ipv4: 103.62.49.162 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:06Z public_ipv6_cached_at_utc: 2026-08-12T01:46:59Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京07-0.1倍 _ 高速专线推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京07-0.1倍 _ 高速专线推荐/public_ip.yaml index 496da7a..c0b8279 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京07-0.1倍 _ 高速专线推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京07-0.1倍 _ 高速专线推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.170 public_ipv4: 103.62.49.170 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:08Z public_ipv6_cached_at_utc: 2026-08-12T01:47:01Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京08-0.1倍 _ 高速专线推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京08-0.1倍 _ 高速专线推荐/public_ip.yaml index 699fcd8..3080a1c 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京08-0.1倍 _ 高速专线推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京08-0.1倍 _ 高速专线推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.178 public_ipv4: 103.62.49.178 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:10Z public_ipv6_cached_at_utc: 2026-08-12T01:47:02Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇯🇵日本东京09-0.1倍 _ 高速专线推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇯🇵日本东京09-0.1倍 _ 高速专线推荐/public_ip.yaml index 53a5ac0..7b723f4 100644 --- a/Node_Exit_Ip_Cache/🇯🇵日本东京09-0.1倍 _ 高速专线推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇯🇵日本东京09-0.1倍 _ 高速专线推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 103.62.49.154 public_ipv4: 103.62.49.154 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:11Z public_ipv6_cached_at_utc: 2026-08-12T01:47:03Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡01 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡01 _ 电信移动联通推荐/public_ip.yaml index 6e48e25..99dc842 100644 --- a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡01 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡01 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.146 public_ipv4: 67.159.48.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:38Z public_ipv6_cached_at_utc: 2026-08-12T01:47:23Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡02 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡02 _ 电信移动联通推荐/public_ip.yaml index 670f37b..b5c11bb 100644 --- a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡02 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡02 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.147 public_ipv4: 67.159.48.147 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:39Z public_ipv6_cached_at_utc: 2026-08-12T01:47:24Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡03 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡03 _ 电信移动联通推荐/public_ip.yaml index 59f726c..88198f8 100644 --- a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡03 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡03 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.148 public_ipv4: 67.159.48.148 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:39Z public_ipv6_cached_at_utc: 2026-08-12T01:47:26Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡04 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡04 _ 电信移动联通推荐/public_ip.yaml index e9d937f..e022424 100644 --- a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡04 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡04 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.149 public_ipv4: 67.159.48.149 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:40Z public_ipv6_cached_at_utc: 2026-08-12T01:47:26Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡05 _ 电信移动联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡05 _ 电信移动联通推荐/public_ip.yaml index f958492..3a0d53d 100644 --- a/Node_Exit_Ip_Cache/🇸🇬AWS新加坡05 _ 电信移动联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬AWS新加坡05 _ 电信移动联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.150 public_ipv4: 67.159.48.150 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:41Z public_ipv6_cached_at_utc: 2026-08-12T01:47:31Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡 _ 高速专线-hy2/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡 _ 高速专线-hy2/public_ip.yaml index 86dd28d..36216af 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡 _ 高速专线-hy2/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡 _ 高速专线-hy2/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.146 public_ipv4: 67.159.48.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:51Z public_ipv6_cached_at_utc: 2026-08-12T01:47:34Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡01 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡01 _ 电信联通推荐/public_ip.yaml index 6b25ddb..dde2f97 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡01 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡01 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 203.27.106.146 public_ipv4: 203.27.106.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:13Z public_ipv6_cached_at_utc: 2026-08-12T01:47:05Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡01-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡01-0.1倍 _ 电信联通推荐/public_ip.yaml index 5a371b5..e9ad6ad 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡01-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡01-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.146 public_ipv4: 67.159.48.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:28Z public_ipv6_cached_at_utc: 2026-08-12T01:47:15Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡02 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡02 _ 电信联通推荐/public_ip.yaml index 4966e75..ea89b30 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡02 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡02 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 203.27.106.146 public_ipv4: 203.27.106.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:15Z public_ipv6_cached_at_utc: 2026-08-12T01:47:07Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡02-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡02-0.1倍 _ 电信联通推荐/public_ip.yaml index b37e84e..3fb8c4b 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡02-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡02-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.147 public_ipv4: 67.159.48.147 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:30Z public_ipv6_cached_at_utc: 2026-08-12T01:47:17Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡03-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡03-0.1倍 _ 电信联通推荐/public_ip.yaml index a92acc9..ff7f0ca 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡03-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡03-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.148 public_ipv4: 67.159.48.148 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:32Z public_ipv6_cached_at_utc: 2026-08-12T01:47:18Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡04-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡04-0.1倍 _ 电信联通推荐/public_ip.yaml index c630094..011e1ed 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡04-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡04-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.149 public_ipv4: 67.159.48.149 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:34Z public_ipv6_cached_at_utc: 2026-08-12T01:47:20Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡05-0.1倍 _ 电信联通推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡05-0.1倍 _ 电信联通推荐/public_ip.yaml index 5a99fd2..1494f6c 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡05-0.1倍 _ 电信联通推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡05-0.1倍 _ 电信联通推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.150 public_ipv4: 67.159.48.150 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:36Z public_ipv6_cached_at_utc: 2026-08-12T01:47:22Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡2 _ 高速专线-hy2/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡2 _ 高速专线-hy2/public_ip.yaml index 0f3c9fa..6935269 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡2 _ 高速专线-hy2/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡2 _ 高速专线-hy2/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 67.159.48.146 public_ipv4: 67.159.48.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:52Z public_ipv6_cached_at_utc: 2026-08-12T01:47:35Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡3 _ 高速专线-hy2/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡3 _ 高速专线-hy2/public_ip.yaml index a20fae9..5d9f2f1 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡3 _ 高速专线-hy2/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡3 _ 高速专线-hy2/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 203.27.106.146 public_ipv4: 203.27.106.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:54Z public_ipv6_cached_at_utc: 2026-08-12T01:47:36Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡4 _ 高速专线-hy2/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡4 _ 高速专线-hy2/public_ip.yaml index 78d6833..18d5115 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡4 _ 高速专线-hy2/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡4 _ 高速专线-hy2/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 203.27.106.146 public_ipv4: 203.27.106.146 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:00Z public_ipv6_cached_at_utc: 2026-08-12T01:47:42Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇸🇬新加坡5 _ 高速专线-hy2/public_ip.yaml b/Node_Exit_Ip_Cache/🇸🇬新加坡5 _ 高速专线-hy2/public_ip.yaml index 14bc0cb..0f6e03a 100644 --- a/Node_Exit_Ip_Cache/🇸🇬新加坡5 _ 高速专线-hy2/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇸🇬新加坡5 _ 高速专线-hy2/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 146.235.17.47 public_ipv4: 146.235.17.47 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:03Z public_ipv6_cached_at_utc: 2026-08-12T01:47:45Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇹🇼台湾 _ 避免晚高峰使用/public_ip.yaml b/Node_Exit_Ip_Cache/🇹🇼台湾 _ 避免晚高峰使用/public_ip.yaml index e0f9404..3a56dab 100644 --- a/Node_Exit_Ip_Cache/🇹🇼台湾 _ 避免晚高峰使用/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇹🇼台湾 _ 避免晚高峰使用/public_ip.yaml @@ -1,9 +1,10 @@ proxy_name: 🇹🇼台湾 | 避免晚高峰使用 username: n0054 mixed_port: 7897 -public_ip: 114.37.199.26 -public_ipv4: 114.37.199.26 +public_ip: 114.37.200.234 +public_ipv4: 114.37.200.234 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:19Z public_ipv6_cached_at_utc: 2026-08-12T01:48:01Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇹🇼台湾2 _ 避免晚高峰使用/public_ip.yaml b/Node_Exit_Ip_Cache/🇹🇼台湾2 _ 避免晚高峰使用/public_ip.yaml index 4356869..93a153e 100644 --- a/Node_Exit_Ip_Cache/🇹🇼台湾2 _ 避免晚高峰使用/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇹🇼台湾2 _ 避免晚高峰使用/public_ip.yaml @@ -1,9 +1,10 @@ proxy_name: 🇹🇼台湾2 | 避免晚高峰使用 username: n0055 mixed_port: 7897 -public_ip: 111.249.67.172 -public_ipv4: 111.249.67.172 +public_ip: 36.230.63.84 +public_ipv4: 36.230.63.84 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:23Z public_ipv6_cached_at_utc: 2026-08-12T01:48:00Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇹🇼台湾3 _ 避免晚高峰使用/public_ip.yaml b/Node_Exit_Ip_Cache/🇹🇼台湾3 _ 避免晚高峰使用/public_ip.yaml index 73a2f0c..53fca06 100644 --- a/Node_Exit_Ip_Cache/🇹🇼台湾3 _ 避免晚高峰使用/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇹🇼台湾3 _ 避免晚高峰使用/public_ip.yaml @@ -1,9 +1,10 @@ proxy_name: 🇹🇼台湾3 | 避免晚高峰使用 username: n0056 mixed_port: 7897 -public_ip: 36.231.97.241 -public_ipv4: 36.231.97.241 +public_ip: 36.231.109.102 +public_ipv4: 36.231.109.102 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:24Z public_ipv6_cached_at_utc: 2026-08-12T01:48:08Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国01 _ 合适下载使用-0.01倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国01 _ 合适下载使用-0.01倍/public_ip.yaml index a19be96..c273b66 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国01 _ 合适下载使用-0.01倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国01 _ 合适下载使用-0.01倍/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 108.181.24.43 public_ipv4: 108.181.24.43 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:26Z public_ipv6_cached_at_utc: 2026-08-12T01:48:14Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国01-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国01-0.1倍 _ 电信联通移动推荐/public_ip.yaml index 7136f5b..1a81115 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国01-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国01-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0032 mixed_port: 7897 public_ip: 134.195.101.193 public_ipv4: 134.195.101.193 -public_ipv6: 2602:feda:f39b:2aa8:712f:fa9f:8b1e:e57 -cached_at_utc: 2026-07-21T02:23:01Z +public_ipv6: 2602:feda:f398:aea:e567:188a:f89d:cc2b +public_ipv4_cached_at_utc: 2026-08-12T02:11:41Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:42Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国02 _ 合适下载使用-0.01倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国02 _ 合适下载使用-0.01倍/public_ip.yaml index 8815020..0cc2a95 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国02 _ 合适下载使用-0.01倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国02 _ 合适下载使用-0.01倍/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 108.181.23.235 public_ipv4: 108.181.23.235 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:28Z public_ipv6_cached_at_utc: 2026-08-12T01:48:15Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国02-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国02-0.1倍 _ 电信联通移动推荐/public_ip.yaml index ccd9ace..ecf2381 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国02-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国02-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0033 mixed_port: 7897 public_ip: 134.195.101.194 public_ipv4: 134.195.101.194 -public_ipv6: 2602:feda:f39d:e4d5:f1e3:102e:a77b:2349 -cached_at_utc: 2026-07-21T02:23:01Z +public_ipv6: 2602:feda:f391:4542:c3c6:7f3b:43fe:75b8 +public_ipv4_cached_at_utc: 2026-08-12T02:11:43Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:43Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国03 _ 合适下载使用-0.01倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国03 _ 合适下载使用-0.01倍/public_ip.yaml index 7993cef..f448fa7 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国03 _ 合适下载使用-0.01倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国03 _ 合适下载使用-0.01倍/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 208.87.242.97 public_ipv4: 208.87.242.97 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:29Z public_ipv6_cached_at_utc: 2026-08-12T01:48:16Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国03-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国03-0.1倍 _ 电信联通移动推荐/public_ip.yaml index df40cac..2b9e8f5 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国03-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国03-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0034 mixed_port: 7897 public_ip: 134.195.101.195 public_ipv4: 134.195.101.195 -public_ipv6: 2602:feda:f395:fc3c:5df5:b392:c36a:8cf7 -cached_at_utc: 2026-07-21T02:23:01Z +public_ipv6: 2602:feda:f397:1ffa:3657:170b:ab41:bf28 +public_ipv4_cached_at_utc: 2026-08-12T02:11:44Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:44Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国04 _ 合适下载使用-0.01倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国04 _ 合适下载使用-0.01倍/public_ip.yaml index 0b628c8..4e0beb3 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国04 _ 合适下载使用-0.01倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国04 _ 合适下载使用-0.01倍/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 108.181.24.47 public_ipv4: 108.181.24.47 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:30Z public_ipv6_cached_at_utc: 2026-08-12T01:48:17Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国04-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国04-0.1倍 _ 电信联通移动推荐/public_ip.yaml index 37d75b7..67c5431 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国04-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国04-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0035 mixed_port: 7897 public_ip: 134.195.101.197 public_ipv4: 134.195.101.197 -public_ipv6: 2602:feda:f39a:d2a8:39e5:647a:b949:cd64 -cached_at_utc: 2026-07-21T02:23:03Z +public_ipv6: 2602:feda:f39c:3f65:a52e:ed9f:4b8f:f251 +public_ipv4_cached_at_utc: 2026-08-12T02:11:45Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:45Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国05 _ 合适下载使用-0.01倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国05 _ 合适下载使用-0.01倍/public_ip.yaml index b830f5f..27d23a9 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国05 _ 合适下载使用-0.01倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国05 _ 合适下载使用-0.01倍/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 108.181.24.41 public_ipv4: 108.181.24.41 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:32Z public_ipv6_cached_at_utc: 2026-08-12T01:48:18Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国05-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国05-0.1倍 _ 电信联通移动推荐/public_ip.yaml index 9b71b7a..8d7b180 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国05-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国05-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0036 mixed_port: 7897 public_ip: 134.195.101.120 public_ipv4: 134.195.101.120 -public_ipv6: 2602:feda:f399:3482:1ef5:da10:a002:cf58 -cached_at_utc: 2026-07-21T02:23:03Z +public_ipv6: 2602:feda:f39b:e6ac:b937:4b:bad7:ffba +public_ipv4_cached_at_utc: 2026-08-12T02:11:46Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:47Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国06-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国06-0.1倍 _ 电信联通移动推荐/public_ip.yaml index 2817044..9469424 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国06-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国06-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0037 mixed_port: 7897 public_ip: 134.195.101.180 public_ipv4: 134.195.101.180 -public_ipv6: 2602:feda:f398:da05:369a:e728:e327:2914 -cached_at_utc: 2026-07-21T02:23:04Z +public_ipv6: 2602:feda:f39a:6185:a814:b010:5a7:bfd0 +public_ipv4_cached_at_utc: 2026-08-12T02:11:47Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:48Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国07-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国07-0.1倍 _ 电信联通移动推荐/public_ip.yaml index d43850b..ce5ea04 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国07-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国07-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0038 mixed_port: 7897 public_ip: 134.195.101.188 public_ipv4: 134.195.101.188 -public_ipv6: 2602:feda:f390:c2ea:d430:7bd5:7a06:a439 -cached_at_utc: 2026-07-21T02:23:04Z +public_ipv6: 2602:feda:f390:eb17:1618:a833:95e7:33f9 +public_ipv4_cached_at_utc: 2026-08-12T02:11:48Z +public_ipv6_cached_at_utc: 2026-08-12T02:11:49Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国08-0.1倍 _ 电信联通移动推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国08-0.1倍 _ 电信联通移动推荐/public_ip.yaml index f94e43b..f65abab 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国08-0.1倍 _ 电信联通移动推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国08-0.1倍 _ 电信联通移动推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 203.10.96.139 public_ipv4: 203.10.96.139 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:11:50Z public_ipv6_cached_at_utc: 2026-08-12T01:47:34Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01 _ 三网推荐/public_ip.yaml index 5a92a4e..265fe27 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0062 mixed_port: 7897 public_ip: 134.195.101.193 public_ipv4: 134.195.101.193 -public_ipv6: 2602:feda:f393:5162:25fc:91f:700e:4f1a -cached_at_utc: 2026-07-21T02:24:03Z +public_ipv6: 2602:feda:f39a:199:60fe:a88a:2864:ba13 +public_ipv4_cached_at_utc: 2026-08-12T02:13:33Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:34Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01-0.1倍/public_ip.yaml index 3015136..b52a780 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞01-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞01-0.1倍 username: n0046 mixed_port: 7897 -public_ip: 134.195.101.193 -public_ipv4: 134.195.101.193 -public_ipv6: 2602:feda:f392:d804:1396:1c34:2b3b:5b9a -cached_at_utc: 2026-07-21T02:23:23Z +expired_public_ipv4: 134.195.101.193 +expired_public_ipv6: 2602:feda:f392:d804:1396:1c34:2b3b:5b9a +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:04Z +public_ipv6_cached_at_utc: 2026-08-12T02:12:09Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02 _ 三网推荐/public_ip.yaml index 8e1dcdb..0eca8b8 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0063 mixed_port: 7897 public_ip: 134.195.101.194 public_ipv4: 134.195.101.194 -public_ipv6: 2602:feda:f399:2c38:e3d3:d70c:33c9:21b3 -cached_at_utc: 2026-07-21T02:24:04Z +public_ipv6: 2602:feda:f39f:c9a8:a110:3162:a48b:1f5a +public_ipv4_cached_at_utc: 2026-08-12T02:13:34Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:35Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02-0.1倍/public_ip.yaml index 976350f..b3b67bf 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞02-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞02-0.1倍 username: n0047 mixed_port: 7897 -public_ip: 134.195.101.194 -public_ipv4: 134.195.101.194 -public_ipv6: 2602:feda:f399:83a4:5723:c2e1:d589:a253 -cached_at_utc: 2026-07-21T02:23:25Z +expired_public_ipv4: 134.195.101.194 +expired_public_ipv6: 2602:feda:f399:83a4:5723:c2e1:d589:a253 +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:14Z +public_ipv6_cached_at_utc: 2026-08-12T02:12:19Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03 _ 三网推荐/public_ip.yaml index e4c3e4a..edcbf07 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0064 mixed_port: 7897 public_ip: 134.195.101.195 public_ipv4: 134.195.101.195 -public_ipv6: 2602:feda:f39a:13e5:d88e:29e8:5379:7486 -cached_at_utc: 2026-07-21T02:24:04Z +public_ipv6: 2602:feda:f39b:cd95:6db2:d330:12ee:b024 +public_ipv4_cached_at_utc: 2026-08-12T02:13:36Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:37Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03-0.1倍/public_ip.yaml index 6d77c66..c945a8a 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞03-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞03-0.1倍 username: n0048 mixed_port: 7897 -public_ip: 134.195.101.195 -public_ipv4: 134.195.101.195 -public_ipv6: 2602:feda:f39b:4401:de6f:8516:17c8:b20e -cached_at_utc: 2026-07-21T02:23:28Z +expired_public_ipv4: 134.195.101.195 +expired_public_ipv6: 2602:feda:f39b:4401:de6f:8516:17c8:b20e +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:24Z +public_ipv6_cached_at_utc: 2026-08-12T02:12:29Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04 _ 三网推荐/public_ip.yaml index 9d7a88b..995c81e 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0065 mixed_port: 7897 public_ip: 134.195.101.197 public_ipv4: 134.195.101.197 -public_ipv6: 2602:feda:f39a:c712:e32:2b7:76eb:3172 -cached_at_utc: 2026-07-21T02:24:05Z +public_ipv6: 2602:feda:f392:f752:beab:7616:d5c:b6ca +public_ipv4_cached_at_utc: 2026-08-12T02:13:38Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:39Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04-0.1倍/public_ip.yaml index 17b4e93..039732e 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞04-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞04-0.1倍 username: n0049 mixed_port: 7897 -public_ip: 134.195.101.197 -public_ipv4: 134.195.101.197 -public_ipv6: 2602:feda:f397:99de:8796:ee83:4afd:ee69 -cached_at_utc: 2026-07-21T02:23:30Z +expired_public_ipv4: 134.195.101.197 +expired_public_ipv6: 2602:feda:f397:99de:8796:ee83:4afd:ee69 +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:34Z +public_ipv6_cached_at_utc: 2026-08-12T02:12:39Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05 _ 三网推荐/public_ip.yaml index b97941a..0121a7b 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0066 mixed_port: 7897 public_ip: 134.195.101.120 public_ipv4: 134.195.101.120 -public_ipv6: 2602:feda:f393:cb92:828b:312d:85e0:d1e5 -cached_at_utc: 2026-07-21T02:24:10Z +public_ipv6: 2602:feda:f399:e96a:3378:5d7c:594f:aed8 +public_ipv4_cached_at_utc: 2026-08-12T02:13:39Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:40Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05-0.1倍/public_ip.yaml index 26e2d3b..e94e635 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞05-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞05-0.1倍 username: n0050 mixed_port: 7897 -public_ip: 134.195.101.120 -public_ipv4: 134.195.101.120 -public_ipv6: 2602:feda:f392:c639:102e:dc8b:f841:144e -cached_at_utc: 2026-07-21T02:23:32Z +expired_public_ipv4: 134.195.101.120 +expired_public_ipv6: 2602:feda:f392:c639:102e:dc8b:f841:144e +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:44Z +public_ipv6_cached_at_utc: 2026-08-12T02:12:49Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06 _ 三网推荐/public_ip.yaml index 45c5131..548d661 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0067 mixed_port: 7897 public_ip: 134.195.101.180 public_ipv4: 134.195.101.180 -public_ipv6: 2602:feda:f39d:dc3c:3361:70b2:1845:239d -cached_at_utc: 2026-07-21T02:24:11Z +public_ipv6: 2602:feda:f39b:d15a:2646:ce85:cad3:bd1e +public_ipv4_cached_at_utc: 2026-08-12T02:13:41Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:42Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06-0.1倍/public_ip.yaml index dd212dc..188ab1b 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞06-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞06-0.1倍 username: n0051 mixed_port: 7897 -public_ip: 134.195.101.180 -public_ipv4: 134.195.101.180 -public_ipv6: 2602:feda:f398:ada:918f:3637:21ac:2f99 -cached_at_utc: 2026-07-21T02:23:34Z +expired_public_ipv4: 134.195.101.180 +expired_public_ipv6: 2602:feda:f398:ada:918f:3637:21ac:2f99 +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:12:54Z +public_ipv6_cached_at_utc: 2026-08-12T02:12:59Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07 _ 三网推荐/public_ip.yaml index 42cafbc..7b8ff3f 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07 _ 三网推荐/public_ip.yaml @@ -3,7 +3,8 @@ username: n0068 mixed_port: 7897 public_ip: 134.195.101.188 public_ipv4: 134.195.101.188 -public_ipv6: 2602:feda:f396:24f5:6a11:a635:1005:a67b -cached_at_utc: 2026-07-21T02:24:12Z +public_ipv6: 2602:feda:f398:49e7:adf2:ebe3:7e4f:36e6 +public_ipv4_cached_at_utc: 2026-08-12T02:13:43Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:44Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07-0.1倍/public_ip.yaml index d5e8b1e..ed5bf97 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国圣何塞07-0.1倍/public_ip.yaml @@ -1,9 +1,11 @@ proxy_name: 🇺🇸美国圣何塞07-0.1倍 username: n0052 mixed_port: 7897 -public_ip: 134.195.101.188 -public_ipv4: 134.195.101.188 -public_ipv6: 2602:feda:f391:9ff:bb3:3469:73be:8c00 -cached_at_utc: 2026-07-21T02:23:38Z +expired_public_ipv4: 134.195.101.188 +expired_public_ipv6: 2602:feda:f391:9ff:bb3:3469:73be:8c00 +public_ipv4_error: ipify 请求失败:SSL connection failed +public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:04Z +public_ipv6_cached_at_utc: 2026-08-12T02:13:09Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08 _ 三网推荐/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08 _ 三网推荐/public_ip.yaml index ce6447f..e5fa8a5 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08 _ 三网推荐/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08 _ 三网推荐/public_ip.yaml @@ -4,6 +4,7 @@ mixed_port: 7897 public_ip: 203.10.96.139 public_ipv4: 203.10.96.139 public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:45Z public_ipv6_cached_at_utc: 2026-08-12T01:48:19Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08-0.1倍/public_ip.yaml b/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08-0.1倍/public_ip.yaml index 80a99eb..2009ea0 100644 --- a/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08-0.1倍/public_ip.yaml +++ b/Node_Exit_Ip_Cache/🇺🇸美国洛杉矶08-0.1倍/public_ip.yaml @@ -1,9 +1,10 @@ proxy_name: 🇺🇸美国洛杉矶08-0.1倍 username: n0053 mixed_port: 7897 -public_ip: 203.10.96.139 -public_ipv4: 203.10.96.139 +expired_public_ipv4: 203.10.96.139 +public_ipv4_error: ipify 请求失败:SSL connection failed public_ipv6_error: ipify 请求失败:SSL connection failed +public_ipv4_cached_at_utc: 2026-08-12T02:13:14Z public_ipv6_cached_at_utc: 2026-08-12T01:47:55Z ipv4_source: https://api4.ipify.org/?format=json ipv6_source: https://api6.ipify.org/?format=json \ No newline at end of file diff --git a/src/base/Proxy_Ping0_Labeler.cpp b/src/base/Proxy_Ping0_Labeler.cpp index 3464c69..838c4bb 100644 --- a/src/base/Proxy_Ping0_Labeler.cpp +++ b/src/base/Proxy_Ping0_Labeler.cpp @@ -4,10 +4,12 @@ #include "Proxy_Ping0_Labeler.h" #include "Async_Blocking.h" #include "Ping0_Html_Parser.h" +#include "config.h" #include "export.h" #include #include #include +#include #include #include #include @@ -40,14 +42,12 @@ struct Node_Route { struct Public_Ip_Cache { std::optional ipv4; std::optional ipv6; + std::optional expired_ipv4; + std::optional expired_ipv6; std::optional ipv4_error; std::optional ipv6_error; - bool has_ipv4_state() const { - return ipv4.has_value() || ipv4_error.has_value(); - } - bool has_ipv6_state() const { - return ipv6.has_value() || ipv6_error.has_value(); - } + std::optional ipv4_cached_at_utc; + std::optional ipv6_cached_at_utc; }; struct Node_Ping0_Result { std::string name; @@ -75,8 +75,7 @@ std::string trim_ascii(std::string value) { const auto last = value.find_last_not_of(" \t\r\n"); return value.substr(first, last - first + 1); } -std::string make_utc_time() { - const auto now = std::chrono::system_clock::now(); +std::string make_utc_time(std::chrono::system_clock::time_point now) { const auto value = std::chrono::system_clock::to_time_t(now); std::tm utc{}; #ifdef _WIN32 @@ -86,6 +85,59 @@ std::string make_utc_time() { #endif return std::format("{:04}-{:02}-{:02}T{:02}:{:02}:{:02}Z", utc.tm_year + 1900, utc.tm_mon + 1, utc.tm_mday, utc.tm_hour, utc.tm_min, utc.tm_sec); } +std::string make_utc_time() { + return make_utc_time(std::chrono::system_clock::now()); +} +std::optional parse_fixed_uint(std::string_view text, size_t offset, size_t size) { + int result = 0; + for (size_t i = 0; i < size; ++i) { + const auto ch = static_cast(text[offset + i]); + if (ch < '0' || ch > '9') { + return std::nullopt; + } + result = result * 10 + ch - '0'; + } + return result; +} +std::optional parse_utc_time(std::string_view text) { + if (text.size() != 20 || text[4] != '-' || text[7] != '-' || text[10] != 'T' || text[13] != ':' || text[16] != ':' || text[19] != 'Z') { + return std::nullopt; + } + const auto year = parse_fixed_uint(text, 0, 4); + const auto month = parse_fixed_uint(text, 5, 2); + const auto day = parse_fixed_uint(text, 8, 2); + const auto hour = parse_fixed_uint(text, 11, 2); + const auto minute = parse_fixed_uint(text, 14, 2); + const auto second = parse_fixed_uint(text, 17, 2); + if (!year || !month || !day || !hour || !minute || !second || *hour > 23 || *minute > 59 || *second > 59) { + return std::nullopt; + } + std::tm utc{}; + utc.tm_year = *year - 1900; + utc.tm_mon = *month - 1; + utc.tm_mday = *day; + utc.tm_hour = *hour; + utc.tm_min = *minute; + utc.tm_sec = *second; +#ifdef _WIN32 + const auto value = _mkgmtime(&utc); +#else + const auto value = timegm(&utc); +#endif + if (value == static_cast(-1)) { + return std::nullopt; + } + std::tm checked{}; +#ifdef _WIN32 + gmtime_s(&checked, &value); +#else + gmtime_r(&value, &checked); +#endif + if (checked.tm_year != utc.tm_year || checked.tm_mon != utc.tm_mon || checked.tm_mday != utc.tm_mday || checked.tm_hour != utc.tm_hour || checked.tm_min != utc.tm_min || checked.tm_sec != utc.tm_sec) { + return std::nullopt; + } + return std::chrono::system_clock::from_time_t(value); +} std::string make_safe_file_name(std::string_view name) { std::string result; result.reserve(name.size()); @@ -204,8 +256,16 @@ Public_Ip_Cache load_cached_public_ips(const fs::path& path) { result.ipv4 = read_optional_string(cache, "public_ip"); } result.ipv6 = read_optional_string(cache, "public_ipv6"); + result.expired_ipv4 = read_optional_string(cache, "expired_public_ipv4"); + result.expired_ipv6 = read_optional_string(cache, "expired_public_ipv6"); result.ipv4_error = read_optional_string(cache, "public_ipv4_error"); result.ipv6_error = read_optional_string(cache, "public_ipv6_error"); + if (const auto cached_at = read_optional_string(cache, "public_ipv4_cached_at_utc")) { + result.ipv4_cached_at_utc = parse_utc_time(*cached_at); + } + if (const auto cached_at = read_optional_string(cache, "public_ipv6_cached_at_utc")) { + result.ipv6_cached_at_utc = parse_utc_time(*cached_at); + } return result; } std::string query_public_ip_by_user(std::string_view username, uint16_t mixed_port, std::string_view host) { @@ -243,13 +303,24 @@ void save_public_ip_cache(const fs::path& path, const Node_Route& route, const P if (cache.ipv6) { node["public_ipv6"] = *cache.ipv6; } + if (cache.expired_ipv4) { + node["expired_public_ipv4"] = *cache.expired_ipv4; + } + if (cache.expired_ipv6) { + node["expired_public_ipv6"] = *cache.expired_ipv6; + } if (cache.ipv4_error) { node["public_ipv4_error"] = *cache.ipv4_error; } if (cache.ipv6_error) { node["public_ipv6_error"] = *cache.ipv6_error; } - node["cached_at_utc"] = make_utc_time(); + if (cache.ipv4_cached_at_utc) { + node["public_ipv4_cached_at_utc"] = make_utc_time(*cache.ipv4_cached_at_utc); + } + if (cache.ipv6_cached_at_utc) { + node["public_ipv6_cached_at_utc"] = make_utc_time(*cache.ipv6_cached_at_utc); + } node["ipv4_source"] = source_url(ipv4_query_url_host); node["ipv6_source"] = source_url(ipv6_query_url_host); YAML::Emitter emitter; @@ -260,30 +331,65 @@ void save_public_ip_cache(const fs::path& path, const Node_Route& route, const P } write_file_atomic(path, std::string_view(emitter.c_str(), emitter.size())); } +bool public_ip_cache_expired(const std::optional& cached_at_utc, int ttl_seconds) { + if (ttl_seconds <= 0) { + return false; + } + if (!cached_at_utc) { + return true; + } + return std::chrono::system_clock::now() - *cached_at_utc >= std::chrono::seconds(ttl_seconds); +} +void refresh_public_ipv4(Public_Ip_Cache& cache, std::string_view username, uint16_t mixed_port) { + const auto old_ipv4 = cache.ipv4 ? cache.ipv4 : cache.expired_ipv4; + cache.ipv4.reset(); + cache.ipv4_error.reset(); + cache.ipv4_cached_at_utc = std::chrono::system_clock::now(); + try { + cache.ipv4 = query_public_ip_by_user(username, mixed_port, ipv4_query_url_host); + cache.expired_ipv4.reset(); + } + catch (const std::exception& error) { + cache.expired_ipv4 = old_ipv4; + cache.ipv4_error = error_text_to_utf8(error.what()); + } +} +void refresh_public_ipv6(Public_Ip_Cache& cache, std::string_view username, uint16_t mixed_port) { + const auto old_ipv6 = cache.ipv6 ? cache.ipv6 : cache.expired_ipv6; + cache.ipv6.reset(); + cache.ipv6_error.reset(); + cache.ipv6_cached_at_utc = std::chrono::system_clock::now(); + try { + cache.ipv6 = query_public_ip_by_user(username, mixed_port, ipv6_query_url_host); + cache.expired_ipv6.reset(); + } + catch (const std::exception& error) { + cache.expired_ipv6 = old_ipv6; + cache.ipv6_error = error_text_to_utf8(error.what()); + } +} +std::optional usable_ipv4(const Public_Ip_Cache& cache) { + return cache.ipv4 ? cache.ipv4 : cache.expired_ipv4; +} +std::optional usable_ipv6(const Public_Ip_Cache& cache) { + return cache.ipv6 ? cache.ipv6 : cache.expired_ipv6; +} Public_Ip_Cache get_public_ips(const Node_Route& route, const fs::path& cache_dir, std::optional mixed_port) { const auto cache_path = make_ip_cache_path(cache_dir, route.proxy_name); std::lock_guard lock(public_ip_cache_lock(cache_path)); - auto cache = load_cached_public_ips(cache_path); + Public_Ip_Cache cache = load_cached_public_ips(cache_path); + const bool ipv4_expired = public_ip_cache_expired(cache.ipv4_cached_at_utc, public_ipv4_cache_ttl_seconds); + const bool ipv6_expired = public_ip_cache_expired(cache.ipv6_cached_at_utc, public_ipv6_cache_ttl_seconds); bool changed = false; if (!mixed_port) { return cache; } - if (!cache.has_ipv4_state()) { - try { - cache.ipv4 = query_public_ip_by_user(route.username, *mixed_port, ipv4_query_url_host); - } - catch (const std::exception& error) { - cache.ipv4_error = error_text_to_utf8(error.what()); - } + if (radical_ipv4 ? ipv4_expired : ipv4_expired && !cache.ipv4.has_value()) { + refresh_public_ipv4(cache, route.username, *mixed_port); changed = true; } - if (!cache.has_ipv6_state()) { - try { - cache.ipv6 = query_public_ip_by_user(route.username, *mixed_port, ipv6_query_url_host); - } - catch (const std::exception& error) { - cache.ipv6_error = error_text_to_utf8(error.what()); - } + if (radical_ipv6 ? ipv6_expired : ipv6_expired && !cache.ipv6.has_value()) { + refresh_public_ipv6(cache, route.username, *mixed_port); changed = true; } if (changed) { @@ -404,7 +510,6 @@ std::string make_proxy_name_suffix(const Node_Ping0_Result& result) { if (result.public_ipv6) { parts.push_back("_" + compact_ip_text(*result.public_ipv6)); } - std::string suffix; for (const auto& part : parts) { if (!part.empty()) { @@ -433,17 +538,18 @@ void print_ping0_info(const Node_Route& route, const Node_Ping0_Result& result) } std::optional load_node_ping0_result(const Node_Route& route, const fs::path& ip_cache_dir, const fs::path& html_cache_dir, std::optional mixed_port) { const auto public_ips = get_public_ips(route, ip_cache_dir, mixed_port); - if (!public_ips.ipv4) { + const auto public_ipv4 = usable_ipv4(public_ips); + if (!public_ipv4) { std::cerr << std::format("Ping0 标注跳过:节点 {} 没有 IPv4 出口缓存\n", route.proxy_name); return std::nullopt; } - const auto html_path = find_ping0_html_path(html_cache_dir, *public_ips.ipv4); + const auto html_path = find_ping0_html_path(html_cache_dir, *public_ipv4); if (!html_path) { - std::cerr << std::format("【注意添加缓存数据】================================ Ping0 HTML 缓存不存在,节点 {},出口 IPv4 {},目录 {}\n", route.proxy_name, *public_ips.ipv4, path_to_utf8(html_cache_dir)); + std::cerr << std::format("【注意添加缓存数据】================================ Ping0 HTML 缓存不存在,节点 {},出口 IPv4 {},目录 {}\n", route.proxy_name, *public_ipv4, path_to_utf8(html_cache_dir)); return std::nullopt; } auto info = Ping0::parse_file(*html_path); - return Node_Ping0_Result{route.proxy_name, *public_ips.ipv4, public_ips.ipv6, make_ip_cache_path(ip_cache_dir, route.proxy_name), *html_path, std::move(info), route.index, std::nullopt}; + return Node_Ping0_Result{route.proxy_name, *public_ipv4, usable_ipv6(public_ips), make_ip_cache_path(ip_cache_dir, route.proxy_name), *html_path, std::move(info), route.index, std::nullopt}; } void record_ai_node_info(Node_Ping0_Result result, const fs::path& node_state_dir) { const auto ai_score = ai_scene_score(result.info); @@ -459,13 +565,13 @@ struct Node_Ping0_Task_Result { std::string error; }; asio::awaitable load_node_ping0_result_task(asio::thread_pool& pool, - std::vector& results, - size_t index, - fs::path ip_cache_dir, - fs::path html_cache_dir, - std::optional mixed_port, - std::shared_ptr pending, - asio::steady_timer& signal) { + std::vector& results, + size_t index, + fs::path ip_cache_dir, + fs::path html_cache_dir, + std::optional mixed_port, + std::shared_ptr pending, + asio::steady_timer& signal) { try { const auto route = results[index].route; results[index].result = co_await WyC::async_blocking(pool, [route, ip_cache_dir, html_cache_dir, mixed_port] { @@ -501,7 +607,7 @@ asio::awaitable append_ping0_info_to_proxy_names_async(YAML::Node& proxies auto pending = std::make_shared(routes.size()); auto executor = co_await asio::this_coro::executor; asio::steady_timer signal(executor); - std::cout << std::format("Ping0 标注需要处理 {} 个节点,使用 {} 个 Asio 池线程\n", routes.size(), thread_count); + std::cout << std::format("Ping0 标注需要处理 {} 个节点,使用 {} 个 Asio 池线程,IPv4 缓存 TTL {} 秒,IPv4 过期{},IPv6 缓存 TTL {} 秒,IPv6 过期{}\n", routes.size(), thread_count, public_ipv4_cache_ttl_seconds, radical_ipv4 ? "重新请求" : "仅缺失时请求", public_ipv6_cache_ttl_seconds, radical_ipv6 ? "重新请求" : "仅缺失时请求"); for (size_t i = 0; i < routes.size(); ++i) { asio::co_spawn(executor, load_node_ping0_result_task(pool, results, i, ip_cache_dir, html_cache_dir, mixed_port, pending, signal), asio::detached); } diff --git a/src/base/config.h b/src/base/config.h index 3ecb836..54f6ece 100644 --- a/src/base/config.h +++ b/src/base/config.h @@ -4,5 +4,5 @@ inline constexpr int public_ipv4_cache_ttl_seconds = 7 * 24 * 60 * 60; // 出口 IPv6 缓存有效期,单位秒;0 表示永不过期。 inline constexpr int public_ipv6_cache_ttl_seconds = 7 * 24 * 60 * 60; // true 表示对应缓存过期就重查;false 表示过期且缺少对应 IP 才重查。 -inline constexpr bool radical_ipv4 = false; -inline constexpr bool radical_ipv6 = false; +inline constexpr bool radical_ipv4 = true; +inline constexpr bool radical_ipv6 = true;