分享

【干货】IS-IS (IPv6)原理与配置

 网络工程师老杨 2021-08-05

IS-IS (IPv6)概述

  • IS-IS最初是为OSI网络设计的一种基于链路状态协议的动态路由协议。之后为了提供对IPv4的路由支持,扩展应用到IPv4网络,称为集成IS-IS。 

  • IS-IS报文有以下几种类型:Hello PDU(Protocol Data Unit)、LSP和SNP。

报文格式为:

IS-IS报文中的变长字段部分是多个TLV(Type-Length-Value)三元组,使用TLV结构构建报文使IS-IS更具灵活性和扩展性,增加新特性只需要增加新TLV即可。 

  • 为了支持IPv6路由的处理和计算,IS-IS新增了两个TLV(Type-Length-Value)和一个NLPID(Network Layer Protocol Identifier,网络层协议标识符)。

新增TLV

在不同的PDU中,接口地址字段的内容是不同的。

  • 对于Hello报文,“接口地址”只能包含发送Hello报文接口的链路本地地址。

  • 对于LSP报文,“接口地址”只能包含分配给设备接口的非链路本地地址。

上述IPv6 Reachability TLV在LSP中可以出现任意次数(包括0次)。其中,链路本地前缀不是用这个TLV来发布。

  • 232号TLV(IPv6 Interface Address)字段解释:

    Type:8bit,TLV类型,此时值为232(0xE8)。Length:8bit,TLV的Value部分长度。

    Interface Address:128bit,IPv6地址。

  • 236号TLV(IPv6 Reachability)字段解释:

    Type:8bit,TLV类型,此时值为236(0xEC)。Length:8bit,TLV的Value部分长度。

    Metric:32bit,度量值。

    U:1bit,Up/Down位,标识这个前缀是否是从高Level通告下来的。

    X:1bit,External Original位,标识这个前缀是否是从其他路由协议中引入的。

    S:1bit,Sub-TLV Present位,子TLV标识位(可选)。

    R:5bit,Reserve位,保留位。

    Prefix Length:8bit,前缀长度。▫Prefix:IPv6地址前缀。

    Sub-TLV Length:8bit,子TLV长度。若S位置1,则存在。

    Sub-TLV:子TLV。若S位置1,则存在。

129号TLV中新增NLPID

  • 为了支持IPv6路由的处理和计算,IS-IS在129号TLV中新增了一个NLPID。 

  • 129号TLV(Protocol Supported)

  • 字段解释:

    Type:8bit,TLV类型,此时值为129(0x81),表示支持协议TLV。 

    Length:8bit,TLV的Value部分长度。 

    NLPID:8bit,网络层协议标识符。若支持IPv4,则值为204(0xCC);若支持IPv6,则值为142(0x8E)

  • 如果IS-IS支持IPv6,那么向外发布IPv6路由时必须携带NLPID值。

IS-IS多拓扑技术背景

缺省情况下,在运行IS-IS的网络环境中,IPv4和IPv6的混合拓扑被看成是一个集成的拓扑,IS-IS针对IPv4和IPv6经计算形成相同的最短路径树。

  • IS-IS单拓扑存在的问题:

  • 混合拓扑中的一些路由器和链路不支持IPv6协议,但是支持双协议栈的路由器无法感知到这些路由器和链路,仍然会把IPv6报文转发给它们,这就导致IPv6报文因无法转发而被丢弃。

  • 同样,存在不支持IPv4的路由器和链路时,IPv4报文也无法转发。

  • IS-IS单拓扑的不足之处:

    网络部署不适合拓扑分离。

    为维护相同的拓扑,所有接口都必须同时运行IS-IS(IPv4)和IS-IS(IPv6),部署不够灵活。

    不能使用IPv4区域来连接不同的IPv6区域,即无法通过IPv4网络解决IPv6孤岛问题。

IS-IS多拓扑概述

  • IS-IS多拓扑(Multi-Topology,MT)特性是指在一个IS-IS自治域内运行多个独立的IP拓扑。例如IPv4拓扑和IPv6拓扑,而不是将它们视为一个集成的单一拓扑。这有利于IS-IS在路由计算中根据实际组网情况来单独考虑IPv4和IPv6网络。根据链路所支持的IP协议类型,不同拓扑运行各自的SPF计算,实现网络的相互屏蔽。

  • IS-IS多拓扑的实现过程

    建立拓扑:通过报文交互建立邻居,从而建立多拓扑。SPF计算:在不同的拓扑上分别进行SPF计算。

  • IS-IS的多拓扑特性可以解决单拓扑的不足之处。

