diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 2b0280dd..00000000 Binary files a/.DS_Store and /dev/null differ diff --git a/Build/build-cidr.js b/Build/build-cidr.js index a4c40fce..1a3d44a9 100644 --- a/Build/build-cidr.js +++ b/Build/build-cidr.js @@ -21,8 +21,8 @@ function makeCidrList(cidr) { return `############################ # Mainland China IPv4 CIDR -# Data from vx.link (tmplink @ GitHub) -# Last Updated: ${date.getFullYear()}-${date.getUTCMonth() + 1}-${date.getUTCDate()} ${date.getUTCHours()}:${date.getUTCMinutes()}:${date.getUTCSeconds()} +# Data from misaka.io (misakaio @ GitHub) +# Last Updated: ${date.toISOString()} # Routes: ${cidr.length} ############################\n` + cidr.map(i => `IP-CIDR,${i}`).join('\n') + '\n########### END ############\n'; }; diff --git a/Build/build-index.html.js b/Build/build-index.html.js new file mode 100644 index 00000000..a97a2e2d --- /dev/null +++ b/Build/build-index.html.js @@ -0,0 +1,64 @@ +const listDir = require('@sukka/listdir'); +const path = require('path'); +const fs = require('fs'); + +const rootPath = path.resolve(__dirname, '../'); + +(async () => { + const list = await listDir(rootPath, { + ignoreHidden: true, + ignorePattern: /node_modules|Build|.DS_Store|\.(json|html|md|js)|LICENSE/ + }); + + const html = template(list); + + await fs.promises.writeFile(path.join(rootPath, 'index.html'), html, 'utf-8'); +})(); + +/** + * @param {string[]} urlList + * @returns {string} + */ +function template(urlList) { + const date = new Date(); + + return ` + + + + + Surge Ruleset Server | Sukka (@SukkaW) + + + + + + + + + + + + + + + + + + +
+

Sukka Surge Ruleset Server

+

Made by Sukka | Source @ GitHub | Licensed under AGPL-3.0

+

Last Updated: ${date.toISOString()}

+
+
+ +
+ + + ` +} diff --git a/Build/lib/parse-filter.js b/Build/lib/parse-filter.js index a05e018e..d4390611 100644 --- a/Build/lib/parse-filter.js +++ b/Build/lib/parse-filter.js @@ -14,7 +14,7 @@ async function processDomainLists(domainListsUrl) { /** @type Set */ const domainSets = new Set(); /** @type string[] */ - const domains = (await got(domainListsUrl).text()).split('\n'); + const domains = (await (await fetch(domainListsUrl)).text()).split('\n'); domains.forEach(line => { if ( line.startsWith('#') @@ -44,7 +44,7 @@ async function processHosts(hostsUrl, includeAllSubDomain = false) { const domainSets = new Set(); /** @type string[] */ - const hosts = (await got(hostsUrl).text()).split('\n'); + const hosts = (await(await fetch(hostsUrl)).text()).split('\n'); hosts.forEach(line => { if (line.includes('#')) { return; diff --git a/List/ip/china_ip.conf b/List/ip/china_ip.conf index 2b9a40a3..62defada 100644 --- a/List/ip/china_ip.conf +++ b/List/ip/china_ip.conf @@ -1,8 +1,8 @@ ############################ # Mainland China IPv4 CIDR -# Data from vx.link (tmplink @ GitHub) -# Last Updated: 2022-3-4 8:27:8 -# Routes: 3358 +# Data from misaka.io (misakaio @ GitHub) +# Last Updated: 2022-04-22T00:22:34.050Z +# Routes: 3381 ############################ IP-CIDR,1.2.4.0/24 IP-CIDR,1.8.1.0/24 @@ -126,7 +126,6 @@ IP-CIDR,42.62.0.0/17 IP-CIDR,42.63.0.0/16 IP-CIDR,42.80.0.0/15 IP-CIDR,42.83.128.0/23 -IP-CIDR,42.83.131.0/24 IP-CIDR,42.83.133.0/24 IP-CIDR,42.83.134.0/24 IP-CIDR,42.83.144.0/22 @@ -166,7 +165,7 @@ IP-CIDR,42.201.68.0/24 IP-CIDR,42.202.0.0/15 IP-CIDR,42.224.0.0/12 IP-CIDR,42.240.0.0/21 -IP-CIDR,42.240.8.0/24 +IP-CIDR,42.240.8.0/22 IP-CIDR,42.240.128.0/17 IP-CIDR,42.242.0.0/15 IP-CIDR,42.244.0.0/14 @@ -178,6 +177,7 @@ IP-CIDR,43.224.24.0/22 IP-CIDR,43.224.52.0/23 IP-CIDR,43.224.56.0/22 IP-CIDR,43.224.80.0/22 +IP-CIDR,43.224.200.0/22 IP-CIDR,43.224.208.0/22 IP-CIDR,43.225.84.0/23 IP-CIDR,43.225.120.0/22 @@ -216,11 +216,9 @@ IP-CIDR,43.228.116.0/22 IP-CIDR,43.228.204.0/22 IP-CIDR,43.228.240.0/22 IP-CIDR,43.229.48.0/22 -IP-CIDR,43.229.185.0/24 IP-CIDR,43.229.186.0/23 IP-CIDR,43.229.216.0/22 IP-CIDR,43.230.72.0/22 -IP-CIDR,43.230.85.0/24 IP-CIDR,43.230.220.0/22 IP-CIDR,43.230.224.0/23 IP-CIDR,43.231.32.0/20 @@ -235,6 +233,7 @@ IP-CIDR,43.239.120.0/22 IP-CIDR,43.240.0.0/22 IP-CIDR,43.240.56.0/22 IP-CIDR,43.240.72.0/22 +IP-CIDR,43.240.84.0/22 IP-CIDR,43.240.124.0/22 IP-CIDR,43.240.128.0/22 IP-CIDR,43.240.136.0/22 @@ -333,6 +332,7 @@ IP-CIDR,43.254.224.0/20 IP-CIDR,43.254.240.0/22 IP-CIDR,43.254.248.0/22 IP-CIDR,43.255.0.0/21 +IP-CIDR,43.255.48.0/22 IP-CIDR,43.255.68.0/22 IP-CIDR,43.255.84.0/22 IP-CIDR,43.255.96.0/22 @@ -404,6 +404,7 @@ IP-CIDR,45.253.224.0/20 IP-CIDR,45.253.240.0/22 IP-CIDR,45.254.20.0/22 IP-CIDR,45.254.48.0/23 +IP-CIDR,45.254.50.0/24 IP-CIDR,45.254.64.0/20 IP-CIDR,47.92.0.0/14 IP-CIDR,47.96.0.0/12 @@ -433,8 +434,6 @@ IP-CIDR,49.239.192.0/18 IP-CIDR,52.80.0.0/15 IP-CIDR,52.82.0.0/17 IP-CIDR,52.82.128.0/23 -IP-CIDR,52.82.131.0/24 -IP-CIDR,52.82.132.0/24 IP-CIDR,52.82.134.0/23 IP-CIDR,52.82.136.0/24 IP-CIDR,52.82.144.0/23 @@ -530,7 +529,7 @@ IP-CIDR,60.55.0.0/16 IP-CIDR,60.63.0.0/16 IP-CIDR,60.160.0.0/11 IP-CIDR,60.194.0.0/15 -IP-CIDR,60.204.0.0/17 +IP-CIDR,60.204.0.0/18 IP-CIDR,60.205.0.0/16 IP-CIDR,60.206.0.0/15 IP-CIDR,60.208.0.0/12 @@ -581,7 +580,6 @@ IP-CIDR,66.102.255.0/24 IP-CIDR,67.198.146.0/24 IP-CIDR,67.198.148.0/24 IP-CIDR,67.198.160.0/23 -IP-CIDR,67.198.164.0/24 IP-CIDR,67.198.168.0/22 IP-CIDR,67.198.173.0/24 IP-CIDR,67.198.174.0/24 @@ -607,7 +605,8 @@ IP-CIDR,69.234.192.0/18 IP-CIDR,69.235.128.0/18 IP-CIDR,71.131.192.0/18 IP-CIDR,71.132.0.0/18 -IP-CIDR,71.137.8.0/24 +IP-CIDR,71.136.64.0/18 +IP-CIDR,71.137.0.0/18 IP-CIDR,72.163.240.0/23 IP-CIDR,72.163.248.0/22 IP-CIDR,74.222.145.0/24 @@ -632,7 +631,13 @@ IP-CIDR,101.38.0.0/15 IP-CIDR,101.40.0.0/14 IP-CIDR,101.49.128.0/22 IP-CIDR,101.50.56.0/22 -IP-CIDR,101.52.0.0/16 +IP-CIDR,101.52.4.0/24 +IP-CIDR,101.52.6.0/24 +IP-CIDR,101.52.112.0/21 +IP-CIDR,101.52.124.0/22 +IP-CIDR,101.52.128.0/20 +IP-CIDR,101.52.236.0/22 +IP-CIDR,101.52.240.0/20 IP-CIDR,101.53.100.0/22 IP-CIDR,101.54.0.0/21 IP-CIDR,101.64.0.0/13 @@ -674,7 +679,7 @@ IP-CIDR,101.199.114.0/24 IP-CIDR,101.199.125.0/24 IP-CIDR,101.199.128.0/23 IP-CIDR,101.199.196.0/22 -IP-CIDR,101.199.254.0/23 +IP-CIDR,101.199.252.0/22 IP-CIDR,101.200.0.0/15 IP-CIDR,101.203.172.0/22 IP-CIDR,101.204.0.0/14 @@ -700,7 +705,7 @@ IP-CIDR,101.254.0.0/20 IP-CIDR,101.254.32.0/19 IP-CIDR,101.254.64.0/18 IP-CIDR,101.254.128.0/17 -IP-CIDR,103.1.8.0/23 +IP-CIDR,103.1.10.0/23 IP-CIDR,103.1.168.0/22 IP-CIDR,103.2.108.0/22 IP-CIDR,103.2.204.0/22 @@ -712,6 +717,7 @@ IP-CIDR,103.3.128.0/22 IP-CIDR,103.3.136.0/21 IP-CIDR,103.3.152.0/21 IP-CIDR,103.4.56.0/22 +IP-CIDR,103.4.224.0/22 IP-CIDR,103.5.52.0/24 IP-CIDR,103.5.168.0/22 IP-CIDR,103.5.192.0/22 @@ -783,6 +789,7 @@ IP-CIDR,103.35.220.0/23 IP-CIDR,103.35.254.0/24 IP-CIDR,103.36.28.0/22 IP-CIDR,103.36.60.0/22 +IP-CIDR,103.36.72.0/22 IP-CIDR,103.36.96.0/22 IP-CIDR,103.36.132.0/22 IP-CIDR,103.36.136.0/22 @@ -826,17 +833,12 @@ IP-CIDR,103.42.8.0/22 IP-CIDR,103.42.76.0/22 IP-CIDR,103.43.184.0/22 IP-CIDR,103.44.58.0/23 +IP-CIDR,103.44.80.0/22 IP-CIDR,103.44.144.0/22 IP-CIDR,103.44.168.0/22 IP-CIDR,103.44.176.0/22 IP-CIDR,103.44.236.0/22 IP-CIDR,103.44.240.0/20 -IP-CIDR,103.45.1.0/24 -IP-CIDR,103.45.2.0/23 -IP-CIDR,103.45.4.0/22 -IP-CIDR,103.45.8.0/21 -IP-CIDR,103.45.16.0/20 -IP-CIDR,103.45.32.0/19 IP-CIDR,103.45.72.0/21 IP-CIDR,103.45.97.0/24 IP-CIDR,103.45.98.0/23 @@ -874,6 +876,8 @@ IP-CIDR,103.56.20.0/22 IP-CIDR,103.56.32.0/22 IP-CIDR,103.56.60.0/22 IP-CIDR,103.56.76.0/22 +IP-CIDR,103.56.100.0/22 +IP-CIDR,103.56.104.0/22 IP-CIDR,103.56.152.0/22 IP-CIDR,103.56.184.0/22 IP-CIDR,103.57.12.0/22 @@ -920,6 +924,7 @@ IP-CIDR,103.74.24.0/21 IP-CIDR,103.74.32.0/20 IP-CIDR,103.74.48.0/22 IP-CIDR,103.75.104.0/22 +IP-CIDR,103.75.147.0/24 IP-CIDR,103.75.152.0/22 IP-CIDR,103.76.60.0/22 IP-CIDR,103.76.220.0/22 @@ -939,20 +944,17 @@ IP-CIDR,103.82.224.0/22 IP-CIDR,103.83.44.0/22 IP-CIDR,103.83.72.0/22 IP-CIDR,103.85.84.0/22 -IP-CIDR,103.85.144.0/22 IP-CIDR,103.85.164.0/22 IP-CIDR,103.85.168.0/21 IP-CIDR,103.85.176.0/22 IP-CIDR,103.87.132.0/22 IP-CIDR,103.87.180.0/22 -IP-CIDR,103.88.20.0/22 IP-CIDR,103.88.32.0/21 IP-CIDR,103.88.64.0/22 IP-CIDR,103.89.184.0/21 IP-CIDR,103.89.192.0/19 IP-CIDR,103.89.224.0/21 IP-CIDR,103.90.92.0/22 -IP-CIDR,103.90.100.0/22 IP-CIDR,103.90.152.0/22 IP-CIDR,103.90.173.0/24 IP-CIDR,103.90.176.0/22 @@ -1024,12 +1026,10 @@ IP-CIDR,103.120.224.0/22 IP-CIDR,103.121.52.0/24 IP-CIDR,103.121.164.0/23 IP-CIDR,103.121.166.0/24 -IP-CIDR,103.121.250.0/24 IP-CIDR,103.121.252.0/22 IP-CIDR,103.122.48.0/22 IP-CIDR,103.122.192.0/24 IP-CIDR,103.123.4.0/23 -IP-CIDR,103.123.88.0/22 IP-CIDR,103.126.1.0/24 IP-CIDR,103.126.124.0/22 IP-CIDR,103.131.152.0/23 @@ -1058,7 +1058,7 @@ IP-CIDR,103.144.158.0/23 IP-CIDR,103.146.252.0/23 IP-CIDR,103.147.124.0/24 IP-CIDR,103.149.44.0/23 -IP-CIDR,103.149.210.0/23 +IP-CIDR,103.149.210.0/24 IP-CIDR,103.149.242.0/24 IP-CIDR,103.150.24.0/23 IP-CIDR,103.150.164.0/23 @@ -1080,14 +1080,17 @@ IP-CIDR,103.159.124.0/23 IP-CIDR,103.161.220.0/23 IP-CIDR,103.161.254.0/23 IP-CIDR,103.162.10.0/23 -IP-CIDR,103.163.32.0/24 IP-CIDR,103.163.46.0/23 +IP-CIDR,103.163.180.0/24 IP-CIDR,103.164.32.0/23 +IP-CIDR,103.166.84.0/23 IP-CIDR,103.169.62.0/23 IP-CIDR,103.169.202.0/23 IP-CIDR,103.170.4.0/23 +IP-CIDR,103.170.212.0/23 IP-CIDR,103.174.94.0/23 IP-CIDR,103.177.28.0/23 +IP-CIDR,103.186.4.0/23 IP-CIDR,103.192.4.0/23 IP-CIDR,103.192.188.0/22 IP-CIDR,103.192.212.0/22 @@ -1206,6 +1209,7 @@ IP-CIDR,103.235.248.0/21 IP-CIDR,103.236.120.0/22 IP-CIDR,103.236.240.0/20 IP-CIDR,103.237.8.0/22 +IP-CIDR,103.237.68.0/22 IP-CIDR,103.237.248.0/21 IP-CIDR,103.238.0.0/21 IP-CIDR,103.238.16.0/22 @@ -1213,6 +1217,7 @@ IP-CIDR,103.238.97.0/24 IP-CIDR,103.238.132.0/22 IP-CIDR,103.238.144.0/22 IP-CIDR,103.238.160.0/22 +IP-CIDR,103.238.181.0/24 IP-CIDR,103.238.184.0/23 IP-CIDR,103.238.188.0/22 IP-CIDR,103.238.204.0/22 @@ -1347,13 +1352,9 @@ IP-CIDR,107.6.240.0/24 IP-CIDR,109.244.0.0/16 IP-CIDR,110.6.0.0/15 IP-CIDR,110.16.0.0/14 -IP-CIDR,110.40.0.0/24 -IP-CIDR,110.40.2.0/24 -IP-CIDR,110.40.8.0/22 -IP-CIDR,110.40.14.0/24 +IP-CIDR,110.40.0.0/20 IP-CIDR,110.40.16.0/22 IP-CIDR,110.40.128.0/17 -IP-CIDR,110.41.0.0/16 IP-CIDR,110.42.0.0/15 IP-CIDR,110.44.12.0/22 IP-CIDR,110.51.0.0/16 @@ -1524,11 +1525,7 @@ IP-CIDR,114.112.104.0/22 IP-CIDR,114.112.124.0/22 IP-CIDR,114.112.136.0/21 IP-CIDR,114.112.144.0/20 -IP-CIDR,114.112.160.0/22 -IP-CIDR,114.112.164.0/23 -IP-CIDR,114.112.166.0/24 -IP-CIDR,114.112.168.0/24 -IP-CIDR,114.112.174.0/24 +IP-CIDR,114.112.160.0/20 IP-CIDR,114.112.192.0/19 IP-CIDR,114.113.16.0/20 IP-CIDR,114.113.32.0/19 @@ -1584,6 +1581,7 @@ IP-CIDR,116.66.48.0/22 IP-CIDR,116.66.54.0/23 IP-CIDR,116.66.97.0/24 IP-CIDR,116.66.98.0/23 +IP-CIDR,116.66.120.0/22 IP-CIDR,116.70.64.0/18 IP-CIDR,116.76.0.0/15 IP-CIDR,116.78.0.0/16 @@ -1633,6 +1631,7 @@ IP-CIDR,116.193.18.0/24 IP-CIDR,116.193.32.0/19 IP-CIDR,116.196.64.0/18 IP-CIDR,116.196.176.0/21 +IP-CIDR,116.196.192.0/21 IP-CIDR,116.198.0.0/18 IP-CIDR,116.198.144.0/20 IP-CIDR,116.198.160.0/20 @@ -1824,9 +1823,14 @@ IP-CIDR,119.15.136.0/23 IP-CIDR,119.15.140.0/23 IP-CIDR,119.18.192.0/20 IP-CIDR,119.18.208.0/21 +IP-CIDR,119.18.224.0/22 +IP-CIDR,119.18.231.0/24 +IP-CIDR,119.18.232.0/24 +IP-CIDR,119.18.236.0/23 IP-CIDR,119.23.0.0/16 IP-CIDR,119.27.64.0/18 IP-CIDR,119.27.160.0/19 +IP-CIDR,119.28.28.0/24 IP-CIDR,119.29.0.0/16 IP-CIDR,119.31.192.0/19 IP-CIDR,119.32.0.0/15 @@ -1888,7 +1892,7 @@ IP-CIDR,119.235.128.0/22 IP-CIDR,119.235.136.0/24 IP-CIDR,119.235.138.0/24 IP-CIDR,119.235.143.0/24 -IP-CIDR,119.235.144.0/23 +IP-CIDR,119.235.144.0/24 IP-CIDR,119.235.146.0/24 IP-CIDR,119.235.151.0/24 IP-CIDR,119.235.160.0/22 @@ -1896,9 +1900,8 @@ IP-CIDR,119.235.164.0/24 IP-CIDR,119.235.167.0/24 IP-CIDR,119.235.184.0/22 IP-CIDR,119.248.0.0/14 -IP-CIDR,119.253.0.0/19 -IP-CIDR,119.253.32.0/20 -IP-CIDR,119.253.56.0/21 +IP-CIDR,119.253.0.0/20 +IP-CIDR,119.253.32.0/19 IP-CIDR,119.253.64.0/20 IP-CIDR,119.253.88.0/22 IP-CIDR,119.253.128.0/17 @@ -1985,6 +1988,7 @@ IP-CIDR,121.76.0.0/15 IP-CIDR,121.79.128.0/20 IP-CIDR,121.79.144.0/22 IP-CIDR,121.89.0.0/16 +IP-CIDR,121.91.104.0/21 IP-CIDR,121.101.208.0/20 IP-CIDR,121.192.0.0/13 IP-CIDR,121.201.0.0/16 @@ -2018,7 +2022,27 @@ IP-CIDR,122.114.0.0/16 IP-CIDR,122.115.0.0/20 IP-CIDR,122.115.32.0/19 IP-CIDR,122.115.224.0/20 -IP-CIDR,122.119.0.0/16 +IP-CIDR,122.119.4.0/23 +IP-CIDR,122.119.12.0/22 +IP-CIDR,122.119.20.0/22 +IP-CIDR,122.119.24.0/23 +IP-CIDR,122.119.32.0/24 +IP-CIDR,122.119.50.0/24 +IP-CIDR,122.119.73.0/24 +IP-CIDR,122.119.74.0/24 +IP-CIDR,122.119.96.0/23 +IP-CIDR,122.119.110.0/23 +IP-CIDR,122.119.112.0/23 +IP-CIDR,122.119.114.0/24 +IP-CIDR,122.119.120.0/24 +IP-CIDR,122.119.122.0/24 +IP-CIDR,122.119.124.0/23 +IP-CIDR,122.119.129.0/24 +IP-CIDR,122.119.147.0/24 +IP-CIDR,122.119.160.0/24 +IP-CIDR,122.119.172.0/24 +IP-CIDR,122.119.180.0/22 +IP-CIDR,122.119.190.0/24 IP-CIDR,122.136.0.0/13 IP-CIDR,122.144.128.0/17 IP-CIDR,122.152.192.0/18 @@ -2036,22 +2060,16 @@ IP-CIDR,123.4.0.0/14 IP-CIDR,123.8.0.0/13 IP-CIDR,123.49.241.0/24 IP-CIDR,123.49.245.0/24 -IP-CIDR,123.49.246.0/23 IP-CIDR,123.52.0.0/14 IP-CIDR,123.56.0.0/15 IP-CIDR,123.58.0.0/18 -IP-CIDR,123.58.65.0/24 -IP-CIDR,123.58.66.0/23 +IP-CIDR,123.58.64.0/22 IP-CIDR,123.58.68.0/23 IP-CIDR,123.58.96.0/19 IP-CIDR,123.58.128.0/18 IP-CIDR,123.58.224.0/19 IP-CIDR,123.59.0.0/16 -IP-CIDR,123.60.0.0/17 -IP-CIDR,123.60.128.0/18 -IP-CIDR,123.60.208.0/20 -IP-CIDR,123.60.224.0/19 -IP-CIDR,123.61.0.0/16 +IP-CIDR,123.60.0.0/15 IP-CIDR,123.64.0.0/12 IP-CIDR,123.80.0.0/13 IP-CIDR,123.90.0.0/15 @@ -2122,7 +2140,9 @@ IP-CIDR,124.196.0.0/20 IP-CIDR,124.196.16.0/22 IP-CIDR,124.196.20.0/24 IP-CIDR,124.196.22.0/23 -IP-CIDR,124.196.24.0/21 +IP-CIDR,124.196.24.0/22 +IP-CIDR,124.196.28.0/24 +IP-CIDR,124.196.30.0/23 IP-CIDR,124.196.32.0/23 IP-CIDR,124.196.34.0/24 IP-CIDR,124.196.36.0/23 @@ -2130,6 +2150,7 @@ IP-CIDR,124.196.38.0/24 IP-CIDR,124.196.40.0/22 IP-CIDR,124.196.48.0/22 IP-CIDR,124.196.52.0/23 +IP-CIDR,124.196.55.0/24 IP-CIDR,124.196.56.0/22 IP-CIDR,124.196.60.0/23 IP-CIDR,124.196.65.0/24 @@ -2172,7 +2193,8 @@ IP-CIDR,125.104.0.0/13 IP-CIDR,125.112.0.0/12 IP-CIDR,125.171.0.0/16 IP-CIDR,125.208.0.0/19 -IP-CIDR,125.208.32.0/22 +IP-CIDR,125.208.32.0/23 +IP-CIDR,125.208.34.0/24 IP-CIDR,125.208.37.0/24 IP-CIDR,125.208.40.0/23 IP-CIDR,125.208.43.0/24 @@ -2301,17 +2323,13 @@ IP-CIDR,153.36.0.0/15 IP-CIDR,153.99.0.0/16 IP-CIDR,153.101.0.0/16 IP-CIDR,153.118.0.0/15 +IP-CIDR,154.7.124.0/24 IP-CIDR,154.8.128.0/17 -IP-CIDR,154.82.92.0/22 -IP-CIDR,154.82.96.0/22 -IP-CIDR,154.211.126.0/23 IP-CIDR,155.126.176.0/23 IP-CIDR,156.107.160.0/24 IP-CIDR,156.107.170.0/24 IP-CIDR,156.107.179.0/24 IP-CIDR,156.107.181.0/24 -IP-CIDR,156.251.16.0/21 -IP-CIDR,156.251.48.0/20 IP-CIDR,157.0.0.0/16 IP-CIDR,157.18.0.0/16 IP-CIDR,157.61.0.0/16 @@ -2326,7 +2344,6 @@ IP-CIDR,157.156.0.0/16 IP-CIDR,157.255.0.0/16 IP-CIDR,159.27.0.0/16 IP-CIDR,159.75.0.0/16 -IP-CIDR,159.221.232.0/22 IP-CIDR,159.226.0.0/16 IP-CIDR,160.19.208.0/21 IP-CIDR,160.83.110.0/24 @@ -2360,7 +2377,13 @@ IP-CIDR,168.159.144.0/21 IP-CIDR,168.159.152.0/22 IP-CIDR,168.159.156.0/23 IP-CIDR,168.159.158.0/24 -IP-CIDR,168.160.0.0/17 +IP-CIDR,168.160.0.0/21 +IP-CIDR,168.160.8.0/23 +IP-CIDR,168.160.10.0/24 +IP-CIDR,168.160.12.0/22 +IP-CIDR,168.160.16.0/20 +IP-CIDR,168.160.32.0/19 +IP-CIDR,168.160.64.0/18 IP-CIDR,168.160.152.0/24 IP-CIDR,168.160.158.0/23 IP-CIDR,168.160.160.0/21 @@ -2438,6 +2461,7 @@ IP-CIDR,180.184.64.0/19 IP-CIDR,180.184.96.0/21 IP-CIDR,180.184.128.0/20 IP-CIDR,180.184.192.0/20 +IP-CIDR,180.184.208.0/21 IP-CIDR,180.186.0.0/16 IP-CIDR,180.188.16.0/20 IP-CIDR,180.188.32.0/20 @@ -2525,6 +2549,7 @@ IP-CIDR,202.4.128.0/19 IP-CIDR,202.4.252.0/22 IP-CIDR,202.10.74.0/23 IP-CIDR,202.10.76.0/22 +IP-CIDR,202.14.172.0/22 IP-CIDR,202.14.235.0/24 IP-CIDR,202.14.236.0/23 IP-CIDR,202.14.238.0/24 @@ -2597,7 +2622,8 @@ IP-CIDR,202.127.144.0/20 IP-CIDR,202.127.200.0/21 IP-CIDR,202.127.208.0/23 IP-CIDR,202.127.216.0/21 -IP-CIDR,202.127.232.0/21 +IP-CIDR,202.127.232.0/23 +IP-CIDR,202.127.237.0/24 IP-CIDR,202.127.240.0/20 IP-CIDR,202.130.0.0/19 IP-CIDR,202.130.224.0/20 @@ -2616,7 +2642,6 @@ IP-CIDR,202.149.224.0/19 IP-CIDR,202.150.16.0/20 IP-CIDR,202.152.176.0/20 IP-CIDR,202.158.160.0/19 -IP-CIDR,202.160.142.0/24 IP-CIDR,202.165.208.0/20 IP-CIDR,202.168.160.0/19 IP-CIDR,202.170.128.0/19 @@ -2755,7 +2780,8 @@ IP-CIDR,203.88.192.0/19 IP-CIDR,203.90.128.0/18 IP-CIDR,203.90.192.0/19 IP-CIDR,203.91.32.0/19 -IP-CIDR,203.91.120.0/21 +IP-CIDR,203.91.120.0/22 +IP-CIDR,203.91.124.0/23 IP-CIDR,203.93.0.0/18 IP-CIDR,203.93.64.0/19 IP-CIDR,203.93.96.0/20 @@ -2771,8 +2797,6 @@ IP-CIDR,203.95.96.0/22 IP-CIDR,203.95.104.0/21 IP-CIDR,203.95.208.0/22 IP-CIDR,203.99.20.0/24 -IP-CIDR,203.99.22.0/23 -IP-CIDR,203.99.26.0/23 IP-CIDR,203.99.30.0/23 IP-CIDR,203.100.86.0/23 IP-CIDR,203.100.92.0/22 @@ -2794,11 +2818,13 @@ IP-CIDR,203.110.208.0/20 IP-CIDR,203.114.244.0/22 IP-CIDR,203.118.248.0/22 IP-CIDR,203.119.25.0/24 +IP-CIDR,203.119.30.0/24 IP-CIDR,203.119.33.0/24 IP-CIDR,203.119.80.0/23 IP-CIDR,203.119.83.0/24 IP-CIDR,203.119.85.0/24 IP-CIDR,203.119.128.0/19 +IP-CIDR,203.119.160.0/24 IP-CIDR,203.119.168.0/21 IP-CIDR,203.119.176.0/20 IP-CIDR,203.119.192.0/18 @@ -2953,7 +2979,6 @@ IP-CIDR,211.64.0.0/13 IP-CIDR,211.80.0.0/13 IP-CIDR,211.88.0.0/15 IP-CIDR,211.90.0.0/17 -IP-CIDR,211.90.128.0/18 IP-CIDR,211.90.216.0/21 IP-CIDR,211.90.224.0/19 IP-CIDR,211.91.0.0/18 @@ -2973,7 +2998,6 @@ IP-CIDR,211.92.244.0/22 IP-CIDR,211.93.0.0/17 IP-CIDR,211.93.128.0/18 IP-CIDR,211.93.192.0/21 -IP-CIDR,211.93.200.0/23 IP-CIDR,211.93.204.0/22 IP-CIDR,211.93.224.0/19 IP-CIDR,211.94.64.0/18 @@ -3057,7 +3081,7 @@ IP-CIDR,211.155.96.0/19 IP-CIDR,211.155.128.0/19 IP-CIDR,211.155.160.0/20 IP-CIDR,211.155.176.0/22 -IP-CIDR,211.155.190.0/23 +IP-CIDR,211.155.184.0/21 IP-CIDR,211.155.224.0/21 IP-CIDR,211.155.232.0/22 IP-CIDR,211.155.236.0/24 @@ -3195,15 +3219,14 @@ IP-CIDR,219.216.0.0/13 IP-CIDR,219.224.0.0/13 IP-CIDR,219.232.0.0/17 IP-CIDR,219.232.160.0/19 -IP-CIDR,219.232.192.0/18 +IP-CIDR,219.232.192.0/19 IP-CIDR,219.233.0.0/16 IP-CIDR,219.234.0.0/21 IP-CIDR,219.234.80.0/20 IP-CIDR,219.234.96.0/19 IP-CIDR,219.234.128.0/17 IP-CIDR,219.235.0.0/17 -IP-CIDR,219.235.128.0/20 -IP-CIDR,219.235.144.0/21 +IP-CIDR,219.235.128.0/19 IP-CIDR,219.235.192.0/18 IP-CIDR,219.236.0.0/14 IP-CIDR,219.242.0.0/15 diff --git a/README.md b/README.md new file mode 100644 index 00000000..de9bcb99 --- /dev/null +++ b/README.md @@ -0,0 +1,166 @@ +# Surge + +由 [Sukka](https://skk.moe) 搜集、整理、维护的、个人自用的、仅适用于 [Surge](https://nssurge.com/) Rule Snippet。 + +## 条款和协议 + +本项目除 `List/ip/china_ip.conf` 文件使用 CC BY-SA 2.0 协议分享以外,均使用 AGPL-3.0 协议开源,不提供任何担保,即:**本项目的作者和所有贡献者不会提供任何技术支持,也不会对你的任何损失负责**,包括但不限于:你的软件无法启动和正常工作、Kernel Panic、设备无法开机或正常使用、硬盘损坏或数据丢失、原子弹爆炸、第三次世界大战、[SCP 基金会](https://scp-wiki-cn.wikidot.com/) 无法阻止的全球 CK 级现实重构等。 + +如果你正在使用商业性质的公共代理服务,请务必先仔细阅读相关服务商的 服务条款与条件(ToS)。部分公共代理服务商的服务条款与条件规定,如果用户使用任何第三方规则文件将会被视为自动放弃 SLA 和技术支持服务。 + +如果你从 Sukka 提供的服务器([`https://ruleset.skk.moe`](https://ruleset.skk.moe))获取本项目中的规则组文件,则意味着你已知晓并同意 [隐私政策](https://skk.moe/privacy-policy/) 中的所有条款。如果你不同意,请通过 GitHub 获取本项目中的源码、并自行构建规则组文件。 + +## 规则组列表 + +请按照 `non_ip`、`ip`,和 README 中的顺序 将规则组添加到你的配置文件中。 + +> Surge 和 Clash 会按照规则在配置中的顺序、从上到下逐一匹配,当且仅当进行 IP 规则的匹配、FINAL、或 direct 策略时,才会进行 DNS 解析。按照一定的顺序添加规则组,可以避免不必要的 DNS 解析。 + +### 广告拦截 / 隐私保护 + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/reject.conf,reject-drop +DOMAIN-SET,https://ruleset.skk.moe/List/domainset/reject.conf,reject-tinygif +RULE-SET,https://ruleset.skk.moe/List/ip/reject.conf,reject- + +``` + +- 自动生成 +- 数据来源、白名单域名列表和生成方式,请参考 [`build-reject-domainset.js`](Build/build-reject-domainset.js) +- 仅建议在 Surge for Mac 上使用,移动平台请使用专门的工具(如 ADGuard for Android/iOS) +- 不能替代浏览器广告屏蔽扩展(如 uBlock Origin) + +### 搜狗输入法 + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/sogouinput.conf,reject-drop +``` + +- 人工维护 +- 该规则组用于避免搜狗输入法将你输入的每一个字符自动收集并通过 `get.sogou.com/q` 等域名回传 +- 影响搜狗输入法账号同步、词库更新、问题反馈 + +### 常见静态 CDN + +```ini +DOMAIN-SET,https://ruleset.skk.moe/List/domainset/cdn.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/non_ip/cdn.conf,[Replace with your policy] +``` + +- 人工维护 +- 包含所有常见静态资源 CDN 域名 +- 如果你正在使用商业性质的公共代理服务、且你的服务商提供按低倍率结算流量消耗的节点,可使用上述规则组将流量分配给这部分节点 + +### 流媒体 + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/stream.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/ip/stream.conf,[Replace with your policy] +``` + +- 人工维护 +- 包含 4gtv、AbemaTV、All4、Amazon Prime Video、Apple TV、Apple Music TV、Bahamut、BBC、Bilibili Intl、DAZN、Deezer、Disney+、Discovery+、DMM、encoreTVB、Fox Now、Fox+、HBO GO/Now/Max/Asia、Hulu、HWTV、JOOX、Jwplayer、KKBOX、KKTV、Line TV、Naver TV、myTV Super、Netflix、niconico、Now E、Paramount+、PBS、Peacock、Pandora、PBS、Pornhub、SoundCloud、PBS、Spotify、TaiwanGood、Tiktok Intl、Twitch、ViuTV、ShowTime、iQiYi Global、Himalaya Podcast、Overcast、WeTV 的规则组 + +### Telegram + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/telegram.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/ip/telegram.conf,[Replace with your policy] +``` + +- 人工维护 + +### Apple CDN + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/apple_cdn.conf,[Replace with your policy] +``` + +- 人工维护 +- 规则组仅包含 Apple, Inc. 在中华人民共和国工信部完成 ICP 备案和公安网备、且在中华人民共和国境内提供 HTTP 服务的域名。 + +### Apple Service + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/apple_services.conf,[Replace with your policy] +``` + +- 人工维护 + +### 网易云音乐 + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/neteasemusic.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/ip/neteasemusic.conf,[Replace with your policy] +``` + +- 人工维护 + +### Misc + +```ini +RULE-SET,https://ruleset.skk.moe/List/non_ip/domestic.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/non_ip/direct.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/non_ip/global_plus.conf,[Replace with your policy] +RULE-SET,https://ruleset.skk.moe/List/non_ip/global.conf,PROXY +RULE-SET,https://ruleset.skk.moe/List/ip/domestic.conf,[Replace with your policy] +``` + +- 人工维护 + +### chnroute CIDR + +```ini +RULE-SET,https://ruleset.skk.moe/List/ip/china_ip.conf,[Replace with your policy] +``` + +- 自动生成 +- 原始数据由 Misaka Network, Inc.、DMIT, Inc.、NEROCLOUD Ltd.、Rainbow network Ltd.、MOACK Co., Ltd. 提供,由 Misaka Network, Inc. 整理,以 [CC BY-SA 2.0](https://creativecommons.org/licenses/by-sa/2.0/) 协议发布 + +## Surge 模块列表 + +- Sukka URL Rewrite: `https://ruleset.skk.moe/Modules/sukka_url_rewrite.sgmodule` +- Sukka Surge Network Test Domain: `https://ruleset.skk.moe/Modules/sukka_surge_network_test_domain.sgmodule` +- Sukka MITM Hostnames: `https://ruleset.skk.moe/Modules/sukka_mitm_hostnames.sgmodule` +- Sukka MITM All Hostnames: `https://ruleset.skk.moe/Modules/sukka_mitm_all_hostnames.sgmodule` +- Fix No Network Alert Plus: `https://ruleset.skk.moe/Modules/sukka_fix_network_alert.sgmodule` +- Exclude Reserved IP from Surge VIF: `https://ruleset.skk.moe/Modules/sukka_exclude_reservered_ip.sgmodule` +- Common Always Real IP Hostnames: `https://ruleset.skk.moe/Modules/sukka_common_always_realip.sgmodule` +- Hide iOS VPN Icon: `https://ruleset.skk.moe/Modules/ios_hide_vpn_icon.sgmodule` +- Redirect Google CN to Google: `https://ruleset.skk.moe/Modules/google_cn_307.sgmodule` + +## FAQ + +**这是什么?** + +我也不知道。 + +**有适用于 Clash 的规则组吗?** + +没有。未来可能会有。 + +**有适用于 Shadowrocket、Quantumult X、Loon、V2RayNG 的规则组吗?** + +没有。而且未来 **一定** 不会有。 + +**这些规则组可被用于 Surfboard 吗?** + +如果 Surfboard 能够完整解析 Surge 的所有 Syntax,且在导入 / 处理规则组时、不被支持的 Syntax(如涉及到 MITM 的 `URL-REGEX`、仅适用于 HTTP/HTTPS 请求的 `USER-AGENT`、仅支持 PC 平台的 `PROCESS-NAME`)在处理时仅 Silent Error,则可用于 Surfboard,反之则不适用。 + +**我使用你的规则组,结果出了问题,我该如何反馈?** + +不,你不能。 + +**那我能参与维护项目吗?** + +如果你的 Pull Request 出现在了我 GitHub Notification Inbox 中、然后被我看到了的话,我会 Review 的。 + +## License + +The `List/ip/china_ip.conf` file is licensed under [CC BY-SA 2.0](https://creativecommons.org/licenses/by-sa/2.0/). The rest of the files are licensed under [AGPL-3.0](./LICENSE). + +---- + +**Surge** © [Sukka](https://github.com/SukkaW), Authored and maintained by Sukka with help from contributors ([list](https://github.com/SukkaW/Surge/graphs/contributors)). + +> [Personal Website](https://skk.moe) · [Blog](https://blog.skk.moe) · GitHub [@SukkaW](https://github.com/SukkaW) · Telegram Channel [@SukkaChannel](https://t.me/SukkaChannel) · Twitter [@isukkaw](https://twitter.com/isukkaw) · Keybase [@sukka](https://keybase.io/sukka) diff --git a/package-lock.json b/package-lock.json index a6226126..22b5081a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.0.0", "license": "ISC", "dependencies": { + "@sukka/listdir": "^0.2.0", "piscina": "^3.1.0", "table": "^6.7.3", "undici": "^5.0.0" @@ -19,6 +20,11 @@ "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==" }, + "node_modules/@sukka/listdir": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@sukka/listdir/-/listdir-0.2.0.tgz", + "integrity": "sha512-UyVirNhAOXKwjiDehjUaGtpfk0QwNHyiXrlLb/FmWMtI+BGhaEvB9MypSfEAtiiMI3g6QTfG38ayNAorEuz5ow==" + }, "node_modules/ajv": { "version": "8.8.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", @@ -290,6 +296,11 @@ "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==" }, + "@sukka/listdir": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@sukka/listdir/-/listdir-0.2.0.tgz", + "integrity": "sha512-UyVirNhAOXKwjiDehjUaGtpfk0QwNHyiXrlLb/FmWMtI+BGhaEvB9MypSfEAtiiMI3g6QTfG38ayNAorEuz5ow==" + }, "ajv": { "version": "8.8.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", diff --git a/package.json b/package.json index 4a790e07..9d6353ce 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "author": "", "license": "ISC", "dependencies": { + "@sukka/listdir": "^0.2.0", "piscina": "^3.1.0", "table": "^6.7.3", "undici": "^5.0.0"