# DNSSEC状态显示问题修复计划 ## 问题分析 用户报告已在配置中启用DNSSEC(`enableDNSSEC: true`),但界面显示DNSSEC为禁用状态,且使用率为0%。经过代码检查,发现问题出在`GetStats`函数中,该函数返回的`Stats`结构体缺少DNSSEC相关字段,导致前端无法获取正确的DNSSEC状态和统计信息。 ## 修复方案 ### 1. 修复`GetStats`函数 **修改文件:** `dns/server.go` **修改函数:** `GetStats` **问题:** 当前`GetStats`函数返回的`Stats`结构体缺少DNSSEC相关字段,包括: * `DNSSECEnabled` * `DNSSECQueries` * `DNSSECSuccess` * `DNSSECFailed` **解决方案:** 在`GetStats`函数返回的`Stats`结构体中添加所有DNSSEC相关字段,确保前端能获取到正确的DNSSEC状态和统计数据。 ## 具体实现步骤 1. **修改`GetStats`函数**: * 在返回的`Stats`结构体中添加`DNSSECEnabled`字段 * 添加`DNSSECQueries`字段 * 添加`DNSSECSuccess`字段 * 添加`DNSSECFailed`字段 2. **测试修复效果**: * 重新编译DNS服务器 * 启动服务器 * 使用API查询统计信息,确认DNSSEC状态和统计数据正确返回 * 检查前端界面是否显示正确的DNSSEC状态 ## 预期效果 1. 前端界面显示DNSSEC状态为"已启用" 2. DNSSEC使用率根据实际查询情况更新 3. 成功、失败和总查询数统计正确显示 4. 系统正常记录DNSSEC相关统计数据 ## 代码修改范围 * `dns/server.go`:修复`GetStats`函数,添加缺失的DNSSEC字段