要求:域名解析到 IPv6 地址并隐藏端口
效果:用域名 https://myhalo.soulio.top
访问http://[2409:8a62:867:4f12:56c7:5508:f7x6:8]:8080
。唯一缺点是延迟有点高。
难度:需要有一定域名解析、cloudflare使用基础
实现:按照以下步骤进行操作
1. 在 Cloudflare 中添加域名
-
登录 Cloudflare 帐户:
- 登录到你的 Cloudflare 帐户。
-
添加站点:
- 在 Cloudflare 仪表盘中,点击“Add a Site”。
- 输入你的域名
soulio.top
,然后点击“Add Site”。 - 选择一个适合你的计划(可以从免费计划开始)。
-
更新 DNS 服务器:
- Cloudflare 会提供一组新的 DNS 服务器。你需要将你的域名 DNS 服务器更改为 Cloudflare 提供的这些 DNS 服务器。具体更改步骤取决于你的域名注册商,请参考注册商的相关指南。
2. 配置 DNS 记录
-
添加 AAAA 记录:
- 在 Cloudflare 仪表盘中,进入
soulio.top
的 DNS 配置页面。 - 添加一个 AAAA 记录,将
myhalo.soulio.top
指向你的服务器的 IPv6 地址。确保代理状态设置为“Proxied”(橙色云图标)。
- 在 Cloudflare 仪表盘中,进入
3. 创建并配置 Cloudflare Worker
-
创建 Worker:
- 在 Cloudflare 仪表盘中,导航到 Workers 选项卡。
- 点击“Create a Worker”创建一个新的 Worker。
-
编写 Worker 代码:
-
将以下代码粘贴到 Worker 编辑器中,用于将端口 443 的请求转发到端口 8080:
addEventListener('fetch', event => { let url = new URL(event.request.url); url.port = '8080'; let newRequest = new Request(url, event.request); event.respondWith(fetch(newRequest)); });
-
-
保存并部署 Worker:
- 保存并部署你的 Worker。
4. 配置 Worker 路由
-
添加路由:
- 在 Cloudflare 仪表盘中,导航到 Workers 选项卡。
- 选择“Add route”。
- 输入你的子域名 URL 路径,例如:
myhalo.soulio.top/*
。 - 在“Service”下拉菜单中,选择你刚刚创建的 Worker。
- 保存路由配置。
5. 检查配置和测试访问
-
测试 DNS 解析:
-
使用命令行工具(如
nslookup
或dig
)检查myhalo.soulio.top
是否正确解析到你的 IPv6 地址。nslookup -type=AAAA myhalo.soulio.top
-
-
测试 Worker:
- 访问
https://myhalo.soulio.top
并确保请求被转发到你的服务器的端口 8080。 - 如果配置正确,你应该能够通过 HTTPS 访问你的服务,并且端口 8080 将被隐藏。
- 访问
如果一切配置正确,你的域名 myhalo.soulio.top
将通过 Cloudflare 代理,并且 Cloudflare Worker 将把请求转发到端口 8080。
如果还有任何问题或需要进一步的帮助,请随时告诉我!