# NAC (New Asset Chain) 专属端口标准 **版本**: 1.0.0 **日期**: 2026-02-20 **状态**: 正式标准 --- ## 一、设计原则 ### 1.1 去以太坊化原则 - ❌ **禁止使用以太坊端口**:8545, 8546, 30303等 - ✅ **使用NAC专属端口段**:9500-9599(核心服务)、39000-39999(网络协议) - ✅ **端口命名规则**:基于NAC技术栈,而非以太坊习惯 ### 1.2 分层架构映射 - **L0层(网络层)**:39000-39099 - **L1层(协议层)**:9500-9549 - **L2层(应用层)**:9550-9599 - **管理服务**:9090-9099 --- ## 二、NAC标准端口列表 ### 2.1 L0层 - 网络层(CSNP协议) | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **39303** | CSNP主节点 | TCP/UDP | Constitutional Structured Network Protocol | 🟢 规划 | | **39304** | CSNP发现服务 | UDP | 节点发现协议 | 🟢 规划 | | **39305** | CSNP同步服务 | TCP | 区块同步服务 | 🟢 规划 | ### 2.2 L1层 - 协议层 #### 2.2.1 CBPP共识协议 | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **9545** | CBPP节点RPC | HTTP | Constitutional Block Production Protocol | 🟢 规划 | | **9546** | CBPP WebSocket | WebSocket | CBPP实时通信 | 🟢 规划 | #### 2.2.2 NVM虚拟机 | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **9549** | NVM RPC | HTTP | NAC Virtual Machine RPC接口 | 🟢 规划 | #### 2.2.3 NRPC4.0协议 | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **9547** | NRPC4.0 HTTP | HTTP | NAC RPC Protocol 4.0 | 🟢 规划 | | **9548** | NRPC4.0 WebSocket | WebSocket | NRPC4.0 实时通信 | 🟢 规划 | ### 2.3 L2层 - 应用层 | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **9550** | NAC API Gateway | HTTP/HTTPS | 统一API网关(对外主入口) | ✅ 运行中 | | **9554** | CNNL编译服务 | HTTP | Constitutional Neural Network Language | 🟢 规划 | | **9555** | Charter编译服务 | HTTP | Charter智能合约编译器 | 🟢 规划 | | **9556** | ACC-20协议服务 | HTTP | Asset Compliance Code 20 | 🟢 规划 | ### 2.4 管理和监控服务 | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **9090** | Prometheus | HTTP | 监控指标采集 | ✅ 运行中 | | **9091** | Prometheus Metrics | HTTP | NAC节点指标暴露端口 | 🟢 规划 | | **3000** | 量子浏览器 | HTTP | NAC Quantum Explorer | ✅ 运行中 | | **3333** | Gitea | HTTP | Git仓库管理 | ✅ 运行中 | | **8081** | 认证服务 | HTTP | NAC Auth Service | ✅ 运行中 | ### 2.5 Web服务(Nginx代理) | 端口 | 服务名称 | 协议 | 说明 | 状态 | |------|---------|------|------|------| | **80** | HTTP | HTTP | Web入口(重定向到HTTPS) | ✅ 运行中 | | **443** | HTTPS | HTTPS | 安全Web入口 | ✅ 运行中 | | **888** | 宝塔面板 | HTTPS | 服务器管理面板 | ✅ 运行中 | --- ## 三、以太坊端口清理清单 ### 3.1 需要废弃的以太坊端口 | 以太坊端口 | 原用途 | NAC替代端口 | 清理状态 | |-----------|--------|------------|---------| | **8545** | Geth HTTP RPC | 9547 (NRPC4.0) | ⚠️ 待清理 | | **8546** | Geth WebSocket | 9548 (NRPC4.0 WS) | ⚠️ 待清理 | | **30303** | P2P网络 | 39303 (CSNP) | ⚠️ 待清理 | | **8080** | 通用API | 9550 (NAC API) | ✅ 已替换 | ### 3.2 清理操作 ```bash # 1. 检查是否有进程占用以太坊端口 netstat -tlnp | grep -E "8545|8546|30303" # 2. 停止相关服务 systemctl stop ethereum-node 2>/dev/null # 3. 禁用自启动 systemctl disable ethereum-node 2>/dev/null # 4. 删除以太坊容器 docker ps -a | grep -E "ethereum|geth" | awk '{print $1}' | xargs docker rm -f # 5. 清理防火墙规则 ufw delete allow 8545/tcp ufw delete allow 8546/tcp ufw delete allow 30303/tcp ufw delete allow 30303/udp ``` --- ## 四、端口分配规则 ### 4.1 端口段划分 | 端口段 | 用途 | 示例 | |--------|------|------| | **9500-9519** | L1层核心协议 | CBPP(9545), NRPC(9547-9548), NVM(9549) | | **9520-9549** | L1层扩展服务 | 预留给未来协议 | | **9550-9569** | L2层应用服务 | API Gateway(9550), CNNL(9554), Charter(9555) | | **9570-9599** | L2层扩展服务 | 预留给未来应用 | | **39000-39099** | L0层网络服务 | CSNP(39303-39305) | | **39100-39199** | L0层扩展服务 | 预留给未来网络协议 | ### 4.2 命名规范 - **服务命名**:`nac--` - 示例:`nac-l0-csnp`, `nac-l1-cbpp`, `nac-l2-api` - **配置文件**:`/opt/nac/config/.toml` - **日志文件**:`/opt/nac/logs/.log` - **systemd服务**:`/etc/systemd/system/nac-.service` --- ## 五、域名映射 | 域名 | 后端端口 | 服务 | 说明 | |------|---------|------|------| | **api.newassetchain.io** | 9550 | NAC API Gateway | 主API入口 | | **mainnet-monitor.newassetchain.io** | 80/443 | 监控系统 | 主网监控面板 | | **explorer.newassetchain.io** | 3000 | 量子浏览器 | 区块链浏览器 | | **git.newassetchain.io** | 3333 | Gitea | 代码仓库 | --- ## 六、安全配置 ### 6.1 防火墙规则 ```bash # 允许Web服务 ufw allow 80/tcp ufw allow 443/tcp # 允许NAC API(对外) ufw allow 9550/tcp # 允许CSNP网络(对外) ufw allow 39303/tcp ufw allow 39303/udp # 内部服务(仅localhost) # 9545, 9546, 9547, 9548, 9549 - 通过API Gateway访问 # 9090 - Prometheus(通过Nginx代理访问) ``` ### 6.2 Nginx代理配置 所有内部端口(9545-9549, 9554-9556)应通过Nginx反向代理访问,不直接暴露到公网。 --- ## 七、迁移检查清单 - [ ] 停止所有以太坊相关服务 - [ ] 更新所有配置文件使用NAC端口 - [ ] 更新systemd服务配置 - [ ] 更新Nginx配置 - [ ] 更新防火墙规则 - [ ] 更新监控配置(Prometheus) - [ ] 更新文档和API说明 - [ ] 测试所有服务连通性 - [ ] 验证API Gateway路由正确 - [ ] 同步到Git仓库 --- ## 八、NAC 3.0愿景端口规划 ### 8.1 硬件节点端口(未来) | 端口 | 用途 | 说明 | |------|------|------| | **9600-9699** | USB节点通信 | NAC 3.0硬件节点专用 | | **9700-9799** | ASIC芯片接口 | 硬件加速接口 | | **9800-9899** | DLL模块接口 | 动态链接库接口 | --- **文档维护者**: NAC技术团队 **最后更新**: 2026-02-20 **下次审查**: 2026-03-20