《深入解析IPv6(第3版)》——10.3 IPv6路由协议

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

本节书摘来自异步社区《深入解析IPv6(第3版)》一书中的第10章,第10.3节,作者: 【美】Joseph Davies 更多章节内容可以访问云栖社区“异步社区”公众号查看。

10.3 IPv6路由协议

IPv6网络是由通过IPv6路由器相互连接的众多IPv6子网所构成的。为了使IPv6网络中任意位置都可达,发送方主机和路由器都必须拥有将流量发送给所需目的的路由。这些路由既可以是一般路由(如汇总所有节点的默认路由),也可以是特殊路由(如某子网中所有节点的汇总路由)。

主机通常会使用直连子网路由到达邻居节点,而使用默认路由以到达其他节点。路由器通常使用子网路由以到达站点中的所有节点,而使用汇总路由以到达其他站点或互联网。虽然拥有直连子网和默认路由的主机,可以使用“路由通告”消息进行自动配置,但路由器的配置方法就相对复杂一些。路由器可以采用静态的方法配置路由,也可以通过路由协议动态维护路由。

静态路由采用手动配置的方法配置的路由表条目,这些路由不会随着网络拓扑的变更而改变。使用手动配置路由表的路由器称为静态路由器。网络管理员如果了解网络拓扑,就可以通过向路由表中输入所有路由条目的方式,来手动建立和更新路由表。由于静态路由器需要手动管理,扩展性不强,因此仅适用于小型网络,而不适用于大型网络或动态改变的网络。

静态路由器不具备容错功能。手动配置的静态路由的生存时间是无限的,所以,静态路由器无法发现和恢复掉线的路由器或链路。

运行Windows Server 2012、Windows Server 2008 R2、Windows Server 2008、Windows 8、Windows 7和Windows Vista系统的IPv6协议的计算机可以配置为静态IPv6路由器。

10.3.1 动态路由概述
动态路由是能够根据网络拓扑的变更而自动更新路由表的路由条目。使用动态配置路由表的路由器称为动态路由器。动态路由器会通过路由器之间正在进行的通信来自动创建和维护自己的路由表。这些通信会使用路由协议,而路由协议会使用一系列周期性发送或按需发送的消息在路由器之间交换路由信息。除了初始配置外,动态路由器通常不需要实时维护,所以动态路由适用于大型网络。由于动态路由扩展性强,具有根据网络错误调整路由和从中恢复的能力,因此它是大中型网络和超大型网络的最佳选择。

动态路由器使用路由协议进行通信,并动态更新路由表。路由协议是在路由器之间进行使用的,因此会产生一些额外的流量负载。这些流量在规划WAN链路时会成为重要的要素。

IPv4中普遍使用的路由协议有路由信息协议(Router Information Protocol, RIP)、开放最短路径优先(Open Shortest Path First, OSPF)协议和边界网关协议(Border Gateway Protocol, BGP)。

对于网络协议的应用来说,发现网络错误并从中恢复的能力是一个重要因素。恢复速度取决于错误的类型、错误是如何发现的,以及路由信息是如何在网络中传播的。当网络中所有路由器的路由表中都具备了正确的路由信息时,网络就收敛了。当网络完成收敛时,网络就会处于稳定状态,所有路由选择都沿着最佳路径执行。

若某个链路或路由器失效了,网络就必须进行重新配置,以反映新的拓扑。因此,路由表中的信息就必须更新。在网络再次收敛之前,它都会处于不稳定状态,这种状态下有可能发生路由环路和路由黑洞。网络收敛所用的时间称为收敛时间。收敛时间根据路由协议和错误类型(链路掉线或路由器掉线)会有所不同。

与IPv4不同,Windows Server 2012、Windows Server 2008 R2和Windows Server 2008的路由和远程访问不支持任何IPv6路由协议。

10.3.2 路由协议技术
路由协议可以基于距离矢量、链路状态或路径矢量技术。

距离矢量

距离矢量路由协议以地址前缀加上自身“距离”(跳数)的形式公布路由信息。路由器可以使用基于路由矢量的路由协议,来周期性地通告自己路由表中的路由。在距离矢量路由器之间进行的路由信息交换是不同步的,而且无法进行确认。基于距离矢量的路由协议的优点是简单且易于配置,缺点是它们产生的网络流量相对较大,收敛时间相对较长,而且无法应用大型或超大型网络。

链路状态

使用基于链路状态的路由协议的路由器,会通过网络来交换链路状态通告(Link State Advertisement, LSA),并以此更新路由表。LSA中包含路由器所连接的网络的地址前缀,以及到达这些前缀的开销(cost)。路由器会在启动时和发现网络拓扑变更时通告LSA。它们会使用单播或组播流量来发送链路状态更新信息,而不会采用广播的形式。链路状态路由器会建立链路状态通告的数据库,并使用这个数据库计算出最佳路由,将其加入路由表中。在链路状态路由器之间进行的路由信息交换是同步,而且可以得到确认的。

