Lucky+Cloudflare达到家宽ipv6建站ipv4+ipv6双栈访问

写在前面

你需要

  • 一个正常的大脑
  • 遇到不会的问题会上网搜索
  • 懂得询问AI
  • 一个域名
  • 一个cloudflare账号
  • 一张支持外币的信用卡(可以用假卡)
  • 一点web相关知识
    请拥有以上东西再开始下面的内容

开始

准备工作

下载lucky

下载Lucky,进去之后稍微配置一下lucky相关的安全设置(修改密码啊,外网访问啊之类的)

ipv6测试

在你的服务器和工作机搜索ipv6-test进行测试是否有ipv6,如果是10/10那么下一步,如果有个别一两项没得分那么自行搜索解决方案如果是0/0请搜索如何打开ipv6
然后获取你服务器的ipv6地址(ipconfig ifconfig等指令,看你服务器系统),记下IPv6地址以作备用(注意是IPv6地址而不是临时IPv6地址,如果是fe开头说明没公网ipv6,自行搜索相关教程,这里不作阐述)
然后去itdog-ipv6-ping(或者其他你喜欢的ping工具都行)测试你刚才得到的ipv6,如果不通请打开路由器的ipv6防火墙和服务器的防火墙
个别地区ping不通属于正常现象,如果大面积ping不通可能是ipv6地址是临时地址,或者你可以和运营商对线

cfdns端口测试

接着去ipv6-tcpping输入[ipv6地址]:端口(方括号也要输入),端口从以下列表挨个试,指导能ping通为止

  • 80
  • 8080
  • 8880
  • 2052
  • 2082
  • 2086
  • 2095
  • 443
  • 2053
  • 2083
  • 2087
  • 2096
  • 8443
    如果你的80/443端口其中有一个能ping通,那么恭喜你你可以直接拿来建站不需要端口回流。如果你一个能ping通的都没有,那么很遗憾的通知你你建站只能通过域名:端口的形式访问,这边建议你用frp或者cf tunnel建站。记住你能ping通的端口,我这里使用8080为例

lucky配置

动态域名(ddns)

进入lucky,左侧动态域名→添加任务
托管商选择cloudflare,在cf-apitoken中选择创建令牌编辑区域DNS
只需要把区域资源的第三个框选择为你的域名,其他不要动(token名字可以改),然后划到下面点继续以显示摘要创建令牌,然后把令牌保留好备用(此处的令牌下文简称cfkey,如果遗忘可以选择再创建一个)
回到lucky,Token中填写cfkey,{ipv6Addr}选择启用,获取ip方式3个其实都可以,我推荐网卡获取(如果你没有对服务器/路由器中的获取临时ipv6地址相关内容,那么我更建议你用通过脚本获取,因为服务器长期开机会得到一堆临时ipv6地址,而网卡/接口获取会优先获取临时地址,但是临时地址是无法访问内网服务的。ip指令win使用ipconfig,其它系统使用相关效果的指令就好。或者你也可以先把获取临时ipv6地址相关内容关了,然后在用网卡/接口获取)
下拉点击添加同步记录,记录名就是域名(不需要http前缀),你可以专门用一个域名(eg: ddns.domain.com)来当ddns域名,然后把你的服务域名在cf通过cname解析到ddns域名(cf-dns-eg: 类型:cname 名称:blog 目标:ddns.domain.com)。也可以直接把你的所有服务域名都添加进来,其他地方不需要改,然后添加任务,等他同步即可

web服务

