需求分析
业务网 DNS 主要承担的是业务网生产和测试系统的域名解析功能。其需要满足以下需求:
1. 智能 DNS 解析功能:需要对业务系统的服务状态、服务质量具备探测能力,并根据需要制定适合智能解析策略,实现业务网系统流量的智能调度,或在状态异常时实现自动快速容灾切换。
2. 高可用性:业务网 DNS 架构自身应具备高可用性,保证 24 小时不间断运行,确保业务网系统的能够随时被访问。
3. 高性能和可扩展性:业务网 DNS 架构需要具备高性能的 DNS 解析能力和高配置容量,同时具备良好的可扩展性,以便应对大量 DNS 解析请求,大量域名服务节点配置,大量的健康检查的探测能力,以及各指标高速增长的需求场景,而且能够承受一定量的业务网 DNS DoS/DDoS 的能力。
4. 安全性:业务网 DNS 系统需具备 DNS 安全防护能力,实现对域名名称过滤、解析类型过滤、畸形报文过滤、反射放大攻击防御,DNS tunnel 攻击等防护工作。以便应对来自 DMZ 区、办公网或业务网内的 DNS 攻击。
架构设计
业务网 DNS 架构整体上可设计为“三层六区”结构。
三层分别为:
-
第一层是业务网 DNS 接入层
-
第二层是业务网 DNS 调度/安全防护与分析层
-
第三层是业务网 root 根域及权威名称解析层
六区则是根据功能分为六个区域:
-
第一是业务网 LDNS 区
-
第二是业务网 DNS 调度与安全防护区
-
第三是业务网 DNS 数据分析与洞察区
-
第四是业务网 root 根域区
-
第五是业务网权威名称解析区
-
第六是业务网子域权威名称解析区
架构分析
1. 承担业务网系统间互访的域名解析请求的接入。
2. 承担各分支机构对业务网各系统的域名解析请求的接入。
3. 承担 DMZ 区业务服务对业务网系统访问的域名解析请求的接入。
4. 承担办公网对业务网系统访问的域名解析请求的接入。
备注:对于一些中小型机构或 LDNS 由总部统一管理的企业或组织机构,业务网 LDNS 层可以与业务网 DNS 调度/安全防护区合并。
1. 接受业务网 LDNS 转发的业务网系统域名解析请求,并按照预设的策略调度转发到对应的业务网 DNS 系统区域。
2. 分别对各中心业务网 Root 根域区的 DNS 服务器、权威 DNS 服务器、子域权威 DNS 服务器做负载均衡和 DNS 服务的健康监测,为各区域 DNS 系统提供横向的扩展能力,同时提升各区域的高可用性。
3. 执行 DNS 安全防护功能:实现对域名名称过滤、解析类型过滤、畸形报文过滤、反射放大攻击防御等防护工作。
4. 一方面过滤掉 DMZ 或办公网转发过来的或系统间的非业务网系统的 DNS 域名或未配置的 type 类型解析请求。
5. 另一方面对于畸形报文、反射放大、枚举等 DoS/DDoS 攻击进行防御。
6. 记录 DNS 解析的日志信息,并转发给数据分析与洞察区,进行大数据分析、审计和溯源等。
部署相关智能分析系统,该系统接收上文提到的域名解析日志,根据日志分析并结合实际 DNS 配置元数据来实现可视化的描绘 DNS 解析、系统运行状态的效果,更好的实现智能化运维。关于该部分的更详细内容请参考本白皮书的第四章内容。
为业务网 DNS 系统提供 Root 根域服务。
备注:业务网 Root 根域可以和权威名称解析区合并。
1. 为业务网业务系统提供域名的最终权威的智能解析。
2. 该区对业务服务状态执行高级健康检查,根据健康检查结果决定是否将服务作为响应的 RR 记录。根据配置规模和探测逻辑的不同,灵活调配探测作业的性能与效能,保证探测结果的可靠性与一致性。
3. 对于智能解析,除了基本的静态负载均衡解析策略外,权威解析层还需能够根据业务的当前服务质量、容量、权重等因素做出符合策略要求的智能解析。
4. 在配置与同步上,权威解析层保存了最终的解析记录配置,应确保解析层所有解析服务实例保持配置的一致性,避免局部或全体实例的配置不一致。所有实例对同一业务的状态表达与决策结论应一致,如果出现不一致情况时候,不一致的实例应是被自动隔离,不应对外提供解析服务。这就要求多个实例间应充分解决分布式的一致性,所有实例不应基于某个中心来决策,以避免全局性的失效发生。
当企业或组织机构的存在大量域名的时候,可以对权威 DNS 进行子域拆分构建子域权威 DNS 区域,以实现解耦故障域和降低风险的目的。该区域与权威名称解析区的架构模式完全一致,仅根据实际域名的重要性、解析量、对应服务数量、变更的频次等因素考虑该区域的构建规模。可以根据实际需要构建一套或多套子域权威解析区。接入控制与防护区实现基于域名特征的解析拆分,将相关子域解析发送到对应的子域权威区,并对子域权威区实施相同安全防护能力。
技术建议
1. 对于分支较多的企业或组织机构,建议就近部署 LDNS,一方面利用本地的 DNS Cache 能力可以使客户端获得更快的 DNS 响应,同时避免单 LDNS 区域故障对其他分支的影响;另一方面便于针对不同分支特殊需求制定不同的 LDNS 策略,比如分支机构有自己的子域,则 LDNS 需要将权威域,本地子域或其他子域等不同的 DNS 请求进行区分,并转发到对应的 DNS 解析区域。
2. 为了满足审计溯源,权威区域基于源 IP 进行智能解析实现就近访问的目的等需求,LDNS 需要具备透传真实源 IP 的能力。对于 LDNS 区组网优先考虑透明传递真实解析请求的源 IP 到权威解析区。但如果网络结构无法实现透明源地址的透传,则可以考虑 EDNS Client Subnet 技术(即 ECS),但需注意 ECS 一般会对设备产生更多的性能消耗,因此在容量评估时候应充分考虑该因素。
3. 对于分支机构不多,或需要总部统一纳管的企业或组织机构,可以和业务网DNS调度/安全防护层合并,简化架构,减少投资。
1. 根据企业或组织机构规模,以及业务的访问量,该区应在提供足够的性能保证正常的 DNS 解析请求的转发的同时,可以抵御内网 DNS DDoS 攻击。因此该层的设备需采用高性能的设备,同时具备横向集群扩展能力。
2. 设备物理接口应支持 100G 接口及接口组捆绑能力。
3. 该区域应确保能够透明传递真实解析请求的源 IP 到权威解析区。
4. 在 DDoS 防护行为上,建议具备智能学习特性,动态产生防护阀值,以避免人工静态阀值导致的防护缺陷。
5.提供方便的 API 接口对接分析系统与自动化运维系统,以实现灵活及时的策略调整。
6. 应优先考虑具有 FPGA 能力的设施,接触 FPGA 加速 UDP 处理性能与安全防护效果。
7.与权威解析层自动化联动,实现在巨大规模攻击下降级智能解析,借助 FPGA 确保最基本的解析服务,以保证业务的可访问性。
8.具有高性能的日志发送能力,并能自行组织日志格式与内容,可对接多样性的分析系统。
9. 该层在各个物理数据中心分别部署,在各个中心内形成集群组构建自身高可用性。
10. 具有高级负载均衡能力。
1. 具备多个 40G 以上接口,以保证在单解析实例的通道带宽。
2. 基于服务容量、质量、状态的探测,并采用可靠的分布式技术确保探测结果的一致性,应充分考虑对等分布式结构,避免全局性依赖。
3. 灵活的部署额外隐藏探测点,这些探测节点平常仅用于探测,在必要的时候可以升级为解析节点。
4. 软件实例或硬件实例混合部署,以优化整体方案的性价比。
5. 和业务网 DNS 调度/安全防护区自动化联动,实现解析降级、智能调度策略。
6. 在网络上能保证源地址透传下的路径往返一致性。
7. 执行分布式的配置存储,以避免依赖全局性存储的风险。
8. 容许自行组合服务或链路的健康探测逻辑以实现期望的策略。
9. 智能解析策略能够多层级执行,多维度组合,易于调整和编排逻辑,避免维护大量的规则。
10. 能够自动化发现后端实际业务配置,当后端业务发生实际的上线与下线时候,能够被自动化的发现,避免太多人工操作步骤。
11. 该层在所有数据中心部署,并跨越物理数据中心形成统一的集群共享状态。
1. 为避免测试业务影响生产业务,建议生产和测试业务 DNS 解析系统分离,拆分出测试业务子域权威名称解析区。
2. 对于分支机构比较多且各分支希望独立运维自己的 DNS 系统的企业或组织机构,建议为各分支机构拆分独立的子域权威名称解析区,并在各分支机构当地进行部署。
3. 对于规模化部署分布式数据库的场景,对于 DNS 系统的性能、容量和扩展能力要求非常高,则建议拆分独立子域权威名称解析区。
4. 对于 PaaS 平台场景,有些 PaaS 架构对于 DNS 的容量要求比较高,且可能变更非常频繁,则建拆分独立子域权威名称解析区。
原创文章,作者:速盾高防cdn,如若转载,请注明出处:https://www.sudun.com/ask/88647.html