基于链路状态的路由协议的优点是它们给网络增加的额外负载较少,收敛时间较短而且它们可以应用于大型和超大型网络,缺点是比较复杂且不易配置。

路径矢量

路由器可以使用基于路径矢量的路由协议以交换一系列跳数(例如自治系统数),以此标识路由经过的路径。自治系统是同一管理机构下的一部分网络。所有自治系统都会被分配一个唯一的自治系统标识符。在路径矢量路由器之间进行的路由信息交换是同步,而且可以得到确认的。基于路径矢量的路由协议的优点是它们给网络增加的额外负载较少,收敛时间较短而且它们可以适应含有多个自治系统的超大型网络,缺点是复杂且不易配置。

10.3.3  IPv6路由协议
在编写此书时,IETF已为IPv6定义了下列路由协议。

  • IPv6 RIPng协议。
  • IPv6 OSPF协议。
  • IPv6集成的中间系统到中间系统(IS-IS)协议。
  • BGP-4协议。
  • IPv6 RIPng协议

下一代RIP(RIPng)是IPv6的一种距离矢量路由协议,该协议定义在RFC 2080中。RIPng协议用于通告IPv6网络前缀,是对RFC 1723定义的RIPv2协议的改进。IPv6 RIPng的数据包结构简单,它使用UDP端口521周期性地通告它的路由、响应路由请求,并异步地通告路由变更信息。

IPv6 RIPng的最大距离是15,15是累计开销(跳数)。距离为16或更远的节点会被判定为不可达。IPv6的RIPng协议是一种执行周期性路由通告机制的简单协议,适用于小型和中型的IPv6网络。IPv6的RIPng协议不适用于大型或超大型IPv6网络。

当IPv6的RIPng路由器启动后,它会在所有接口上通告路由表中的合适路由。IPv6的RIPng路由器同时会在所有接口上发送“通用请求”消息(General Request message)。所有邻居路由器则会发送它们路由表中的内容进行响应;所有的响应消息共同建立起最初的路由表。在IPv6 RIPng协议中,学来的路由条目默认有3分钟生存时间,超过生存时间后相应的路由条目会从IPv6路由表中移除。

在启动后,IPv6 RIPng路由器会在每个接口上周期性地通告(默认每30秒)路由表中合适的路由。其所通告的具体路由,取决于IPv6 RIPng路由器是否实施了水平分割(即路由器不会在自己学来路由条目的那个接口上通告这条路由条目)或毒性反向水平分割(即路由器会在自己学来路由条目的那个接口上将这条路由通告为不可达)。

RIP网络的容错能力是以IPv6所学路由的RIPng超时情况为基础。如果网络拓扑发生了改变,IPv6 RIPng路由器就会发送一个触发更新(立即发送的路由更新),而不是等待下一次的通告周期。

有关IPv6 RIPng的详细解释,请参见RFC 2080。

IPv6 OSPF协议

IPv6 OSPF协议(也称作OSPFv3)是一种链路状态路由协议,由RFC 2740定义。它是用于单个自治系统的路由协议。IPv6 OSPF是RFC 2328为IPv4定义的OSPF路由协议版本2的改进。每个路由器链路的OSPF开销是网络管理员分配的无单位的数字,它可以包含延迟、带宽和财政开支等因素。OSPF网络中的各个网络段间累计开销必须小于65535。OSPF消息作为上层PDU发送,其使用的下一头部值为89。

IPv6 OSPF相对OSPF版本2进行了如下改变。

  • 对OSPF数据包结构进行了修改,使其不再依赖IPv4编址规则。
  • 定义了新的能承载IPv6地址和前缀的LSA。
  • OSPF可以在每个链路上运行,不再是在每个子网上运行。
  • 扩大了LSA泛洪(flooding LSA)的范围。
  • OSPF协议不再提供认证功能,而是依靠认证头部(AH)和封装安全负载(ESP)的头部与尾部。

每个路由器都有一个描述自身当前状态的LSA。通过相邻居路由器(称为邻接点)的逻辑关系,整个OSPF网络中高效地散播了每个IPv6 OSPF路由器的LSA。当所有当前路由器的LSA的泛洪都完成时,OSPF网络就收敛了。

根据OSPF LSA的汇总信息(称为链路状态数据库[LSDB]),OSPF可以计算出到达每个路由的最低开销路径,这些路径就成为IPv6路由表中的OSPF路由。为了减小LSDB,OSPF允许创建区域(area)。一个OSPF区域就是一组邻接的网络段。在所在的OSPF网络中,至少有一个区域称为骨干区域。OSPF区域允许汇总或聚合OSPF区域边界的路由信息。OSPF区域边界的路由器称为区域边界路由器(ABR)。

