华为HCIE课堂笔记第十四章 IPv6路由

第十四章 IPV6路由

14.1 前言

IPV6路由的配置可以是静态路由配置,动态路由配置。OSPFv3、ISIS、BGP路由协议

14.2 OSPFv3

14.2.1 概念

  1. Router ID:32bit的点分十进制表示,用于标识OSPF域内唯一的设备。如果Router ID没有配置,则OSPFv3进程不会运行。
  2. OPSFv3基于链路运行和拓扑计算:
    1. 不要求两端的IP地址在同一个网段,邻居建立通过Hello报文,源地址为链路本地地址。
    2. 要求两端的设备在同一个链路上。

14.2.2 多实例

  1. 同一个物理接口可以属于不相同的OSPFv3进程的不同实例,使得OSPFv3计算拓扑的时后,可以根据实例进行,可以通过该方式使得链路资源可以得到共享,节约带宽资源。

14.2.3 链路本地地址的使用

  1. OPSFV3的报文源IPv6地址使用的是链路地址进行通信,作为路由的下一跳地址。
  2. 通过链路本地地址实现LSA的同步。
  3. OSPFv3的目的地址FF02::5(代表所有OSPFv3路由器)、FF02::6(代表DR和BDR)

14.3 OSPFv3报文变化

  1. OSPFV3中版本字段取值为3
  2. 取消了认证和认证数据字段:通过IPv6的认证和安全机制实现对OSPFv3报文的保护。也可以通过自身的机制完成报文的认证。
  3. 增加了实例ID字段:同一个链路不同接口,可以属于不同的OSPFv3的实例,相同的实例之间可以建立邻居关系,收到不同实例的报文丢弃。

14.3.1 Hello报文

两个变化:

  1. 取消了掩码字段
  2. 新增了接口ID字段:通过本地接口ID和邻居的接口ID以及两者Router ID来描述拓扑信息,实现与拓扑计算与IP地址分离。
  3. Option字段:扩展到了3Byte,其中新增了一些bit位:
    1. AT:表示是否支持OSPFv3认证。
    2. R:指明始发路由器是否具备转发能力。
    3. V6:表示是否参与IPv6路由计算。

14.4 OSPFv3 LSA内容

14.4.1 LSA的头部变化

  1. 取消了Option字段:在LSA的Data内按照需求进行携带。
  2. 扩展了LS Type字段:扩展到2Byte,新增了一些功能bit位在其中
    1. Ubit位:表示设备对未知LSA的处理方式
      1. Ubit位置位0,把此LSA当作具有链路本地泛洪范围来对待,从而只能泛洪到本地链路上。
      2. Ubit位置位1,表示设备按照已知LSA的处理方式进行处理(按照S2/S1bit位规定区域进行泛洪)
        1. S2/S1 取值为00,表示该LSA的泛洪区域是始发链路范围
        2. S2/S1 取值为01,表示该LSA的泛洪范围是区域内泛洪
        3. S2/S1 取值为11,表示该LSA的泛洪范围是AS内泛洪
    2. LSA的Function code:表示LSA的类型
  3. LS ID:在OSPFV3中不在包含IP地址信息,只是32位无符号整数。与LS Type、Advertise Router 一起唯一标识一个LSA。

14.4.2 Router LSA(1类)

OSPV3中,Router LSA不在携带IP地址信息,所有设备会产生一条1类LSA,LSA的主要字段:

Bit位:W支持组播;V产生该LSA的路由器是Vlink端点;E产生该LSA的路由器是一个ASBR;B产生该LSA的路由器是一个ABR

Option字段:与Hello报文头部中Option字段相同。

Link type字段:移除了Stubnet类型的link 类型,剩余 P2P、Transnet、Vlink类型。

接口ID字段:相比于OSPFv2,用于替换IP地址相关信息,P2P link类型和Transnet的link类型中的IP地址被修改为接口ID

邻居的接口ID:连接邻居的链路中邻居的接口ID

邻居的Router ID:邻居Router ID

开销值:接口的OSPF开销。

