From 08a686beac310d0850a611c6a7e8982b1534d445 Mon Sep 17 00:00:00 2001 From: SukkaW Date: Fri, 11 Oct 2024 21:03:10 +0800 Subject: [PATCH] Fix: proper always real ip --- Build/build-sgmodule-always-realip.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Build/build-sgmodule-always-realip.ts b/Build/build-sgmodule-always-realip.ts index abfda45f..3839e231 100644 --- a/Build/build-sgmodule-always-realip.ts +++ b/Build/build-sgmodule-always-realip.ts @@ -41,7 +41,16 @@ const HOSTNAMES = [ export const buildAlwaysRealIPModule = task(require.main === module, __filename)(async (span) => { // Intranet, Router Setup, and mant more const dataset = [Object.entries(DIRECTS), Object.entries(LANS)]; - const surge = dataset.flatMap(data => data.flatMap(([, { domains }]) => domains.flatMap((domain) => [`*.${domain}`, domain]))); + const surge = dataset.flatMap(data => data.flatMap(([, { domains }]) => domains.flatMap((domain) => { + switch (domain[0]) { + case '+': + return [`*.${domain.slice(1)}`]; + case '$': + return [domain.slice(1)]; + default: + return [domain, `*.${domain}`]; + } + }))); return Promise.all([ compareAndWriteFile(