DNS多点部署IP Anycast+BGP实战分析

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

DNS多点部署IP Anycast+BGP实战分析

DNS领域的多点部署大多采用IP Anycast+BGP方式,采用这种方式不需要额外采购设备,部署灵活多样。但像其他所有技术一样,IP Anycast+BGP技术只有在适当的领域和范围内才能发挥它的最大优势。

Internet不断发展,上网人群数量增加,多数网站或DNS等服务在使用单节点提供服务的情况下,无论服务器性能还是接入带宽都不足以承载大量的用户服务请求; 而在国内运营商网络之间访问缓慢的问题一直存在; 此外,服务的高可用性也逐渐被重视。考虑到这些因素,企业在部署服务的时候首先会想到在多个物理位置、多个运营商网络中部署相同的服务,以解决上述问题。用户在下载的时候,大都看到过下载项中有“电信下载”、“网通下载”等多个下载链接,就是这种多点部署的一种应用。可不可以不用用户选择,而自动将请求连接到最快的服务呢?答案是某些应用服务可以实现。

某些设备厂商针对这一需求生产了一些硬件产品,如F5公司的GTM。而在DNS领域,多点部署更多的是使用了IP Anycast+BGP方式。IP Anycast+BGP是一种网络技术,采用这种方式不需要额外采购设备,且部署灵活多样。但在考虑部署IP Anycast+BGP的时候,要认真考虑IP Anycast+BGP的特性,像其他所有技术一样,IP Anycast+BGP技术只有在适当的领域和范围内才能发挥它的最大优势。

Anycast技术优势

Anycasting最初是在RFC1546中提出并定义的,根据RFC1546的说明,IPv4的任播地址不同于IPv4的单播地址,它建议从IPv4的地址空间分配出一块独立的地址空间作为任播地址空间。RFC1546定义的这种任播没有在IPv4网络中得到广泛使用,但是它的最初语义在IPv4得到广泛使用: 在IP网络上,通过一个Anycast地址标识一组提供特定服务的主机,同时服务访问方并不关心提供服务的具体是哪一台主机(比如DNS或者镜像服务),访问该地址的报文可以被IP网络路由到这一组目标中的任何一台主机上,它提供的是一种无状态的、尽力而为的服务。

在实际应用中,Anycast采用将一个单播地址分配到处于Internet中多个不同物理位置的主机上,发送到这个主机的报文被网络路由到路由协议度量的“最近”的目标主机上。

Anycast技术具有以下优势:

一、不同客户端将访问不同目的主机,此过程对客户端透明,从而实现了目的主机的负载均衡;

二、当任意目的主机接入的网络出现故障,导致该目的主机不可达时,客户端请求可以在无人为干预的情况下自动被路由到目前可达的最近目的主机,在一定程度上为目标主机提供了冗余性;

三、当目的主机受到DoS攻击而无法到达时,由于网络不可到达,客户端请求也将路由到其他目的主机上,而在DDoS攻击时,由于Anycast的负载均衡效应,避免了单台目的主机承受所有攻击流量,因此在一定程度上为目的主机提高了安全性;

四、因为Anycast利用路由度量到“最近”的目的主机,提高了客户端响应速度。

但是,Anycast技术也存在一定的局限性:

使用Anycast中的共享单播地址不能作为客户端发起请求,因为请求的响应不一定能返回到发起的Anycast单播地址。因此,目前Anycast仅适合一些特定的上层协议,从目前的实际应用来看, Anycast最广泛的应用是DNS的部署。

Anycast应用方式

Anycast实质上是一种网络技术,它借助于网络中动态路由协议实现服务的负载均衡和冗余,从实现类型上分,可以分为subnet Anycast和Global Anycas: Subnet Anycast是指所有目的主机都位于同一网段,此方式仅提供负载均衡和冗余,对安全度提升没有实质效果; Global Anycast是指目的主机处于不同网段,可能处于不同城市,甚至分布在全球各地,在实际应用中Global Anycast中目标主机的部署除地理位置的考虑外,多接入不同自治域的网络中。

