选择合适的导出格式
CSV
电子表格分析、筛选、数据透视表
JSON
脚本与自动化差异比对流水线
导出并分析批量 DNS 查询结果
对一长串域名执行批量查询,会很快产生大量原始素材,包括地址、状态码和响应时间。真正的价值通常出现在导出之后:这时您可以把它当作结构化数据来筛选、排序和比较,而不是看着一页页结果从眼前滚过。
CSV 与 JSON:选对导出格式
| CSV | JSON | |
|---|---|---|
| 最适合 | 电子表格分析、手动筛选 | 输入脚本或流水线 |
| 一眼看懂 | 可以,任何电子表格工具里都行 | 仅适用于较小的结果集 |
| 保留嵌套结构 | 不能,会被展平为行和列 | 可以,数组和对象保持完整 |
| 典型的下一步 | 数据透视表、筛选、排序 | 程序化比对、自动化流水线 |
CSV 是电子表格分析的合适默认选择:按状态排序、只筛选出失败项,或快速建立数据透视表,看看有多少域名落入各个错误类别。当您要把结果输入另一个程序时,JSON 更合适:比如一个把本次运行与上周结果做比对的脚本,或一条标记出任何解析到不该出现的地址段的流水线。
几项真正有用的检查
- 先按错误码分组,而不只是区分成功与失败:NXDOMAIN 和超时的含义大不相同,需要不同的后续处理。
- 按响应时间排序,找出解析速度异常缓慢的域名,这通常是 DNS 配置问题的迹象,本身就值得仔细查看。
- 检查哪些域名在某一地址族下返回零个地址,而另一个地址族有地址:这是发现悄悄只支持 IPv4(或者较少见的只支持 IPv6)的基础设施的快速办法。
- 如果有同一份列表的上一次导出,就与之交叉比对,准确找出自上次以来发生了什么变化,而不必从头重新审阅所有内容。
从工具角度看,直接以流的方式导出,而不是先等整个大批量结果都在内存中构建完毕,同样很重要:这决定了一个 50,000 行的导出是立即开始下载,还是在请求中途卡住。
一个可扩展的简单比对流程
JSON 导出格式让一项真正有用的比较变得几乎轻而易举:加载本次和上次的导出,以域名为键,然后遍历其中一个集合,寻找三种情况:两次都存在但地址列表不同的域名(已变更),出现在新集合中但不在旧集合中的域名(新增到组合中),以及出现在旧集合中但新集合里缺失的域名(已移除,或在以前成功的地方现在失败了)。这样的脚本几分钟就能写完,它把“自上周以来有没有变化”这个原本需要肉眼扫描数千行才能回答的问题,变成了一秒钟就能跑完的检查。
把导出文件本身留作审计记录
除了即时分析之外,每一份导出本身也值得保留:它是一份带日期的快照,记录了一大批域名在某个具体时间点究竟解析到了哪里。当日后的安全事件或合规问题问起“这个域名在某个日期指向哪里”时,留存的导出可以给出确切的答案,无需凭记忆还原历史,也不必指望别处保留了变更日志。保存少量过往的导出,成本很低,却能让您对这个问题给出确定的答案,而不是猜测。
需要查看某个域名的公网 DNS 地址?使用 Domain IP Lookup 工具。
相关阅读
让检查频率与监控对象相匹配
设置定时 DNS 健康检查
周期性的查询任务可以自动发现 DNS 的变动。本文教您思考该检查什么、多久检查一次,以及如何设计告警。
四个步骤,按顺序核对
导出
所有现有记录
迁移
到新的服务商
验证
逐条比对记录
确认
等旧 TTL 过期
如何确认 DNS 迁移顺利完成
一份实用的检查清单,用来确认 DNS 服务商切换或记录迁移是否真正完成,而不是想当然地认为已经完成,帮您避免悄无声息的故障。
两种截然不同的使用时刻
dig / nslookup
完整协议细节,可脚本化,可离线使用
网页版工具
无需配置,支持批量查询,可分享
如何使用 DNS 查询工具:实用指南
学会使用 DNS 查询工具,查看域名的地址、邮件、域名服务器、别名和文本记录,并明白如何安全、准确地解读返回的应答。