14.4.3 Network LSA(2类)

  1. 删除了掩码字段,仅通过Router ID标识该链路中连接的邻居状态
  2. 格式:
    1. Option字段:与1类LSA相同
    2. 连接的邻居字段:邻居的Router ID
  1. 作用:仅在本链路泛洪
    1. 向该链路上其他路由器通告本接口的链路本地地址。
    2. 向该链路上其他路由器通告本接口的IPv6前缀列表。
    3. 向该链路上其他路由器通告本链路始发的Network-LSA中设置的可选项。
  2. 字段:
    1. 路由器优先级:和Hello报文中相同
    2. Option字段:与2类LSA中的相同
    3. 链路本地地址:通告本链路的链路本地地址,仅该LSA中携带。
    4. 前缀三元组:Length、前缀Option、前缀(与3类LSA中的相同)
    5. 前缀Option字段:
      1. P位:传播位,置1,该前缀需要进行7转5
      2. MC位:置位1,该前缀是一个组播路由前缀
      3. LA位:本地地址位,置1,则该前缀是路由的一个接口地址
      4. NU位:非单播为,置1,表示该前缀不是一个IPv6单播前缀,不进行IPv6路由计算。

14.4.5 Intra-area-prefix LSA(9类)

作用:

  1. 用于描述区域内的路由信息,与OSPFV2相比,1类和2类LSA中的路由信息都通过9类进行描述,因此9类LSA需要使用参考的LSA的三元组
  2. 重点:
  1. 参考的LS type:参考的LSA的类型
  2. 参考的LS ID:参考的LSA的LS ID
  3. 参考的 通告者Router ID:参考的的LSA的产生者的Router ID
  1. 两个类型:
    1. 依附于1类LSA,用于描述OSPFV2的1类LSA中需要描述的路由信息
    2. 依附于2类LSA,用于描述OSPFV2的2类LSA中需要描述的网段的路由信息。
    3. 一条9类LSA可以携带多条路由信息,但是如果依附的LSA不同,则不同的路由信息需要使用不同的9类携带。

14.4.5 Inter-area-prefix(3类)

由ABR产生,区域内泛洪,用于区域间路由计算

相比OSPFV2的变化:

  1. LSA Data中删除了掩码,OSPFv2通过LSA的头部中的LSID表示域间网络前缀的,与LSA中的掩码组成路由条目
  2. OSPFV3中LSA的头部中的LSID都是无符号的32帧数,同时删除了掩码,因此不携带路由信息。
  3. 统一通过LSA Data中前缀三元组来表示域间的网络前缀(前缀长度、前缀Option、前缀)

14.4.5 AS-External LSA

作用:用于描述外部路由,泛洪范围是AS内(LS类型 U+S2+S1+LSA的类型)

主要字段:

Bit位:E表示外部路由的类型,取值0表示1类外部路由,取值1表示2类外部路由。1类由于2类(无论cost值如何);F置1表示该外部LSA携带Forwarding address 地址;T置1表示该外部LSA携带External Route Tag(外部路由标记),置0,则不携带该字段。

开销值:外部路由的开销

前缀三元组:前缀长度、前缀Option、前缀长度

参考的LS type:表示该路由参考的LSA的类型

  1. 值为0,不参考LSA
  2. 值为1,参考一类LSA
  3. 值为2,参考2类LSA

转发地址:该字段是可选字段,需要Fbit置1才会携带

External Route Tag字段:该字段是可选字段,需要Tbit置1才会携带。

参考的LS ID:表示该LSA参考其他的LSA的LS ID

14.4.6 Inter area Router LSA(4类LSA)

作用:用于在其他区域描述ASBR所在的位置(描述ASBR的Router ID)

与OSPFv2相比的变化:

  1. 删除了掩码字段
  2. LSID不在描述ASBR的Router ID,另添加Destination Router ID(目的Router ID字段)字段用于描述ASBR的Router ID。
  3. 携带开销(没有变化):描述从ABR到达ASBR的开销。
  4. LSA的Option字段

14.5 ISIS For IPv6

14.5.1 ISIS IPv4中使用的TLV

Hello报文中:窄度量

  1. IP interface address(IP接口地址TLV,132号),携带了本链路上的接口的IP地址
  2. Protocol supported(协议支持TLV,129号):包含了NLPID,支持IPV4的NLPID
  3. Multi topology(多拓扑TLV,229号):其中值包含了支持的地址簇,支持IPV4单播

