记一次STUN内网穿透并"绑定域名"

警告⚠: 本文需要一定的知识储备来处理过程中的异常信息 ,如果你没有那请你自己按照我的步骤一点一点来
啥原理自行百度,我这里只讲以下如何使用

1. 工具

Lucky :

用于STUN内网穿透
cloudflare:

用于绑定域名重定向

2. 配置STUN内网穿透

2.1 设置内网穿透

咋安装不解释了,官网有

如上图所示新增一个stun内网穿透,啥原理自行百度,我这里只讲以下如何使用
穿透通道本地端口: 建议还是大于10240
目的地址,目的端口:简单说就是你要映射到外网的服务ip+端口号比如我要映射alist 如图所示,也就是源地址源端口

2.2 端口映射到你的外网

这里建议手动映射哈,我这里是爱快,别的路由器请看路由器官方文档来配置,openwrt同理

3. 配置cloudflare来进行重定向

3.1 添加dns记录

首先登录,然后点进去,根据图操作

dns=>记录

点击新增一条,假如说我要映射alist,我给二级域名就叫alist 那 名称就填写alist
IPv4 地址随便填因为我们只需要它跳转

添加好了就是上边画框的样子,注意要开代理要开代理要开代理

3.2 配置307重定向规则

规则=》 重定向规则=》 创建规则

下拉选择自定义

# 表达式
concat("http://ip+port", http.request.uri.path)

3.3 获取 cloudflare 请求参数

本操作主要是为了通过lucky自动调接口更新cloudflare重定向的方法

点击保存,然后再点编辑按 F12 或者鼠标右键检查 打开控制台
选择网络或者network

然后再点击保存会出现一长串字符串,点击

复制请求网址这个url

# 这网址的url格式为
https://dash.cloudflare.com/api/v4/zones/区域id/rulesets/规则集id/rules/规则id  
# 我们要转换为
https://api.cloudflare.com/client/v4/zones/区域id/rulesets/规则集id/rules/规则id 

也就是说我们从把v4前面的连接换成 https://api.cloudflare.com/client/ 就可以了

https://api.cloudflare.com/client/

以上是获取了我们请求的url,我们还需要请求参数

复制出来然后删除 version 和 last_updated
把 target_url 下的参数名称更新为 expression
格式:

{
    "action": "redirect",
    "action_parameters": {
        "from_value": {
            "preserve_query_string": true,
            "status_code": 307,
            "target_url": {
                "expression": "concat(\"http://#{ipAddr}\", http.request.uri.path)"
            }
        }
    },
    "description": "alist(这是是名称,别照着我的改)",
    "enabled": true,
    "expression": "(http.host eq \"atlas.xxx.com\")",
    "id": "xxxxxxxxxxxxxxxxxxxxx",
    "ref": "xxxxxxxxxxxxxxxxxxxxxxxxxxx"
}

拷贝出来上边示例数据改改id ref 其他和示例保持一样就ok
万事俱备只欠东风,接下来我们需要一个Authorization(密匙,调用Api必备参数)

点击我的资料

点击API令牌 =》创建 =》 创建自定义令牌

画框的填下,剩下的默认

这样就得到了Authorization注意保存,画框的参数 双引号里边的参数拷贝出来

这样我们得到了三个数据:

  1. 请求地址url
  2. 请求头 Authorization 和 Content-Type
  3. 请求的json数据

4. 配置 WebHook 更新重定向

点击编辑

然后按照上边得到的三个数据按照123填写入对应的框里

然后点击手动测试,最后 接口调用成功包含的字符串 填上

"success": true


ok完事

参考文章:https://zhuanlan.zhihu.com/p/668448423