IS-IS多拓扑原理

  1. IS-IS定义了新的TLV,该TLV中包含接口所属拓扑信息(MT信息)。MT信息的传播,使得网络按不同的拓扑分别进行SPF计算,最终实现拓扑分离。

  2. 229号多拓扑TLV:

  • 重要字段解释:

    Type:8bit,TLV类型,此时值为229(0xE5),表示支持多拓扑。

    O:1bit,Overload,超载位。

    A:1bit,Attach,附着位。

    MT ID:12bit,表示该接口属于什么拓扑。

  • IS-IS为了支持多拓扑特性,定义了多种TLV,包括:多拓扑TLV、多拓扑中间系统TLV、多拓扑可达的IPv4前缀TLV和多拓扑可达的IPv6前缀TLV。其中本课程将对多拓扑TLV进行讲解,其他内容不详细展开。 

  • 多拓扑TLV:

    多拓扑TLV仅包含在IIH报文和LSP的0分片报文中。

    预留的MT ID字段:

    ▪MT ID=0,用于标准IPv4拓扑

    ▪MT ID=2,预留给IPv6拓扑。

IS-IS (IPv6)的基础配置命令

 1.使能IS-IS(IPv6)功能

[Huawei-isis-1] ipv6 enable [ topology { ipv6 | standard } ]

[Huawei-isis-1] ipv6 enable [ topology { ipv6 | standard } ]

在IS-IS进程下,使能该进程的IPv6能力。

[Huawei-GigabitEthernet0/0/1] isis ipv6 enable [ process-id ]

在接口上使能IS-IS的IPv6功能并指定要关联的IS-IS进程号。

注意:配置此命令前,必须先使能接口的IPv6功能

2.配置IS-IS接口在IPv6网络中的开销

[Huawei-GigabitEthernet0/0/1] isis ipv6 cost { cost | maximum } [ level-1 | level-2 ]

缺省情况下,IPv6拓扑中IS-IS接口的链路开销值为10。

  1. IS-IS(IPv6)的基础配置命令与配置方式与IS-IS(IPv4)一致,其他配置命令不再赘述,详细内容请参考《HCIP-Datacom-Core Technology》课程。 

  2. [Huawei-isis-1] ipv6 enable [ topology { ipv6 | standard } ]

    topology:用于指定网络的拓扑类型。

    ▫ipv6:指定拓扑类型为IPv6拓扑,即在IPv6拓扑上使能IS-IS进程的IPv6。网络中的链路可以配置成IPv4或IPv6,但SPF计算在各自的拓扑中单独进行。▫standard:指定拓扑类型为标准模式,即在集成拓扑上使能IS-IS进程的IPv6。网络管理员必须保证网络中所有的链路支持一致的拓扑模式。缺省情况下,使能IPv6选择standard参数。 

  3. [ Huawei-GigabitEthernet0/0/1] isis ipv6 cost { cost | maximum } [ level-1 | level-2 ] ▫cost:指定IPv6接口的链路开销值。整数形式,取值范围根据开销类型而定。

    ▪当开销类型为narrow、narrow-compatible或compatible时,取值范围是1~63。

    ▪当开销类型为wide或wide-compatible时,取值范围是1~16777214。

    ▪缺省值为10。

    ▫maximum:指定接口的链路开销值为16777215。▫level-1:指定配置level-1链路的开销值。如果不指定配置链路开销的接口级别,则同时为Level-1和Level-2级别的接口设置链路开销。

    ▫level-2:指定配置level-2链路的开销值。如果不指定配置链路开销的接口级别,则同时为Level-1和Level-2级别的接口设置链路开销。

检查IS-IS (IPv6)基本功能的配置结果

IS-IS双栈配置举例

场景描述:

某公司通过部署IS-IS实现IPv4网络的互联互通。该公司为了保证未来的业务发展,同时部署了IPv6网络进行业务测试,因此需要在该网络的IS-IS中使能IPv6功能。

由于设备性能不同,要求通过修改开销值,让IPv4和IPv6业务优选不同的路径,且IPv6网络单独计算拓扑。

所有路由器运行IS-IS协议,整个网络都处于区域49.0001中,且所有路由器均为Level-2路由器。配置完成后,每台路由器都应学到AS内的所有网段的IPv4路由和IPv6路由。

部署IPv4网络

1、配置各路由器接口的IPv4地址。(略)

2、配置IS-IS基本功能。

R2、R3和R4的配置与R1类似,不再赘述。

其中,它们的网络实体名分别为:

   R2:49.0001.0000.0000.0002.00

   R3:49.0001.0000.0000.0003.00

部署IPv6网络

1、配置各路由器接口的IPv6地址。(略)

2、使能IS-IS(IPv6)功能。

查看IS-IS (IPv4)网络路由信息

以R1为根计算最短路径树为例,可以发现IS-IS(IPv4)的逻辑拓扑如右下图所示。

查看IS-IS (IPv6)网络路由信息

以R1为根计算最短路径树为例,可以发现IS-IS(IPv6)的逻辑拓扑如右下图所示。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多