当使用Anycast的目标主机接入到不同自治域时,因为难以使用某一自治域的IP地址,所以通常使用Anycast的共享单播地址拥有独立的自治域号,并通过BGP协议与不同自治域网络交换路由,即IP Anycast+BGP。

IP Anycast+BGP部署

IP Anycast+BGP的部署必须使用能够运行BGP的设备与其他自治域进行路由交换,通常使用的设备是路由器或三层交换机。然后将目标主机直接接入路由器或通过负载均衡设备将多台主机接入路由器,当然此时也可以采用subnet Anycast接入目标主机。而路由器向上联自治域广播目标主机共享的单播地址; 路由器可以从上联自治域接收全路由表,也可以将默认路由的下一跳指向上联自治域的路由器接口。

这种路由器加目标主机的组合形成了单一节点,将单一节点进行复制,分别上联到不同地理位置的不同自治域中,且路由器广播地址相同,就形成了Anycast。当然,每个单一节点内部结构可以不同,只要BGP广播地址相同,目标主机提供相同服务即可。各单一节点可以使用相同的自治域号,也可以使用不同自治域号。

IP Anycast+BGP的部署可以解决分布服务的负载均衡、冗余度问题,也在一定程度上提高了分布服务的安全性,但是也存在一些问题:

首先,目标主机接入路由时,如目标主机down机,或网卡故障等原因导致路由器在IGP中无法查找到目标主机路由,BGP将自动停止对上联自治域的地址广播,客户端请求将被重新路由到其他目标主机。但是如果目标主机网络可达而服务不可用,BGP无法探测,并将持续向上联自治域广播共享单播地址。被路由到该目标主机的客户端请求无法获得服务,且不能被自动路由到其他目标主机,鉴于上述原因,网络管理员必须时时监控各目标主机的服务,一旦出现异常,可以手工停止路由器的BGP广播,使客户端请求被路由到其他目标主机。

其次,因为用于Anycast的单播地址不能作为客户端发起请求,所以网络管理员所使用的监控网络不能使用Anycast的共享单播地址,此外Anycast要求各节点提供的服务保持一致,对客户端透明,因此,服务同步的源IP也与监控网络一样,不能使用Anycast的共享单播地址。由于二者性质相似,以下统称为监控网络。

第三,网络管理员对Anycast中各节点进行监控时,无法确认监控的是哪一个节点,也无法控制监控所到达的节点。为了实现网络管理员对网络及服务的实时监控,各Anycast节点除了使用共享单播地址外,必须配置非共享单播地址用于网络管理及监控。非单播地址的获得主要有两种方式: 第一种方式是上联自治域分配,上联自治域将这段地址通过静态路由指向Anycast节点的路由器; 第二种方式是作为独立网段在各个Anycast节点路由器上进行广播,因为通常自治域只接收掩码长度小于24的网段广播,如果采用第二种方式将造成IP地址的极大浪费,所以,在条件允许的情况下,尽可能采用第一种方式获得节点非共享单播地址。非共享单播地址同时也用于目标主机的服务同步。地址的分配必须在节点建设的规划期慎重考虑。

第四,在采用第二种方式获取非共享单播地址用于管理时,如果网络管理员监控主机和Anycast节点使用相同自治域号,监控主机将无法管理监控该Anycast节点,因为BGP协议中为避免路由循环,不接收来自相同自治域号的路由广播。因此,在条件允许的情况下,监控网段和Anycast节点尽可能使用不同的自治域号,或者使用第二种方式获得非共享单播地址的Anycast节点应与其他节点和监控网段使用不同的自治域号。但是,也应该避免监控网段和每个Anycast节点都使用独立自治域号,一是避免自治域号的浪费,二是APNIC等自治域号分配机构要求拥有独立自治域号的自治系统需要与两个以上其他自治系统联接,而通常一个Anycast节点只会联接一个自治系统。