LSP报文中:窄度量

  1. Protocol supported(协议支持TLV,129号)支持IPV4的NLPID
  2. IS Reachablity(ISIS 可达信息,描述拓扑信息,编号为2):其中包含邻居的System ID
  3. IP interface address(IP接口地址TLV,132号),与Hello报文不同的地方是携带了设备所有的接口IP地址。
  4. IP internal Reachablity(IP 域内可达信息,编号128号),用于描述域内的路由信息。不支持路由标记
  5. IP External Reachability(IP 域外可达信息,编号130号),用于描述域外的路由信息。不支持路由标记

Hello报文中:宽度量值

  1. Extended IS Reachablity(扩展的ISIS 可达信息,编号22):其中包含邻居的System ID和可以携带子TLV
  2. Extended IP Reachability(扩展的IP可达信息,编号135):用于描述域内和域外的路由信息,可以携带子TLV。可以支持路由标记。

LSP报文中:宽度量

  1. Extended IS Reachablity(扩展的ISIS 可达信息,编号22):其中包含邻居的System ID和可以携带子TLV
  2. Extended IP Reachability(扩展的IP可达信息,编号135):用于描述域内和域外的路由信息,可以携带子TLV。可以支持路由标记。

14.5.2 ISIS For IPv6

Hello报文中:

  1. IPV6 interface address(IPv6接口地址TLV,编号232),用于传递本地的接口IPv6地址,在Hello报文中仅传递本链路的接口链路本地地址。
  2. Protocol supported(协议支持TLV,129号),新增支持IPv6的NLPID

LSP报文中:

  1. IPV6 interface address(IPv6接口地址TLV,编号232),用于传递本地的接口IPv6地址,在LSP报文中传递的本节点的所有IPv6单播地址(非链路本地地址)。
  2. IPv6 Reachability (IPv6可达信息TLV,编号236号),用于传递本端IPV6的前缀信息。

总结:新增232号TLV支持发布地址、新增236号TLV支持发布IPv6路由条目、在129号TLV中新增 NLPID支持IPv6

14.5.3 多拓扑技术

Ipv4计算一个拓扑,ipv6计算一个拓扑,分开计算,互不干扰。

新增TLV支持多拓扑:

  1. 多拓扑TLV(229号,描述支持的拓扑类型ipv4和ipv6)
  2. 多拓扑中间系统TLV(222号,描述ipv6拓扑邻居信息)、
  3. 多拓扑可达的IPv4前缀TLV()
  4. 多拓扑可达的IPv6前缀TLV(237号TLV,描述路由信息)

参考命令:

ipv6 enable topology ipv6 //IPv4与IPv6拓扑分离计算,形成多拓扑(MT)

ipv6 enable topology standard //IPv6的路由计算使用IPv4的拓扑(单拓扑 ST)

14.6 BGP4+

BGP通过MP-BGP支持IPV6路由传递,这种特性叫做BGP4+,新增两个路径属性:

  1. MP-Reach-NLRI:用于IPv6路由的通告和路由下一跳的通告
    1. AFI:地址簇取值为2,表示IPv6地址簇;
    2. SAFI:子地址簇取值为1,表示IPV6单播地址簇,为2表示IPv6组播地址簇。
    3. 长度字段:取值16B,则下一跳地址为全球单播地址,如果取值32B,则下一跳地址是全球单播地址+链路本地地址。
    4. 下一跳地址:同(c)
    5. Ipv6前缀信息和掩码(路由条目)
  2. MP-UnReach-NLRI:用于撤销IPv6路由通告
    1. 携带AFI和SAFI和MP-Reach-NLRI中取值相同
    2. Withdraw字段:携带需要撤销的路由前缀和掩码
  3. Open报文需要进行IPv6地址簇协商
    1. 其中AFI和SAFI与NLRI中的取值相同。
相关推荐
LinXunFeng1 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
大树885 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠5 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
程序猿追5 天前
那个右下角的小数字怎么“卡”住我打字——我用 HarmonyOS 自己写了一个字数限制输入框
pytorch·华为·harmonyos
古德new5 天前
鸿蒙PC使用electron迁移:Joplin Electron 桌面适配全记录
华为·electron·harmonyos
世人万千丶6 天前
桌面便签小应用 - HarmonyOS ArkUI 开发实战-TextArea与Flex布局-PC版本
华为·harmonyos·鸿蒙·鸿蒙系统
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
慧海灵舟6 天前
AGenUI 鸿蒙端实战踩坑录:从 Column 布局消失到异步组件宽度为 0
华为·harmonyos