(更新 2020-08-30) 出现 cf restart 之类的 api not found 错误,有个折中解决方案
./IBM_Cloud_CLI/ibmcloud cf install -v 6.51.0
大佬的这个教程写得非常详细了,我不过走了一遍,自己做个学习笔记
https://github.com/CCChieh/IBMYes/blob/master/README.md
注册IBM
过程很简单,就不说了。
开启V2Ray
点击上图的“创建资源”按钮,下图的”创建“。
区域必须达拉斯,只有那里有免费的。
在打开的终端当中输入
wget --no-check-certificate -O install.sh https://raw.githubusercontent.com/CCChieh/IBMYes/master/install.sh && chmod +x install.sh && ./install.sh
记下这个域名
unique-name.us-south.cf.appdomain.cloud
这时你也会看到程序状态已经变成 “正在运行”
到这一步,一个有效但延时很差,而且10天后就会自动消失(IBM自己的规定,免费程序10天后自动关机)的V2Ray程序已经运行。
验证V2Ray有效性
默认的vmess配置链接是
vmess://ew0KICAidiI6ICIyIiwNCiAgInBzIjogImlibXllcyIsDQogICJhZGQiOiAiaWJteWVzLnVzLXNvdXRoLmNmLmFwcGRvbWFpbi5jbG91ZCIsDQogICJwb3J0IjogIjQ0MyIsDQogICJpZCI6ICI4YzM1YmVmMy1kNTFmLTQxYWItYWM4Ny03YjA1MzQxMDQ5NWIiLA0KICAiYWlkIjogIjY0IiwNCiAgIm5ldCI6ICJ3cyIsDQogICJ0eXBlIjogIm5vbmUiLA0KICAiaG9zdCI6ICIiLA0KICAicGF0aCI6ICIiLA0KICAidGxzIjogInRscyINCn0=
将地址改成: unique-name.us-south.cf.appdomain.cloud,其他不变就可以测试了。
# 这是ClashX的临时配置
- name: "v2ray_US-Dallas-IBm"
type: vmess
server: unique-name.us-south.cf.appdomain.cloud
port: 443
uuid: 8c35bef3-d51f-41ab-ac87-7b053410495b
alterId: 64
cipher: auto
tls: true
network: ws
ws-path:
Host:
skip-cert-verify: true #默认false
通过Github Action实现自动重启
先fork https://github.com/CCChieh/IBMYes
Setting里面设置4个Secrets变量
- IBM_ACCOUNT
- IBM_APP_NAME = 前面提到unique-name
- REGION_NUM
- RESOURCE_ID
参考这两个命令获取就行
ibmcloud login
ibmcloud resource groups
然后去你自己的Fork得到的Github目录下,找的这个文件
https://github.com/lava-lake/IBMYes/blob/master/.github/workflows/ibm.yml
随便加个空行,Commit
再点击“Actions”,看到每10天定时重启的Action了 – 也可以手动强行启动。
到此,就不用担心被IBM删鸡了。
到这一步,一个免费,有效,但延时很差,而且10天后就会自动消失(IBM自己的规定,免费程序10天后自动关机)的V2Ray程序已经运行。
通过CloudFlare Worker进行反代
速度还是不行,那就CloudFlare Worker来反代救一把。
去 https://www.cloudflare.com/ 建立一个新Worker
把左边的代码替换成这个
addEventListener(
"fetch",event => {
let url=new URL(event.request.url);
url.hostname="unique-name.us-south.cf.appdomain.cloud";
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)
点击“保存并部署” – 记住产生的这行
snowy-darkness-xxxx.xxxx.workers.dev
到这一步,一个免费,有效,但延时还行延时很差,而且10天后就会自动消失(IBM自己的规定,免费程序10天后自动关机)的V2Ray程序已经运行。
Worker反代测试
只要改一行,将vmess配置中的 server 改成 snowy-darkness-xxxx.xxxx.workers.dev 就行了
# 这是ClashX的临时配置
- name: "v2ray_US-Dallas-IBm"
type: vmess
server: snowy-darkness-xxxx.xxxx.workers.dev
port: 443
uuid: 8c35bef3-d51f-41ab-ac87-7b053410495b
alterId: 64
cipher: auto
tls: true
network: ws
ws-path:
Host:
skip-cert-verify: true #默认false
上海下午6点 – 42Mbps
晚上9点 – 4Mbps
CloudFlare自选IP
我知道之前为什么我失败了,因为我之前自建了Adguard DNS (本馆档案),用自选IP的时候显示DNS Probe Error.
我也搞不清楚原理,我估计是给Aguard给误杀了。把自建的DNS IP取消,用默认的(比如8.8.8.8,223.5.5.5之类)就行了。
不过,这个行了也是手机端行了(安卓的V2RayNG),我的Mac端的ClashX就是不行。
改这两个地方就行了
懒得贴测速图了,提速在20-50%的样子吧。
到这一步,一个免费,有效,蛮快延时很差,而且10天后就会自动消失(IBM自己的规定,免费程序10天后自动关机)的V2Ray程序已经运行。
Great
感谢大佬的教程,看到有说通过CF自选IP来提升速度的说法,大佬试过么
试了,更新了
Actions显示运行失败
Could not get Cloud Foundry instances:
Could not read from input: EOF
Select a Cloud Foundry instance:
1. public CF us-south (https://api.us-south.cf.cloud.ibm.com)
2. public CF eu-de (https://api.eu-de.cf.cloud.ibm.com)
3. public CF eu-gb (https://api.eu-gb.cf.cloud.ibm.com)
4. public CF au-syd (https://api.au-syd.cf.cloud.ibm.com)
5. public CF us-east (https://api.us-east.cf.cloud.ibm.com)
Enter a number>
##[error]Process completed with exit code 1.
是啥意思
你这明显是REG_NUM 这个没填数字的缘故
运行那条一键命令,输完应用程序名称,内存,回车,然后提示 could not get cloud foundry instances,, 是什么意思呢?跟你上面的图片显示的不一样。 输的应用名称是对的。就是创建资源时填的名称。
cloud shell右上角的location选dallas
还是在你这里搞定了,多谢
运行那条一键命令,输完应用程序名称,内存,回车,然后提示 could not get cloud foundry instances,, 是什么意思呢?跟你上面的图片显示的不一样。 输的应用名称是对的。就是创建资源时填的名称。
Installing Cloud Foundry CLI…
FAILED是什么问题呢?