如果无法申请到一个以上的自治域号,则会造成监控网络和采用第二种方式获得非共享单播地址的节点使用相同的自治域号,但也有变通方式: 在监控网络边界路由器上,将该节点非共享单播地址的路由通过静态路由指向上联自治域的边界路由器接口,同时该节点路由器也需要将监控网络地址的路由通过静态路由指向上联自治域的边界路由器接口。

第五,Anycast节点上联其他自治系统时,除联接单一自治系统,也可能接入到一些互联网交换中心。通常互联网交换中心使用路由服务器进行路由交换,但路由服务器不承担数据包转发工作,因此,路由服务器不提供默认路由,而Anycast节点也不能将默认路由指向哪个具体地址,就需要Anycast节点路由器接收全路由表。如果是这种情况,还要考虑节点路由器的选型,保证能够接收所需路由条目,这可能导致节点投资增加。在Anycast单一节点上联时,类似问题不胜枚举,此类问题多属于接入问题,与非Anycast接入相同。在单一节点建设时对此应认真对待,实施前详细了解情况,做好充足准备。

小贴士

IP Anycast+BGP在DNS系统部署中得到了广泛应用,但由于Anycast节点上联自治系统不同,接入方式多种多样,很难形成统一、规范的节点部署方案。因此,在IP Anycast+BGP整体部署之前应多方面考虑各种因素,着重考虑自治域号申请、IP地址规划等问题。在某一节点实施时,需要引起足够重视,应主要针对网络接入详细了解情况,做好充足准备,切忌认为已形成统一模式而轻视单一节点建设。

原文发布时间:2014-08-25

本文来自云栖合作伙伴“linux中国”

