9.8 KiB
9.8 KiB
1.偶尔断流
- 修改cloudflare Firwall Rules->create a Firewall rule
-
- 设置Field:URI path // 这里的/v2 是你的v2ray的path
-
- 设置:value:/v2
-
- Choose an action:Allow
2.更换中国大陆地区CDN
- 只是更换CDN其余配置内容不变
1.腾讯CDN[月免费10GB]
1.准备工作
- 1.域名【需要大陆备案】
- 2.HTTPS证书【备案的域名的证书,可以使用上方的脚本生成】
2.点击此链接,配置腾讯云CDN
1.配置域名【域名管理-添加域名】
- 1.域名填写备案过的域名(你要加速的域名)
- 2.源站类型-填写自有源站
- 3.源站设置填写你的vps ip
- 4.加速类型选择流媒体点播加速
- 5.关闭过滤参数
- 6.等待部署完成
2.配置HTTPS证书
- 1.点击配置好的域名-高级设置-HTTPS配置
- 2.证书内容-填写上方生成证书的结尾为 .crt文件里面的全部内容
- 3.私钥内容-填写上方生成证书结尾为 .key文件里面的全部内容
- 4.回源方式-协议跟随
3.回源配置
- 1.点击配置好的域名-回源配置-取消掉Range回源
4.增加域名解析CNAME值
- 1.我这里用的是阿里云的云解析DNS
- 2.记录类型为CNAME
- 3.主机记录则是你要配置的三级域名(国际规范)例如:test.xxx.com 这里填test
- 4.解析线路默认即可
- 5.记录值填写 腾讯CDN-点击域名-基本配置-CNAME值
3.cloudflare CNAME自选ip优化方案
1.准备工作
1.免费的智能DNS解析
2.CloudFlare Partner平台(合作伙伴)
3.CloudFlare账号
- 使用上述第三方CloudFlare Partner时需要使用CloudFlare的账号密码
- 建议新建CloudFlare账号,与自己常用的账号区分(防止第三方平台保存密码并用于其他用途)
- 上述推荐是各大教程推荐,风险自担。也可以自行申请CloudFlare Partner并自行搭建
2.修改DNS解析【这里使用的是dnspod】
- 修改域名注册商中的Nameservers改为以下两个
f1g1ns1.dnspod.net
f1g1ns2.dnspod.net
3.注册dnspod 【腾讯】
4.添加域名
- 添加完域名后需要等待修改的Nameserver生效
5.登入CloudFlare Partner平台
-
1.萌精灵【本教程使用】
-
2.添加域名
-
3.添加解析记录
-
记录名---填写你要配置的二级域名【严格来说是三级域名】
-
记录类型为---CNAME
-
记录内容为回源地址(服务器的真实ip),CloudFlare只支持网址,不支持直接ip。
-
CDN---开启
- 记录内容中的xxx.xxx替换成自己域名的部分【例如:你的域名是www.example.com,替换成cf.test.example.com】,提交后进入管理中心会出现下图
6.登入dnspod
- DNS管理->我的域名->添加记录
- 这里添加CNAME的意义在于防止CloudFlare翻车【CloudFlare不允许使用ip接入,只允许CNAME】
7.验证是否添加成功
- 1.登录CloudFlare
- 2.点击域名->SSL/TLS->Edge Certificates【参考下图】如果存在则添加正确
8.自定义CloudFlare ip【示例】
- 新添加的记录为类型为A、线路类型是联通、记录值是CloudFlare的ip【多播】
- 这里可以添加不同的线路类型来针对不同的网络环境。
9.原理解析
-
使用CloudFlare DNS【默认】
-
使用dnspod智能解析
10.最优ip选择
1.联通
104.23.240.0-104.23.243.254
2.移动
1.0.0.0-1.0.0.254
1.1.1.0-1.1.1.254
104.16.80.0-104.16.95.255
104.16.175.255-104.16.191.255
3.hk直连
- 移动用此ip段比较好
- hk gcp服务器 ping值大约在40ms左右,回源大约在300ms,但是丢包率达到40%(晚高峰)
104.16.0.0-104.16.79.255
104.16.96.0-104.16.175.254
104.16.192.0-104.16.207.255
4.电信
162.159.208.4-162.159.208.103
162.159.209.4-162.159.209.103
162.159.210.4-162.159.210.103
162.159.211.4-162.159.211.103
104.16.160.*
5.自动化脚本测试线路
- 1.利用ping命令测试(每个ip只测试一次,延迟仅供参考)
- 2.此脚本仅支持Mac、Centos【暂不支持Windows以及其余系统,后续可能会添加】
bash <(curl -L -s https://raw.githubusercontent.com/mack-a/v2ray-agent/master/ping_tool.sh)
6.本人使用
- 联通
104.23.240.5 152ms
- 移动
104.16.192.0 40ms 【丢包严重】
104.24.105.3 100ms 【不丢包】
- 电信
手里没有电信网络可用上面的ip自行尝试
4.dnsmasq 实现CNAME方式
- 更加隐私一些 只适用于CDN方式
- 使用自定义DNS服务,类似于本地配置hosts文件
- 需要配置不同的二级域名(三级域名)来进行解析
1.准备工作
- 需要一台中国大陆的服务器【最好,但是国外的可以用。但是会拖慢DNS解析的速度】
- 防火墙需要开放53端口
2.安装
- 1.Centos/RHEL
yum -y install dnsmasq
- 2.Ubuntu/Debian
apt-get install dnsmasq
3.修改配置文件
# 不使用/etc/hosts
no-hosts
# server为上游DNS服务器
# 同时查询配置的DNS服务器,哪一个快使用哪一个
all-servers
server=223.5.5.5
server=8.8.8.8
# cn域名通过114解析
server=/cn/114.114.114.114
# 一下都是实现hosts文件功能 挑选一种即可
# 添加hosts文件,用来实现类似于hosts文件的功能
# addn-hosts=/etc/dnsmasq.hosts
# 指定域名解析到特定ip中【下面填写自己的域名】
# 同理Nginx也需要修改
# 如果不是泛域名证书,还需要重新配置新加入的域名证书
address=/mobile.xxx.com/39.156.69.100
address=/unicom.xxx.com/39.156.69.101
# 泛域名解析
# address=/baidu.com/39.156.110.100
4.重启dnsmasq
systemctl restart dnsmasq
5.测试&使用
- 1.测试
# xx.xx.xx.xx为配置dnsmasq服务的ip
# mobile.xxx.com 后面为自己的域名
➜ ~ dig @xx.xx.xx.xx mobile.xxx.com
; <<>> DiG 9.10.6 <<>> @xx.xx.xx.xx mobile.xxx.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43056
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mobile.xxx.com. IN A
# 下面是结果,如果和自己配置的一样则正确
;; ANSWER SECTION:
mobile.xxx.com. 0 IN A 198.41.214.162
;; Query time: 42 msec
;; SERVER: xx.xx.xx.xx#53(xx.xx.xx.xx)
;; WHEN: Mon Dec 23 16:30:29 CST 2019
;; MSG SIZE rcvd: 70
- 2.使用
需要手动修改自己本地的客户端的DNS配置,各终端请自行Google