有关IPv6 OSPF更详细的解释,请参见RFC 2749。

IPv6集成的IS-IS协议

集成IS-IS(也称为双IS)协议是一种十分类似于OSPF的链路状态路由协议,该协议定义在ISO文档10589中。IS-IS支持IPv4和无连接网络协议(CLNP,即OSI协议栈中的网络层)。IS-IS允许两层分级扩展,而OSPF只支持一层(区域)。Internet草案“Routing IPv6 with IS-IS”(使用IS-IS的IPv6路由)对IPv6的集成IS-IS协议进行了描述。

有关IPv6集成IS-IS协议的详细解释,参见ISO 10589和Internet草案“Routing IPv6 with IS-IS”。

BGP-4

边界网关协议版本4(BGP-4)是一种路径矢量路由协议,该协议定义在RFC 4271中。IPv6 RIPng和IPv6 OSPF都是用于单个自治系统之内,而BGP-4与它们不同,它用于在自治系统之间交换信息。BGP-4路由信息会被用来创建一个描述所有自治系统之间的连接的逻辑路径树,然后用路径树的信息在BGP-4路由器的路由表中创建一个无环路的路由。BGP-4消息会使用TCP端口179进行发送。BGP-4是用于维护IPv4互联网路由表的主要域间协议。

根据定义,BGP-4独立于那些用于传播路由信息的地址族。根据RFC 2545和4760的描述,经过扩展的BGP-4已经能够支持IPv6地址前缀。有关IPv6 BGP-4的详细解释,请参见RFC 4271、2545和4760。

相关文章
|
4月前
|
域名解析 存储 网络协议
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
本文详细介绍了IP协议报头结构及其各字段的功能,包括版本、首部长度、服务类型、总长度、标识、片偏移、标志、生存时间(TTL)、协议、首部检验和等内容。此外,还探讨了IP地址的网段划分、特殊IP地址的应用场景,以及路由选择的大致流程。最后,文章简要介绍了DNS协议的作用及其发展历史,解释了域名解析系统的工作原理。
188 5
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
|
3月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
213 3
|
5月前
|
缓存 网络协议 安全
【网络攻防战】DNS协议的致命弱点:如何利用它们发动悄无声息的网络攻击?
【8月更文挑战第26天】DNS(域名系统)是互联网的关键组件,用于将域名转换为IP地址。然而,DNS协议存在安全漏洞,包括缺乏身份验证机制、缓存中毒风险及放大攻击的可能性。通过具体案例,如DNS缓存中毒和DNS放大攻击,攻击者能够误导用户访问恶意站点或对目标服务器实施DDoS攻击。为了防范这些威胁,可以采用DNSSEC实现数字签名验证、利用加密的DNS服务(如DoH或DoT)、限制DNS服务器响应以及及时更新DNS软件等措施。理解并应对DNS的安全挑战对于确保网络环境的安全至关重要。
136 2
|
28天前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
102 1
|
2月前
|
负载均衡 网络协议 定位技术
在数字化时代,利用DNS实现地理位置路由成为提升用户体验的有效策略
在数字化时代,利用DNS实现地理位置路由成为提升用户体验的有效策略。通过解析用户请求的来源IP地址,DNS服务器可判断其地理位置,并返回最近或最合适的服务器IP,从而优化网络路由,减少延迟,提高访问速度。示例代码展示了如何基于IP地址判断地理位置并分配相应服务器IP,实际应用中需结合专业地理数据库和动态调整机制,以应对复杂网络环境带来的挑战。
45 6
|
2月前
|
监控 网络协议 网络性能优化
网络通信的核心选择:TCP与UDP协议深度解析
在网络通信领域,TCP(传输控制协议)和UDP(用户数据报协议)是两种基础且截然不同的传输层协议。它们各自的特点和适用场景对于网络工程师和开发者来说至关重要。本文将深入探讨TCP和UDP的核心区别,并分析它们在实际应用中的选择依据。
80 3
|
1月前
|
传感器
Modbus协议深入解析
Modbus协议是由Modicon公司(现施耐德电气)于1979年发明的串行通信协议,主要用于工业自动化系统中的PLC通信。本文深入解析了Modbus协议的主从模式、数据类型(线圈、离散输入、保持寄存器、输入寄存器)、帧结构和通信过程,并介绍了其应用场景和重要性。
36 0
|
2月前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
143 3
|
2月前
|
负载均衡 网络协议 算法
OSPF与其他IGP协议的比较:全面解析与应用场景
OSPF与其他IGP协议的比较:全面解析与应用场景
66 0
|
3月前
|
存储 JavaScript 前端开发
Vue3权限控制全攻略:路由与组件层面的用户角色与权限管理方法深度解析
Vue3权限控制全攻略:路由与组件层面的用户角色与权限管理方法深度解析
383 2

热门文章

最新文章

推荐镜像

更多