添加web服务规则,监听类型选IPv6,监听端口选择上面列表你ping成功的端口,TLS选择启用,默认规则中服务类型改为关闭连接
然后添加子规则,服务类型选择反向代理,前端地址输入服务网址(eg:blog.domain.com),后端地址输入本地ip(eg:http://127.0.0.1:8081
万事大吉启用,其他默认即可

ssl证书

在左侧选择SSL/TLS证书,添加证书。添加方式选择ACME,机构选择Let's Encrypt,验证方式选择Cloudflare,Token填写cfkey,域名列表建议直接填写泛域名(eg:*.domain.com),电子邮箱可留空(写上也无所谓不影响)。更多设置中cname支持 启用,其他默认即可
想保存自定义文件夹就打开证书映射,证书路径填绝对路径(eg:D:\Program\ssl)
然后保存,等待2-10分钟一般就成功了,如果不成功可以考虑打开/关闭使用IPv4网络申请证书
如果多次报错可以查看Lucky官方提供的FreeSSL/ZeroSSL申请教程
后面写着手动续签不用管,他是自动的到期自动续

cf配置

先在上文“动态域名(ddns)”中把所有的域名解析好,打开cf小黄云
在cf的规则→概述→Origin Rules中添加规则(免费用户只能添加10个)
选择
自定义筛选表达式
– 字段=URl完整
– 运算符=包含
– 值=你的域名(eg:https://blog.domain.com
– 目标端口=重写到 你ping通的端口
然后保存
打开域名的cf小黄云
SSL/TLS 加密改成完全(严格)
等待cf服务器解析完全(10分钟左右),你就可以访问了
至此,教程结束

后记


可能的Q&A

  1. 网上有很多类似的教程为什么还要再写一篇?
    网上教程大多都年代久远(我看到的基本上都半年起步),这半年里cf和lucky都更新了很多东西,而且网上的教程不详细+雷同度极高,所以在今天亲身实践之后打算把踩得坑都填上,啊当然主要是太久没水文了水一篇(不是)
  2. 为什么不用frp/cftunnel?
    免费的frp很容易炸,你也不想你的服务三天两头被反馈无法访问吧,cf慢归慢,好歹稳定。cf tunnel也可以用,只是反正ipv6都要ddns,lucky可以一步到位达到cf tunnel的功能,不需要再额外下载配置一个东西
  3. 访问不了?
    把域名的cname解析换成ddns的aaaa解析,记得打开cf小黄云,重走一遍教程,如果还不行那我也没办法了(
  4. 速度太慢
    毕竟是免费的,凑合凑合(

    我的博客现在就是这样运行的 Lucky+Cloudflare达到家宽ipv6建站ipv4+ipv6双栈访问-YouYiの小破站
    还有什么问题评论区说 :bili_040:
56 个赞

打开cf小黄云就访问不了了,不开小黄云能域名+端口访问,这是什么情况?

7 个赞

:tieba_087: 太强了!

2 个赞

部分,免费版的cfdns只给这些端口开放小黄云,如果你的服务不是这些端口那么打开小黄云访问不了正常,可以本地做个端口转发 :bili_040:

2 个赞

感谢大佬教程

不过我提出些质疑

真的有必要为了一个端口用减速cf吗?

国内直链速度杠杠的,加了cf体验下降几个梯度

2 个赞

看来电信是把你列出的端口全给关闭了,一个都 不通.

2 个赞

太强了佬…

1 个赞

主要是可以做到家里云建站然后ipv4+v6双栈访问,免费的frp太容易崩溃,cf tunnel又要写配置麻烦
当然如果你是自用那ddns一个v6域名然后v6:端口 访问服务就好 :bili_040:

1 个赞

逝世别的服务端口呢,比如oneapi的3000?如果都不通那要不考虑一下是不是防火墙没关(

1 个赞

一个都ping不通,尴尬

1 个赞

打开小黄云后,添加一条origin rule规则回源就行

1 个赞

我特地把端口改成你列的这些中的8880,好像还是不行?
先IP+端口测试全绿能访问 [2409:8a5c:8b0:f6f0:57b1:80f0:a2ef:1d90]:8880


然后DNS解析AAA然后小黄云也开了

端口转发也转了

最后测试全红


域名是 fmvp.wdrvks.eu.org

1 个赞

加了还是不行

1 个赞

lucky ssl证书申请了么
cf的ssl/tsl安全改成严格了么
而且我咋感觉是域名的问题,eu.org不是全被国内墙了么

1 个赞

你这个域名本来就被墙了吧

1 个赞

原来如此,域名的问题,换个域名就好了
我没有用lucky,也没有配证书
我是ddns-go+cloudflare小黄云就完了(开小黄云cf会送证书),简单很多,也并没有限制端口,我端口改3399一样能访问
fmvp.yydsidc.top

1 个赞

好家伙1panel面板,自用的服务这样子穿透不会感觉延迟很高吗 :bili_040:
自用服务其实我更推荐关掉小黄云,域名ddns用http v6domain:port访问,基本上是秒开的,记不住端口可以放浏览器书签或者手机便签里存一下 :bili_040:

1 个赞

没有v6的环境就麻烦了
所以还是更推荐买个最便宜的服务器,从服务器中转
用warp就可以转发v6

ping端口这块是不是有点问题,本地都没用这个端口ping不通吧?

我测试的时候没用这个端口也能ping通,不知道什么原理(