完整记录v2ray折腾http2方式代理过程
v2ray支持很多协议,如tcp、wkcp、websocket、http/2、quic等,这次用http/2协议搭建科学上网服务器。
近期,墙威力大增,很多人的vps都被封了,哀嚎遍地,还好我的3个vps都安然无恙。我每台都装了v2ray和ss-libev,期间也没关机保平安。我主要用的是v2ray tcp方式,这种方式我测试下来是速度最快的一种。我300M带宽,搬瓦工gia线路,speedtest测试能满速到320M,youtube最高200M,无论白天晚上能稳定在160M左右。看到很多人vps被封,v2ray相对抗封锁更好点,以前也用过websocket+tls+cdn翻过,这次想用http/2来翻墙,这次做个完整记录,方便以后搭建。

一、先注册域名
进入https://www.namesilo.com/注册一下,再购买一个域名,找最便宜的域名即可。我注册了个.top的域名,目前0.99美元第一年,还是挺便宜的,到期后再换其他域名。价格超过1美元的域名可以用bandwh或v2ray这个优惠码,可以帮你节省1美元。
二、解析域名
不打算套cdn可以直接在namesilo里面解析域名ip,我这次也没打算套cdn,但为防止ip被封,还是想用cloudflare进行解析,一旦被封可以一键切换到cdn,又能复活vps。要用cloudflare解析ip,先解锁域名,选中域名前勾后点unlockdomains,然后提交即可;然后点切换域名服务器change nameserver,把原有的都删除,换成cloudflare的域名服务器ns1:isaac.ns.cloudflare.com ns2:jasmine.ns.cloudflare.com

到https://www.cloudflare.com注册一下,已经注册好的直接add a site增加一个域名,按提示操作。然后解析ip,在dns处添加A记录,输入你vps的ip地址。特别要注意在“status”点击为dns only状态,不然Caddy不能自动创建tls加密。等Caddy创建完成后可以改为cdn状态。以后一旦ip被封,点击一下此处切换到cdn,就可以复活你的vps了。用cdn还要在“cryto”处把ssl状态改为full。

