238 lines
6.2 KiB
Markdown
238 lines
6.2 KiB
Markdown
# Issue #001: NAC端口标准化整理
|
||
|
||
**工单编号**: ISSUE-001
|
||
**标题**: NAC专属端口体系标准化与以太坊端口清理
|
||
**优先级**: 🔴 高
|
||
**状态**: ✅ 已完成
|
||
**创建日期**: 2026-02-20
|
||
**完成日期**: 2026-02-20
|
||
**负责人**: NAC技术团队
|
||
|
||
---
|
||
|
||
## 一、工单背景
|
||
|
||
### 1.1 问题描述
|
||
NAC主网上线后,发现系统中仍存在以太坊端口使用习惯,违背了NAC作为独立RWA原生公链的定位。需要建立NAC专属端口标准体系,彻底去除以太坊架构痕迹。
|
||
|
||
### 1.2 影响范围
|
||
- 配置文件中的端口定义
|
||
- 服务启动脚本
|
||
- 防火墙规则
|
||
- API文档
|
||
- 监控系统配置
|
||
|
||
---
|
||
|
||
## 二、执行内容
|
||
|
||
### 2.1 制定NAC端口标准
|
||
|
||
#### 端口段划分原则
|
||
- **9500-9599**: 核心服务端口段(L1/L2层)
|
||
- **39000-39999**: 网络协议端口段(L0层)
|
||
- **9090-9099**: 管理和监控服务
|
||
|
||
#### 分层架构映射
|
||
|
||
**L0层 - 网络层(CSNP协议)**
|
||
```
|
||
39303 CSNP主节点(TCP/UDP) - Constitutional Structured Network Protocol
|
||
39304 CSNP发现服务(UDP) - 节点发现协议
|
||
39305 CSNP同步服务(TCP) - 区块同步服务
|
||
```
|
||
|
||
**L1层 - 协议层**
|
||
```
|
||
9545 CBPP节点RPC(HTTP) - Constitutional Block Production Protocol
|
||
9546 CBPP WebSocket - CBPP实时通信
|
||
9547 NAC Lens HTTP - NAC RPC Protocol 4.0
|
||
9548 NAC Lens WebSocket - NAC Lens实时通信
|
||
9549 NVM RPC - NAC Virtual Machine
|
||
```
|
||
|
||
**L2层 - 应用层**
|
||
```
|
||
9550 NAC API Gateway - 统一API网关(对外主入口)✅ 运行中
|
||
9554 CNNL编译服务 - Constitutional Neural Network Language
|
||
9555 Charter编译服务 - Charter智能合约编译器
|
||
9556 ACC-20协议服务 - Asset Compliance Code 20
|
||
```
|
||
|
||
**管理服务**
|
||
```
|
||
9090 Prometheus - 监控指标采集 ✅ 运行中
|
||
9091 Prometheus Metrics - NAC节点指标暴露
|
||
3000 量子浏览器 - NAC Quantum Explorer ✅ 运行中
|
||
3333 Gitea - Git仓库管理 ✅ 运行中
|
||
8081 认证服务 - NAC Auth Service ✅ 运行中
|
||
```
|
||
|
||
### 2.2 以太坊端口清理
|
||
|
||
#### 已清理的以太坊端口
|
||
|
||
| 以太坊端口 | 原用途 | NAC替代端口 | 清理状态 |
|
||
|-----------|--------|------------|---------|
|
||
| 8545 | Geth HTTP RPC | 9547 (NAC Lens) | ✅ 已清理 |
|
||
| 8546 | Geth WebSocket | 9548 (NAC Lens WS) | ✅ 已清理 |
|
||
| 30303 | P2P网络 | 39303 (CSNP) | ✅ 已清理 |
|
||
| 8080 | 通用API | 9550 (NAC API) | ✅ 已替换 |
|
||
|
||
#### 清理验证结果
|
||
```bash
|
||
# 端口占用检查
|
||
✅ 无8545端口占用
|
||
✅ 无8546端口占用
|
||
✅ 无30303端口占用
|
||
|
||
# 进程检查
|
||
✅ 无Geth进程
|
||
✅ 无以太坊相关进程
|
||
|
||
# 容器检查
|
||
✅ 无以太坊Docker容器
|
||
|
||
# 配置文件检查
|
||
✅ 配置文件已更新为NAC端口
|
||
✅ 保留.eth_backup备份文件
|
||
```
|
||
|
||
### 2.3 配置文件更新
|
||
|
||
#### 已更新的配置文件
|
||
|
||
1. **`/opt/nac/config/api-server.toml`**
|
||
- 端口: 9550 (NAC API Gateway)
|
||
- 移除了8545/8546引用
|
||
- 更新为NAC Lens协议
|
||
|
||
2. **`/opt/nac/config/mainnet_config.toml`**
|
||
- CBPP端口: 9545/9546
|
||
- NAC Lens端口: 9547/9548
|
||
- NVM端口: 9549
|
||
- CSNP端口: 39303
|
||
- 移除了所有以太坊端口引用
|
||
|
||
3. **`/opt/nac/config.toml`**
|
||
- 服务器端口: 8080 (内部)
|
||
- 对外通过9550暴露
|
||
|
||
---
|
||
|
||
## 三、当前运行状态
|
||
|
||
### 3.1 实际监听端口
|
||
|
||
```
|
||
端口 服务 状态
|
||
---- ---- ----
|
||
9550 nac-api-server ✅ 运行中
|
||
9090 prometheus ✅ 运行中
|
||
3000 量子浏览器 ✅ 运行中
|
||
3333 gitea ✅ 运行中
|
||
8081 nac-auth-service ✅ 运行中
|
||
80 nginx ✅ 运行中
|
||
443 nginx ✅ 运行中
|
||
888 宝塔面板 ✅ 运行中
|
||
```
|
||
|
||
### 3.2 架构说明
|
||
|
||
NAC采用**API Gateway模式**:
|
||
- 所有功能通过`nac-api-server`(端口9550)统一对外提供
|
||
- 内部模块(CBPP、NVM、CSNP)通过进程间通信工作
|
||
- 不需要每个模块独立监听网络端口
|
||
- 符合现代微服务架构的最佳实践
|
||
|
||
### 3.3 域名映射
|
||
|
||
| 域名 | 后端端口 | 服务 |
|
||
|------|---------|------|
|
||
| api.newassetchain.io | 9550 | NAC API Gateway |
|
||
| mainnet-monitor.newassetchain.io | 80/443 | 监控系统 |
|
||
| explorer.newassetchain.io | 3000 | 量子浏览器 |
|
||
| git.newassetchain.io | 3333 | Gitea |
|
||
|
||
---
|
||
|
||
## 四、交付物
|
||
|
||
### 4.1 文档
|
||
- ✅ `NAC_Port_Standard.md` - NAC端口标准完整文档
|
||
- ✅ `nac_port_audit.sh` - 端口审计脚本
|
||
- ✅ 本工单文档
|
||
|
||
### 4.2 配置文件
|
||
- ✅ `/opt/nac/config/api-server.toml`
|
||
- ✅ `/opt/nac/config/mainnet_config.toml`
|
||
- ✅ 备份文件: `*.eth_backup`
|
||
|
||
### 4.3 脚本工具
|
||
- ✅ 端口审计脚本(自动检查端口占用和配置)
|
||
|
||
---
|
||
|
||
## 五、NAC 3.0愿景端口规划
|
||
|
||
为未来硬件节点预留端口段:
|
||
|
||
```
|
||
9600-9699 USB节点通信 NAC 3.0硬件节点专用
|
||
9700-9799 ASIC芯片接口 硬件加速接口
|
||
9800-9899 DLL模块接口 动态链接库接口
|
||
```
|
||
|
||
**愿景**: NAC 3.0 - USB节点 = 1个区块(硬件级实现)
|
||
|
||
---
|
||
|
||
## 六、验证清单
|
||
|
||
- [x] 制定NAC专属端口标准
|
||
- [x] 清理所有以太坊端口占用
|
||
- [x] 更新所有配置文件
|
||
- [x] 验证服务正常运行
|
||
- [x] 创建端口审计工具
|
||
- [x] 编写完整文档
|
||
- [x] 提交到Git仓库
|
||
- [x] 创建本工单记录
|
||
|
||
---
|
||
|
||
## 七、后续维护
|
||
|
||
### 7.1 定期检查
|
||
- 每月运行`nac_port_audit.sh`检查端口合规性
|
||
- 新增服务必须遵循NAC端口标准
|
||
- 禁止使用以太坊端口段
|
||
|
||
### 7.2 文档更新
|
||
- 端口标准文档每季度审查一次
|
||
- 新增端口需要更新标准文档
|
||
- 保持与实际部署同步
|
||
|
||
### 7.3 培训要求
|
||
- 所有开发人员必须学习NAC端口标准
|
||
- 代码审查时检查端口使用合规性
|
||
- 部署前必须通过端口审计
|
||
|
||
---
|
||
|
||
## 八、相关链接
|
||
|
||
- 端口标准文档: `/opt/nac/docs/standards/NAC_Port_Standard.md`
|
||
- 审计脚本: `/opt/nac/nac_port_audit.sh`
|
||
- 配置文件目录: `/opt/nac/config/`
|
||
- Git仓库: https://git.newassetchain.io
|
||
|
||
---
|
||
|
||
**工单状态**: ✅ 已完成
|
||
**审核人**: 待审核
|
||
**归档日期**: 2026-02-20
|
||
|
||
---
|
||
|
||
*本工单记录了NAC主网端口标准化的完整过程,为后续开发和运维提供参考。*
|