如果你还不知道什么是 Cloudflare Warp,建议先看看产品官网(https://1.1.1.1/ )。
中文简介也可以看看知乎的文章(https://zhuanlan.zhihu.com/p/352792129 )
本文不讨论 Warp 的实现原理,请读者不要过度解读。
请合法合规的使用 Cloudflare Warp 的功能。
请合法合规的使用 Cloudflare Warp 的功能。
方法一:付费购买
用土耳其区 Apple ID 直接付费,每月 10 try,每年 42 人民币。
方法二:注册Cloudflare并加入ZeroTrust
获得 ZeroTrust 版本的 Warp+,免费。
参考连接:https://github.com/getsomecat/GetSomeCats/blob/Surge/注册Cloudflare并加入ZeroTrust教程.md
方法三:分享连接和用脚本刷
用普通的 iOS 1.1.1.1 App 分享链接邀请用户,获得一定容量奖励。
- 直接打开网站,在线运行脚本:https://replit.com/@wdm1732418365/warp
- 点击小三角开始 run 运行,然后输入你的 warp ID。
Tips: 注意这里的warp ID不是你的account key,是设备ID
手机客户端,点击右上角菜单图标,选择 Advanced,选择 Diagnostics,复制 ID
电脑客户端,在客户端偏好设置,找到设备ID
当然,也可以自己服务器或者本地跑脚本,脚本见附件。
方法四:通过Warp+ Bot 生成
机器人连接:https://t.me/generatewarpplusbot
附件:
刷流量脚本
import urllib.request
import json
import datetime
import random
import string
import time
import os
import sys
os.system("title WARP-PLUS-CLOUDFLARE By ALIILAPRO")
os.system('cls' if os.name == 'nt' else 'clear')
print('Getting WARP+ Traffic on Github Actions')
referrer = os.environ["DEVICEID"]
def genString(stringLength):
try:
letters = string.ascii_letters + string.digits
return ''.join(random.choice(letters) for i in range(stringLength))
except Exception as error:
print(error)
def digitString(stringLength):
try:
digit = string.digits
return ''.join((random.choice(digit) for i in range(stringLength)))
except Exception as error:
print(error)
url = f'https://api.cloudflareclient.com/v0a{digitString(3)}/reg'
def run():
try:
install_id = genString(22)
body = {"key": "{}=".format(genString(43)),
"install_id": install_id,
"fcm_token": "{}:APA91b{}".format(install_id, genString(134)),
"referrer": referrer,
"warp_enabled": False,
"tos": datetime.datetime.now().isoformat()[:-3] + "+02:00",
"type": "Android",
"locale": "es_ES"}
data = json.dumps(body).encode('utf8')
headers = {'Content-Type': 'application/json; charset=UTF-8',
'Host': 'api.cloudflareclient.com',
'Connection': 'Keep-Alive',
'Accept-Encoding': 'gzip',
'User-Agent': 'okhttp/3.12.1'
}
req = urllib.request.Request(url, data, headers)
response = urllib.request.urlopen(req)
status_code = response.getcode()
return status_code
except Exception as error:
print(error)
g = 0
b = 0
while True:
result = run()
if result == 200:
g = g + 1
os.system('cls' if os.name == 'nt' else 'clear')
print("")
print("Getting WARP+ Traffic")
print("")
animation = ["[■□□□□□□□□□] 10%","[■■□□□□□□□□] 20%", "[■■■□□□□□□□] 30%", "[■■■■□□□□□□] 40%", "[■■■■■□□□□□] 50%", "[■■■■■■□□□□] 60%", "[■■■■■■■□□□] 70%", "[■■■■■■■■□□] 80%", "[■■■■■■■■■□] 90%", "[■■■■■■■■■■] 100%"]
for i in range(len(animation)):
time.sleep(0.5)
sys.stdout.write("\r[+] Preparing... " + animation[i % len(animation)])
sys.stdout.flush()
print(f"\n[-] WORK ON ID: {referrer}")
print(f"[:)] {g} GB has been successfully added to your account.")
print(f"[#] Total: {g} Good {b} Bad")
print("[*] After 18 seconds, a new request will be sent.")
time.sleep(18)
else:
b = b + 1
os.system('cls' if os.name == 'nt' else 'clear')
print("")
print("Getting WARP+ Traffic")
print("")
print("[:(] Error when connecting to server.")
print(f"[#] Total: {g} Good {b} Bad")