四、vps相关处理
1、重新安装系统,进入搬瓦工后台,先停止服务器,然后“install new os”,我用的是centos7 64系统,建议不要用自带bbr的系统,我们自己安装bbr。记住下ssh端口号和密码。
2、用putty或xshell登录vps。
相关软件下载:
putty下载地址 https://www.putty.org/ xshell官网下载地址(需验证邮箱)https://www.netsarang.com/zh/free-for-home-school/ winscp下载地址 https://winscp.net/eng/docs/lang:chs
我们先安装bbr,由于 秋水逸冰的bbr脚本会自动换成最新内核,我测试下来秋水的bbr会比搬瓦工官方自带的bbr速度更快。
yum install wget net-tools -y wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
3、安装逗逼caddy一键脚本
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install
安装结束后,我们用winscp软件登陆vps进行相关修改。进入/usr/local/caddy/ 下新建Caddyfile文件(注意大小写 )并写入配置文件。下面我用cloud.cctv.com域名、demo@cctv.com邮箱、/data路径为例,进行相关配置。请换成自己的。
https://cloud.cctv.com { root /var/www/ tls demo@cctv.com proxy /data https://localhost:10000 { insecure_skip_verify header_upstream X-Forwarded-Proto "https" header_upstream Host "cloud.cctv.com" } header / { Strict-Transport-Security "max-age=31536000;" X-XSS-Protection "1; mode=block" X-Content-Type-Options "nosniff" X-Frame-Options "DENY" } }
保存后,启动Caddy。
/etc/init.d/caddy start
启动后可以重启vps直接输入reboot命令。重启后看/temp/caddy.log启动是否正常,如果不正常,看相关提示操作。在winscp里面按ctrl+alt+H键,看是否有隐藏文件夹.caddy。
4、安装v2ray
bash <(curl -L -s https://install.direct/go.sh)
winscp打开/etc/v2ray/config.json进行修改
{ "log" : { "access": "/var/log/v2ray/access.log", "error": "/var/log/v2ray/error.log", "loglevel": "warning" }, "inbound": { "port": 10000, "listen": "127.0.0.1", "protocol": "vmess", "settings": { "clients": [ { "id": "8f9c704b-2cdc-4aae-b7f7-bd639f522016", "level": 1, "alterId": 64 } ] }, "streamSettings": { "network": "h2", "security": "tls", "httpSettings": { "path": "/data", "host": ["cloud.cctv.com"] }, "tlsSettings": { "serverName": "cloud.cctv.com", "certificates": [ { "certificateFile": "/etc/v2ray/v2ray.crt", "keyFile": "/etc/v2ray/v2ray.key" } ] } } }, "outbound": { "protocol": "freedom", "settings": {} }, "outboundDetour": [ { "protocol": "blackhole", "settings": {}, "tag": "blocked" } ], "routing": { "strategy": "rules", "settings": { "rules": [ { "type": "field", "ip": [ "0.0.0.0/8", "10.0.0.0/8", "100.64.0.0/10", "127.0.0.0/8", "169.254.0.0/16", "172.16.0.0/12", "192.0.0.0/24", "192.0.2.0/24", "192.168.0.0/16", "198.18.0.0/15", "198.51.100.0/24", "203.0.113.0/24", "::1/128", "fc00::/7", "fe80::/10" ], "outboundTag": "blocked" } ] } } }
其中cloud.cctv.com改为自己的,路径/data和Caddy中一致,”certificateFile”: “/etc/v2ray/v2ray.crt”,”keyFile”: “/etc/v2ray/v2ray.key”的路径要和/.caddy/acme/acme-v01.api.letsencrypt.org/sites/cloud.cctv.com/进行软链,不进行软链要输入完整Caddy生成的证书文件所在的位置
ln -s /.caddy/acme/acme-v02.api.letsencrypt.org/sites/cloud.cctv.com/cloud.cctv.com.crt /etc/v2ray/v2ray.crt ln -s /.caddy/acme/acme-v02.api.letsencrypt.org/sites/cloud.cctv.com/cloud.cctv.com.key /etc/v2ray/v2ray.key
操作完成后,启动v2ray
service v2ray start service v2ray status
service v2ray查看v2ray是否正常启动。
如一切正常,你就可以用http/2协议进行翻墙了。
五、电脑及路由器设置
电脑端用v2rayN进行翻墙,下载地址https://github.com/2dust/v2rayN/releases,相关设置

路由器上我用的是lean的ssr-plus,相关配置如下

六、相关测速
这次没有套用cdn,针对这台搬瓦工双11特价机直接进行测试,早上8:30左右,网络相对较好情况下,对v2ray的tcp、websocket、h2进行了相关测试,测试不是太严谨,仅供参考
路由tcp | 路由ws | 路由h2 | 电脑tcp | 电脑ws | 电脑h2 | |
Youtube | 180Mbps | 160 | 120 | 160 | 150 | 100 |
Speedtest | 320Mbps(满速) | 320 | 140 | 250 | 250 | 140 |
可以看到直接tcp速度最快,ws次之、h2速度最慢。

service v2ray stop
命令。2、查看端口是否启动
firewall-cmd --query-port=443/tcp
,返回为no说明未开放443端口。开放443端口,执行 firewall-cmd --add-port=443/tcp --permanent
提示 success 表示成功,再执行firewall-cmd --reload
,443端口即可开放成功。3、caddy创建证书不成功,可到tmp/caddy.log文件查看不成功原因。也可用
tail -f /tmp/caddy.log
命令查看。日志文件出现 Serving HTTPS on port 443 https://down.xxxxx.top(你的二级域名),即表示证书创建成功。4、caddy证书创建成功后,有效期是3个月,到期后会自动续期。但如果你是用cloudflare的cdn服务,到期后需要关闭cdn服务即设为dns only状态,再执行
service caddy restart
命令才能正常续期。技术不断升级,请注意文章时效性。
本站文章,欢迎转发。转载请注明出处:https://www.bandwh.com/net/42.html
评论列表(7条)
v2服务起不来是因为配置文件问题,按上面的配置文件搞不定。
v2ray.service – V2Ray Service
Loaded: loaded (/etc/systemd/system/v2ray.service; enabled; vendor preset: disabled)
Active: failed (Result: start-limit)
Process: 2661 ExecStart=/usr/bin/v2ray/v2ray -config /etc/v2ray/config.json (code=exited status=23)
照着一步一步做的,为什么出错?
啊,求教怎么做到的这么快的速度的呀,我用的莫斯科的服务器,直接ping是200多的延迟,但用v2ray连接延迟就到1000了。最重要的是速度也不快,服务器测速是20MB的速度,但是用就只有2MB了最高,套的websocket,没用cdn
国内CDN不支持HTTP2回源,阿里腾讯云等官方文档都写的只HTTP/HTTPS,套CDN不行的,只有ws可以,但是巨贵,3元/G
失败了,套上CDN就不行了,求指导
安装v2ray失败Active: failed (Result: exit-code)/etc/v2ray/config.json (code=exited status=23)
可以出个视频吗