目录
相关文章
|
1月前
|
存储 缓存 算法
HashMap深度解析:从原理到实战
HashMap,作为Java集合框架中的一个核心组件,以其高效的键值对存储和检索机制,在软件开发中扮演着举足轻重的角色。作为一名资深的AI工程师,深入理解HashMap的原理、历史、业务场景以及实战应用,对于提升数据处理和算法实现的效率至关重要。本文将通过手绘结构图、流程图,结合Java代码示例,全方位解析HashMap,帮助读者从理论到实践全面掌握这一关键技术。
95 14
|
2天前
|
运维 Shell 数据库
Python执行Shell命令并获取结果:深入解析与实战
通过以上内容,开发者可以在实际项目中灵活应用Python执行Shell命令,实现各种自动化任务,提高开发和运维效率。
39 20
|
12天前
|
供应链 搜索推荐 API
深度解析1688 API对电商的影响与实战应用
在全球电子商务迅猛发展的背景下,1688作为知名的B2B电商平台,为中小企业提供商品批发、分销、供应链管理等一站式服务,并通过开放的API接口,为开发者和电商企业提供数据资源和功能支持。本文将深入解析1688 API的功能(如商品搜索、详情、订单管理等)、应用场景(如商品展示、搜索优化、交易管理和用户行为分析)、收益分析(如流量增长、销售提升、库存优化和成本降低)及实际案例,帮助电商从业者提升运营效率和商业收益。
99 20
|
1月前
|
物联网 调度 vr&ar
鸿蒙HarmonyOS应用开发 |鸿蒙技术分享HarmonyOS Next 深度解析:分布式能力与跨设备协作实战
鸿蒙技术分享:HarmonyOS Next 深度解析 随着万物互联时代的到来,华为发布的 HarmonyOS Next 在技术架构和生态体验上实现了重大升级。本文从技术架构、生态优势和开发实践三方面深入探讨其特点,并通过跨设备笔记应用实战案例,展示其强大的分布式能力和多设备协作功能。核心亮点包括新一代微内核架构、统一开发语言 ArkTS 和多模态交互支持。开发者可借助 DevEco Studio 4.0 快速上手,体验高效、灵活的开发过程。 239个字符
222 13
鸿蒙HarmonyOS应用开发 |鸿蒙技术分享HarmonyOS Next 深度解析:分布式能力与跨设备协作实战
|
1月前
|
自然语言处理 搜索推荐 数据安全/隐私保护
鸿蒙登录页面好看的样式设计-HarmonyOS应用开发实战与ArkTS代码解析【HarmonyOS 5.0(Next)】
鸿蒙登录页面设计展示了 HarmonyOS 5.0(Next)的未来美学理念,结合科技与艺术,为用户带来视觉盛宴。该页面使用 ArkTS 开发,支持个性化定制和无缝智能设备连接。代码解析涵盖了声明式 UI、状态管理、事件处理及路由导航等关键概念,帮助开发者快速上手 HarmonyOS 应用开发。通过这段代码,开发者可以了解如何构建交互式界面并实现跨设备协同工作,推动智能生态的发展。
147 10
鸿蒙登录页面好看的样式设计-HarmonyOS应用开发实战与ArkTS代码解析【HarmonyOS 5.0(Next)】
|
17天前
|
数据采集 XML API
深入解析BeautifulSoup:从sohu.com视频页面提取关键信息的实战技巧
深入解析BeautifulSoup:从sohu.com视频页面提取关键信息的实战技巧
|
2月前
|
数据采集 自然语言处理 搜索推荐
基于qwen2.5的长文本解析、数据预测与趋势分析、代码生成能力赋能esg报告分析
Qwen2.5是一款强大的生成式预训练语言模型,擅长自然语言理解和生成,支持长文本解析、数据预测、代码生成等复杂任务。Qwen-Long作为其变体,专为长上下文场景优化,适用于大型文档处理、知识图谱构建等。Qwen2.5在ESG报告解析、多Agent协作、数学模型生成等方面表现出色,提供灵活且高效的解决方案。
276 49
|
28天前
|
安全 API 数据安全/隐私保护
速卖通AliExpress商品详情API接口深度解析与实战应用
速卖通(AliExpress)作为全球化电商的重要平台,提供了丰富的商品资源和便捷的购物体验。为了提升用户体验和优化商品管理,速卖通开放了API接口,其中商品详情API尤为关键。本文介绍如何获取API密钥、调用商品详情API接口,并处理API响应数据,帮助开发者和商家高效利用这些工具。通过合理规划API调用策略和确保合法合规使用,开发者可以更好地获取商品信息,优化管理和营销策略。
|
9天前
|
人工智能 供应链 搜索推荐
中国CRM市场深度分析:主流供应商排名与特点解析
随着中国企业数字化转型的深入,CRM(客户关系管理)软件市场迅速发展,形成了多个优秀解决方案提供商。销售易、纷享销客、明源云客、金蝶云之家、简道云、红圈营销和爱客CRM等供应商各具特色。销售易在大型企业市场表现突出,提供全链路营销销售一体化及强大的AI能力;纷享销客以易用性和高性价比著称,适合中小企业;明源云客专注房地产行业,提供全流程解决方案;金蝶云之家与ERP系统深度整合,适合传统制造业;简道云是低代码平台,灵活性高;红圈营销专注零售业,支持全渠道营销;爱客CRM则主打智能营销功能。企业在选择CRM时需综合考虑实施难度、价格定位、技术支持等因素,并结合自身需求进行试用和调研,确保选择最适合
|
1月前
|
数据采集 DataWorks 搜索推荐
阿里云DataWorks深度评测:实战视角下的全方位解析
在数字化转型的大潮中,高效的数据处理与分析成为企业竞争的关键。本文深入评测阿里云DataWorks,从用户画像分析最佳实践、产品体验、与竞品对比及Data Studio公测体验等多角度,全面解析其功能优势与优化空间,为企业提供宝贵参考。
139 13

相关产品

  • 云解析DNS
  • 推荐镜像

    更多