351 lines
15 KiB
Markdown
351 lines
15 KiB
Markdown
# GoGenex 双域名架构规划方案
|
||
|
||
> 适用场景:企业门户 + 区块链全生态 + MPC 签名服务 + 对象存储 + 微服务架构
|
||
> 主域名:`gogenex.cn`(阿里云)、`gogenex.com`(Namecheap)
|
||
> 版本:v1.1 | 2026-03-01
|
||
|
||
---
|
||
|
||
## 〇、双域名策略
|
||
|
||
| 域名 | 注册商 | DNS 服务 | 用途定位 |
|
||
| --- | --- | --- | --- |
|
||
| `gogenex.cn` | 阿里云 | 阿里云 DNS | **主力域名** — API 网关、后台、内部服务、区块链、运维 |
|
||
| `gogenex.com` | Namecheap | Namecheap DNS | **国际 & 品牌** — 官网、文档、开发者平台、状态页 |
|
||
|
||
> **原则:** `.cn` 承载所有业务和技术服务;`.com` 面向国际用户和品牌展示。
|
||
> 两个域名可以互相 CNAME,例如 `api.gogenex.com` CNAME 到 `api.gogenex.cn`。
|
||
|
||
---
|
||
|
||
## 一、总体架构分层
|
||
|
||
```
|
||
gogenex.cn / gogenex.com
|
||
├── 🌐 门户与官网层
|
||
├── 🔌 API 网关层(对外 / 对内)
|
||
├── 🔐 安全与认证层(MPC / Auth / KMS)
|
||
├── ⛓️ 区块链服务层
|
||
├── 📦 存储与 CDN 层
|
||
├── 📊 运维监控层
|
||
├── 🧪 环境隔离层(staging / dev)
|
||
└── 📚 文档与开放平台
|
||
```
|
||
|
||
---
|
||
|
||
## 二、子域名详细规划
|
||
|
||
### 2.1 🌐 门户与官网
|
||
|
||
| 子域名 | 用途 | 访问范围 | DNS |
|
||
| --- | --- | --- | --- |
|
||
| `gogenex.com` / `www.gogenex.com` | 企业官网、品牌落地页 | 公开 | Namecheap |
|
||
| `gogenex.cn` / `www.gogenex.cn` | 中文官网(可跳转 .com) | 公开 | 阿里云 |
|
||
| `portal.gogenex.cn` | 用户业务门户(Web App) | 公开 / 登录 | 阿里云 |
|
||
| `admin.gogenex.cn` | 内部运营管理后台 | 内网 / VPN | 阿里云 |
|
||
| `console.gogenex.cn` | 开发者 / 商户控制台 | 登录 | 阿里云 |
|
||
|
||
---
|
||
|
||
### 2.2 🔌 API 网关层
|
||
|
||
#### 对外公共 API(统一网关入口)
|
||
|
||
| 子域名 | 用途 | 说明 | DNS |
|
||
| --- | --- | --- | --- |
|
||
| `api.gogenex.cn` | 对外统一 API 网关 | 所有对外服务统一入口 | 阿里云 |
|
||
| `api.gogenex.com` | 国际 API 入口 | CNAME → `api.gogenex.cn` | Namecheap |
|
||
| ↳ `/v1/wallet/*` | 钱包服务 | 路径路由 | |
|
||
| ↳ `/v1/tx/*` | 交易服务 | 路径路由 | |
|
||
| ↳ `/v1/chain/*` | 链上查询服务 | 路径路由 | |
|
||
| ↳ `/v1/mpc/*` | MPC 签名对外接口 | 路径路由 | |
|
||
| ↳ `/v1/nft/*` | NFT 服务 | 路径路由 | |
|
||
| ↳ `/v1/defi/*` | DeFi 聚合服务 | 路径路由 | |
|
||
|
||
#### 对内微服务 API
|
||
|
||
| 子域名 | 用途 | 访问范围 | DNS |
|
||
| --- | --- | --- | --- |
|
||
| `api-internal.gogenex.cn` | 内部微服务 API 网关 | 内网 / VPN | 阿里云 |
|
||
| ↳ `/svc/user/*` | 用户中心 | 内部 | |
|
||
| ↳ `/svc/risk/*` | 风控引擎 | 内部 | |
|
||
| ↳ `/svc/notify/*` | 通知推送 | 内部 | |
|
||
| ↳ `/svc/settlement/*` | 清结算 | 内部 | |
|
||
|
||
---
|
||
|
||
### 2.3 🔐 安全与认证层(MPC 重点)
|
||
|
||
| 子域名 | 用途 | 访问范围 | 备注 | DNS |
|
||
| --- | --- | --- | --- | --- |
|
||
| `auth.gogenex.cn` | 统一认证 / SSO / OAuth2 | 公开 | JWT 签发、2FA | 阿里云 |
|
||
| `mpc.gogenex.cn` | MPC 签名服务总入口 | **严格受限** | 独立部署,网络隔离 | 阿里云 |
|
||
| `mpc-relay.gogenex.cn` | MPC 中继 / 协调节点 | 内网 | 多方协调通信 | 阿里云 |
|
||
| `mpc-callback.gogenex.cn` | MPC 签名异步回调 | 白名单 | 签名结果回传 | 阿里云 |
|
||
| `kms.gogenex.cn` | 密钥管理服务(KMS) | 内网 | HSM / 密钥分片管理 | 阿里云 |
|
||
| `vault.gogenex.cn` | 机密存储(HashiCorp Vault) | 内网 | 配置密钥、证书管理 | 阿里云 |
|
||
|
||
> ⚠️ **MPC 安全建议**:`mpc.gogenex.cn` 建议不解析到公网,仅通过 VPN / 内网访问。对外暴露的 MPC 能力通过 `api.gogenex.cn/v1/mpc/*` 走网关代理,经过认证、限流、风控后转发。
|
||
|
||
---
|
||
|
||
### 2.4 ⛓️ 区块链服务层
|
||
|
||
| 子域名 | 用途 | 访问范围 | 备注 | DNS |
|
||
| --- | --- | --- | --- | --- |
|
||
| `rpc.gogenex.cn` | 区块链 RPC 统一代理 | 公开 / 限流 | 多链 RPC 聚合入口 | 阿里云 |
|
||
| ↳ `/eth`, `/bsc`, `/tron`... | 按链路径路由 | | | |
|
||
| `ws.gogenex.cn` | WebSocket 长连接服务 | 公开 / 登录 | 交易推送、链上事件 | 阿里云 |
|
||
| `explorer.gogenex.cn` | 区块链浏览器 | 公开 | 交易 / 区块查询 | 阿里云 |
|
||
| `indexer.gogenex.cn` | 链上数据索引服务 | 内网 | The Graph 类服务 | 阿里云 |
|
||
| `bridge.gogenex.cn` | 跨链桥服务 | 公开 / 登录 | 跨链资产转移 | 阿里云 |
|
||
| `oracle.gogenex.cn` | 预言机服务 | 内网 / 受限 | 喂价、链下数据 | 阿里云 |
|
||
| `node.gogenex.cn` | 全节点管理入口 | 内网 | 节点运维、健康检查 | 阿里云 |
|
||
| `faucet.gogenex.cn` | 测试网水龙头 | 公开 | 测试代币发放 | 阿里云 |
|
||
|
||
---
|
||
|
||
### 2.5 📦 存储与 CDN 层
|
||
|
||
| 子域名 | 用途 | 访问范围 | DNS |
|
||
| --- | --- | --- | --- |
|
||
| `oss.gogenex.cn` | MinIO 对象存储 API | 内部 / 服务间 | 阿里云 |
|
||
| `static.gogenex.cn` | 静态资源 CDN(前端资源、图片) | 公开 | 阿里云 |
|
||
| `ipfs-gw.gogenex.cn` | IPFS 网关(NFT 元数据等) | 公开 | 阿里云 |
|
||
|
||
> MinIO 推荐路径风格:`oss.gogenex.cn/bucket/object`
|
||
> 如需虚拟主机风格可配置 `*.oss.gogenex.cn` 泛解析。
|
||
|
||
---
|
||
|
||
### 2.6 📊 运维监控层
|
||
|
||
| 子域名 | 用途 | 访问范围 | DNS |
|
||
| --- | --- | --- | --- |
|
||
| `monitor.gogenex.cn` | Grafana 监控面板 | 内网 / VPN | 阿里云 |
|
||
| `log.gogenex.cn` | 日志平台(ELK / Loki) | 内网 / VPN | 阿里云 |
|
||
| `trace.gogenex.cn` | 链路追踪(Jaeger / Tempo) | 内网 / VPN | 阿里云 |
|
||
| `alert.gogenex.cn` | 告警平台(Alertmanager) | 内网 / VPN | 阿里云 |
|
||
| `status.gogenex.com` | 服务状态页(对外) | 公开 | Namecheap |
|
||
| `ci.gogenex.cn` | CI/CD 平台(Jenkins / GitLab) | 内网 / VPN | 阿里云 |
|
||
|
||
---
|
||
|
||
### 2.7 🧪 环境隔离
|
||
|
||
采用 **`{env}-{service}.gogenex.cn`** 风格统一命名:
|
||
|
||
| 环境 | 示例 | 说明 |
|
||
| --- | --- | --- |
|
||
| **生产** | `api.gogenex.cn` | 无前缀 = 生产 |
|
||
| **预发布** | `staging-api.gogenex.cn` | staging 前缀 |
|
||
| **测试** | `test-api.gogenex.cn` | test 前缀 |
|
||
| **开发** | `dev-api.gogenex.cn` | dev 前缀 |
|
||
| | `dev-mpc.gogenex.cn` | |
|
||
| | `dev-portal.gogenex.cn` | |
|
||
| | `staging-rpc.gogenex.cn` | |
|
||
|
||
---
|
||
|
||
### 2.8 📚 文档与开放平台
|
||
|
||
| 子域名 | 用途 | 访问范围 | DNS |
|
||
| --- | --- | --- | --- |
|
||
| `docs.gogenex.com` | API 文档 / 开发者文档 | 公开 | Namecheap |
|
||
| `developer.gogenex.com` | 开发者开放平台 | 公开 | Namecheap |
|
||
| `sandbox.gogenex.com` | API 沙盒测试环境 | 公开 / 登录 | Namecheap |
|
||
|
||
---
|
||
|
||
## 三、DNS 记录规划
|
||
|
||
### 3.1 阿里云 DNS — `gogenex.cn`
|
||
|
||
```dns
|
||
# ----- 官网与门户 -----
|
||
gogenex.cn. A <JUMP_IP>
|
||
www.gogenex.cn. CNAME gogenex.cn.
|
||
portal.gogenex.cn. A <JUMP_IP>
|
||
console.gogenex.cn. A <JUMP_IP>
|
||
admin.gogenex.cn. A <内网 IP>
|
||
|
||
# ----- API 网关 -----
|
||
api.gogenex.cn. A <JUMP_IP>
|
||
|
||
# ----- 认证 -----
|
||
auth.gogenex.cn. A <JUMP_IP>
|
||
|
||
# ----- 区块链服务 -----
|
||
rpc.gogenex.cn. A <JUMP_IP>
|
||
ws.gogenex.cn. A <JUMP_IP>
|
||
explorer.gogenex.cn. A <JUMP_IP>
|
||
bridge.gogenex.cn. A <JUMP_IP>
|
||
faucet.gogenex.cn. A <JUMP_IP>
|
||
|
||
# ----- 存储与 CDN -----
|
||
static.gogenex.cn. CNAME <CDN 域名>
|
||
ipfs-gw.gogenex.cn. A <JUMP_IP>
|
||
|
||
# ----- 内部服务(私有 DNS / 内网解析) -----
|
||
api-internal.gogenex.cn. A <内网 IP>
|
||
mpc.gogenex.cn. A <内网隔离 IP>
|
||
mpc-relay.gogenex.cn. A <内网 IP>
|
||
mpc-callback.gogenex.cn. A <内网 IP>
|
||
kms.gogenex.cn. A <内网 IP>
|
||
vault.gogenex.cn. A <内网 IP>
|
||
oss.gogenex.cn. A <内网 IP>
|
||
indexer.gogenex.cn. A <内网 IP>
|
||
oracle.gogenex.cn. A <内网 IP>
|
||
node.gogenex.cn. A <内网 IP>
|
||
monitor.gogenex.cn. A <内网 IP>
|
||
log.gogenex.cn. A <内网 IP>
|
||
trace.gogenex.cn. A <内网 IP>
|
||
alert.gogenex.cn. A <内网 IP>
|
||
ci.gogenex.cn. A <内网 IP>
|
||
```
|
||
|
||
### 3.2 Namecheap DNS — `gogenex.com`
|
||
|
||
```dns
|
||
# ----- 品牌官网 -----
|
||
@ A <JUMP_IP>
|
||
www CNAME gogenex.com.
|
||
|
||
# ----- 国际 API 入口(CNAME 到 .cn 主域名) -----
|
||
api CNAME api.gogenex.cn.
|
||
|
||
# ----- 文档与开放平台 -----
|
||
docs CNAME <文档托管>
|
||
developer A <JUMP_IP>
|
||
sandbox A <JUMP_IP>
|
||
|
||
# ----- 状态页 -----
|
||
status CNAME <状态页服务>
|
||
```
|
||
|
||
---
|
||
|
||
## 四、SSL 证书策略
|
||
|
||
| 证书 | 覆盖范围 | 说明 |
|
||
| --- | --- | --- |
|
||
| `*.gogenex.cn` + `gogenex.cn` | 所有 .cn 子域名 + 裸域 | 阿里云免费证书或 Let's Encrypt |
|
||
| `*.gogenex.com` + `gogenex.com` | 所有 .com 子域名 + 裸域 | Let's Encrypt |
|
||
| `*.oss.gogenex.cn` | MinIO 虚拟主机风格(可选) | 仅在需要时申请 |
|
||
|
||
**推荐方案:**
|
||
|
||
- 使用 **Let's Encrypt** 做自动续期,DNS-01 验证方式(支持泛域名)
|
||
- 阿里云 DNS 验证插件:`certbot-dns-aliyun`
|
||
- K8s 场景配合 `cert-manager` 管理
|
||
- 内网服务可使用自签 CA + mTLS 双向认证
|
||
|
||
---
|
||
|
||
## 五、安全分区架构
|
||
|
||
```
|
||
┌──────────────────────────────────────────────────────┐
|
||
│ 公网 (Internet) │
|
||
│ │
|
||
│ .com: www / api(CNAME) / docs / developer / status │
|
||
│ .cn: portal / api / auth / rpc / ws / explorer │
|
||
│ static / faucet / bridge / console │
|
||
└─────────────────────┬────────────────────────────────┘
|
||
│ WAF / API Gateway / Rate Limit
|
||
┌─────────────────────┴────────────────────────────────┐
|
||
│ DMZ / 网关层 │
|
||
│ Nginx / Kong / APISIX / Cloudflare │
|
||
└─────────────────────┬────────────────────────────────┘
|
||
│ VPN / mTLS / 内网
|
||
┌─────────────────────┴────────────────────────────────┐
|
||
│ 内网服务区 │
|
||
│ │
|
||
│ .cn: api-internal / admin / oss / indexer / oracle │
|
||
│ monitor / log / trace / ci / node │
|
||
└─────────────────────┬────────────────────────────────┘
|
||
│ 网络隔离 / 硬件安全模块
|
||
┌─────────────────────┴────────────────────────────────┐
|
||
│ 🔒 安全隔离区 (MPC Zone) │
|
||
│ │
|
||
│ .cn: mpc / mpc-relay / mpc-callback / kms / vault │
|
||
│ 独立 VPC / 独立网段 / HSM 硬件 │
|
||
└──────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
### 安全分区说明
|
||
|
||
| 分区 | 网络策略 | 典型服务 |
|
||
| --- | --- | --- |
|
||
| **公网区** | 经 WAF + CDN 保护,限流 | 官网(.com)、API 网关(.cn)、区块链浏览器 |
|
||
| **DMZ 网关层** | 反向代理,仅转发合法请求 | Nginx / Kong / APISIX |
|
||
| **内网服务区** | 仅 VPN / 内网可达 | 微服务、监控、存储 (均 .cn) |
|
||
| **MPC 安全隔离区** | 独立 VPC、独立网段、最小化出入口 | MPC 签名、KMS、Vault (均 .cn) |
|
||
|
||
---
|
||
|
||
## 六、子域名总览清单
|
||
|
||
### gogenex.cn(阿里云 DNS)— 28 条
|
||
|
||
| # | 子域名 | 用途 | 公网/内网 |
|
||
| --- | --- | --- | --- |
|
||
| 1 | `gogenex.cn` | 中文官网 | 公网 |
|
||
| 2 | `www.gogenex.cn` | 中文官网 (CNAME) | 公网 |
|
||
| 3 | `portal.gogenex.cn` | 业务门户 | 公网 |
|
||
| 4 | `admin.gogenex.cn` | 管理后台 | 内网 |
|
||
| 5 | `console.gogenex.cn` | 开发者/商户控制台 | 公网 |
|
||
| 6 | `api.gogenex.cn` | 对外 API 网关 | 公网 |
|
||
| 7 | `api-internal.gogenex.cn` | 对内 API 网关 | 内网 |
|
||
| 8 | `auth.gogenex.cn` | 统一认证 / SSO | 公网 |
|
||
| 9 | `mpc.gogenex.cn` | MPC 签名服务 | 内网(隔离) |
|
||
| 10 | `mpc-relay.gogenex.cn` | MPC 中继节点 | 内网(隔离) |
|
||
| 11 | `mpc-callback.gogenex.cn` | MPC 异步回调 | 内网(白名单) |
|
||
| 12 | `kms.gogenex.cn` | 密钥管理 | 内网(隔离) |
|
||
| 13 | `vault.gogenex.cn` | 机密存储 | 内网(隔离) |
|
||
| 14 | `rpc.gogenex.cn` | 区块链 RPC 代理 | 公网 |
|
||
| 15 | `ws.gogenex.cn` | WebSocket 服务 | 公网 |
|
||
| 16 | `explorer.gogenex.cn` | 区块链浏览器 | 公网 |
|
||
| 17 | `indexer.gogenex.cn` | 链上数据索引 | 内网 |
|
||
| 18 | `bridge.gogenex.cn` | 跨链桥 | 公网 |
|
||
| 19 | `oracle.gogenex.cn` | 预言机 | 内网 |
|
||
| 20 | `node.gogenex.cn` | 全节点管理 | 内网 |
|
||
| 21 | `faucet.gogenex.cn` | 测试网水龙头 | 公网 |
|
||
| 22 | `oss.gogenex.cn` | MinIO 对象存储 | 内网 |
|
||
| 23 | `static.gogenex.cn` | 静态资源 CDN | 公网 |
|
||
| 24 | `ipfs-gw.gogenex.cn` | IPFS 网关 | 公网 |
|
||
| 25 | `monitor.gogenex.cn` | Grafana 监控 | 内网 |
|
||
| 26 | `log.gogenex.cn` | 日志平台 | 内网 |
|
||
| 27 | `trace.gogenex.cn` | 链路追踪 | 内网 |
|
||
| 28 | `alert.gogenex.cn` | 告警平台 | 内网 |
|
||
| 29 | `ci.gogenex.cn` | CI/CD 平台 | 内网 |
|
||
|
||
### gogenex.com(Namecheap DNS)— 7 条
|
||
|
||
| # | 子域名 | 用途 | 公网/内网 |
|
||
| --- | --- | --- | --- |
|
||
| 1 | `gogenex.com` | 品牌官网 | 公网 |
|
||
| 2 | `www.gogenex.com` | 品牌官网 (CNAME) | 公网 |
|
||
| 3 | `api.gogenex.com` | 国际 API (CNAME → api.gogenex.cn) | 公网 |
|
||
| 4 | `docs.gogenex.com` | API 文档 | 公网 |
|
||
| 5 | `developer.gogenex.com` | 开发者平台 | 公网 |
|
||
| 6 | `sandbox.gogenex.com` | API 沙盒 | 公网 |
|
||
| 7 | `status.gogenex.com` | 服务状态页 | 公网 |
|
||
|
||
---
|
||
|
||
## 七、关键设计原则
|
||
|
||
1. **双域名分工**:`.cn` 承载技术栈和业务服务,`.com` 面向国际品牌和文档,互不干扰。
|
||
2. **统一网关入口**:对外仅暴露 `api.gogenex.cn`,`.com` 的 API 通过 CNAME 跳转,避免子域名爆炸。
|
||
3. **MPC 严格隔离**:MPC / KMS / Vault 部署在独立安全区,不直接暴露公网,所有对外 MPC 能力经网关代理。
|
||
4. **环境一致性**:采用 `{env}-{service}` 统一命名规范,生产无前缀。
|
||
5. **证书简化**:`.cn` 一张泛域名证书 + `.com` 一张泛域名证书,各自覆盖所有子域名。
|
||
6. **内外分离**:内部服务使用私有 DNS 解析,不解析到公网 IP。
|
||
7. **可扩展性**:新增业务模块只需在网关层添加路径规则,无需频繁新增子域名。
|
||
|
||
---
|
||
|
||
> 📌 本方案为初始架构规划,可根据实际业务发展和团队规模进行裁剪或扩展。
|