37.1 ISISv6简介
ISIS也是一个基于SPF的路由协议,随着IPv6的发展,ISIS也开始支持IPv6。和EIGRP相同,由于ISIS拥
有TLV字段,而且ISIS对不认识的TLV作忽略处理,故升级支持IPv6非常容易。
ISIS路由协议现通常用在高端的ISP和运营商网络中实施,因为L1/L2架构相对于OSPF的区域灵活很多,
同时,CLNS协议可以对区域进行平滑割接,由于TLV扩展方便,MPLS等众多新特性在ISIS中实施更为便利,是
否支持ISIS,已经成为路由设备提供商是否能够冲击高端领域的一个象征。
37.1.1 ISIS扩展属性
ISIS通过TLV提供了众多的扩展属性:
1. 三方握手
OSPF可以根据对方路由器发送的报文中含有自己的RID确立连接关系建立。ISIS一样,它使用
IS邻居TLV来实现。在LAN链路中,IS-IS路由器通过收到的LAN hello报文中的IS邻居TLV来查看自
己的SysID是否在对方发来的邻居TLV列表中,从而确认双向通讯状态已经确立。但是对于点到点链
路,Hello数据报不携带IS邻居TLV。所以只能建立双向握手,而且要求点到点传输介质是可靠的。
但是现实中,点到点链路通常不可靠,所以ISIS在扩展的时候实现了一种3方握手的机制,来
确保双向连接的可靠性。点到点邻居TLV格式如下:
在这个TLV中,列出了发起它的路由器所知道的所有邻居SysID,并且它也指出了始发路由器
在该链路上可能的邻接关系状态,正常,初始化或失效。
2.扩展度量
在MPLS中,TE是一个非常重要的功能。 在MPLS网络中的数据包的一些子集能够以来用户指定
的约束条件以不同的方式进行转发,也就是说可以不使用IGP那样的总是选择单一最短路径的方式
进行转发,这样可以在同一个网络上对不同的业务流,进行区分传送,例如确保时延敏感的流失用
最短路径,其它数据流使用较长路径等。
ISIS的良好TLV特性,使得它对MPLS的支持非常容易,首先,流连工程的一个关键是需要使用
比度量更为详细的接口参数进行通讯,使用用于共享路径设计的IGP协议和用于共享这些TE接口参
数的借口信息变得有意义,
ISIS通过两种新的TLV来支持
扩展的IS可达性
扩展的IP可达性
报文格式如下:
扩展IS可达性报文如下,当启用新的扩展度量后,扩展的IS可达性TLV使用32位的
度量字段,修复了以前6位字段不能使用在大型网络中的缺点。同时,扩展的IS可达性
TLV替代了LSP中的类型2的IS邻居TLV。而且它还允许TLV的嵌套,这样对于开发人员实
现新的功能十分方便
扩展IP可达性TLV用于代替IP内部可达性信息和IP外部可达性信息TLV,它可以出现
在L1和L2的LSP中,同样它也采用一个32位的Metric。同时也支持子TLV功能,并通过子
TLV实现了流量工程
在IOS中,仅需要使用 metric-style wide来实现扩展度量的支持
37.1.2 ISIS IPv6支持
ISIS通过加入两种新的TLV支持IPv6,它们分别是 IPv6可达性TLV和IPv6借口地址TLV
IPv6可达性TLV如下图,
他用于同时通告内部和外部的前缀信息,同时包含了一个32位的Metric字段支持扩展的
Metric。对于每一个前缀都有一个32位的Metric,同时从L2向L1路由泄露的Up/Down位也被支持。
同时X位支持了内部始发和外部始发的选项。S位表明了子TLV是否存在。
关于路由泄露,在此做一下补充:
起初,L1/L2型结构定义了L2区域默认不向L1区域通告任何前缀,但是如果存在很多的L1/L2
路由器,为了选择到达目的地最近的L1/L2路由器,这就意味着,必须要把前缀从L2区域通告到L1
区域,在ISIS中这种行为被称为路由泄露(Route leaking),
但是这样做会产生路由选择环路,如图所示,192.168.1.0/24网段,因为Rotterdam不识别这
样的路由条目,被再次从L1通告到L2区域中,为了解决这样的问题,在LSP中设置了U/D位,保证这
样的路由泄露行为不产生路由环路。
IPv6接口地址TLV如下:
和132型的IPV4接口地址TLV相似,并且可以同时被Hello数据包和LSP数据包携带。被
Hello包携带时使用链路本地地址,被LSP携带是,那么通告的地址是地区或全球地址。
37.1.3 ISIS多拓扑结构
在实现ISIS支持ipv6的时候,有多种考虑方式,首先,从节约内存方面考虑,可以使ip和ipv6公用
一种拓扑结构,这样的结构被称为单拓扑结构。但是必须要求Ipv4和Ipv6拓扑结构完全相同,也就是说
需要每个接口要同时启用Ipv4/v6。
随着路由器的发展,内存和flash容量逐渐加大,ISIS则实现了一种多拓扑结构(MT)。每一个拓扑
自行运行一个SPF计算进程。对于不同的拓扑,通过MT ID来识别,一个接口可以拥有多个MT ID。用于
MT ISIS的多拓扑ID如下:
ISIS通过4中TLV支持多拓扑结构:
多拓扑中间系统
多拓扑
多拓扑可达IPv4前缀
多拓扑可达IPv6前缀
在多拓扑结构实现的国成中,对于一个点到点链路,可以通过识别对方的MT ID来决定是否建立邻
接关系,但在广播型链路上,即使没有任何共同的MT ID,邻居之间也会形成一个邻接关系,这是因为
DR选举独立于所有的扩展特性。 多拓扑TLV不仅Hello报文可以携带,也可以用LSP携带。
对于多拓扑中间系统TLV,格式如下:
多拓扑可达IPv6前缀TLV格式如下:
37.2 ISISv6配置
37.2.1 ISIS IPv6基本配置
集成ISIS对于IPv4和IPv6协议只需要计算单个SPF来创建单个拓扑,如果在网络中配置了IPv4和
IPv6,那么所有的接口和所有的路由器都必须配置者两种协议。例如,如下拓扑:
首先在全局模式,开启ipv6单播转发
Router(config)#ipv6 unicast-routing
如果需要使用单拓扑的ISIS需要首先在接口上启动ISIS。如Geneva路由器
Hostname Geneva
ipv6 unicast-routing
!
interface FastEthernet0/0
ip address 172.16.4.1 255.255.255.0
ip router isis
ipv6 address 2001:db8:0:4::1/64
ipv6 router isis
!
interface s 0/0.1 point-to-point
ip address 172.16.21.1 255.255.255.0
ip router isis
ipv6 address 2001:db8:0:15::1/64
ipv6 router isis
!
interface FastEthernet0/3
ip address 172.16.3.1 255.255.255.0
ipv6 address 2001:db8:0:3::1/64
ip router isis
ipv6 router isis
!
router isis
net 01.0004.c150.f1c0.00 37.2.2 ISIS IPv6地址汇总
在路由器模式下,通过如下方法,可以对地址进行汇总:
router isis
address-family ipv6
summary-prefix 2001:db8:0:10::/62
察看路由表结果:
Madrid#show ipv6 route
IPv6 Routing Table - 12 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS sum
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
I2 2001:DB8::/62 [115/20]
via FE80::204:C1FF:FE50:F1C0, Serial0/0.3
I2 2001:DB8:0:4::/64 [115/20]
via FE80::2B0:64FF:FE30:1DE0, Serial0/0.1
via FE80::204:C1FF:FE50:F1C0, Serial0/0.3
C 2001:DB8:0:8::/64 [0/0]
via ::, Serial0/0.1
L 2001:DB8:0:8::1/128 [0/0]
via ::, Serial0/0.1
C 2001:DB8:0:9::/64 [0/0]
via ::, Serial0/0.2
L 2001:DB8:0:9::1/128 [0/0]
via ::, Serial0/0.2
C 2001:DB8:0:15::/64 [0/0]
via ::, Serial0/0.3
L 2001:DB8:0:15::2/128 [0/0]
via ::, Serial0/0.3
I2 2001:DB8:0:10::/62 [115/20]
via FE80::205:5EFF:FE6B:50A0, Serial0/0.2
L FE80::/10 [0/0]
via ::, Null0
L FF00::/8 [0/0]
via ::, Null0
Madrid#
37.2.3 ISIS 宽度量使用
ISIS通过扩展属性支持新的宽Metric模式,通过Metric-style可以修改,修改前
Zurich#show clns protocol
IS-IS Router: <Null Tag>
System Id: 0000.0C76.5B7C.00 IS-Type: level-1-2
Manual area address(es):
01
Routing for area address(es):
01
Interfaces supported by IS-IS:
Serial0/0.1 - IP - IPv6
Ethernet0/0 - IP - IPv6
Redistribute:
static (on by default)
Distance for L2 CLNS routes: 110
RRR level: none
Generate narrow metrics: level-1-2
Accept narrow metrics: level-1-2
Generate wide metrics: none
Accept wide metrics: none
Metric-style 支持3种参数 wide, Transition, wide transation.但有区别,wide模式仅
发送和接收宽模式。Translation可以同时发送和接收宽模式和窄模式。而wide Translation 能
时生成和接收宽模式和窄模式。
router isis
metric-style transition
address-family ipv6
summary-prefix 2001:db8::/62
Zurich#show clns protocol
IS-IS Router: <Null Tag>
System Id: 0000.0C76.5B7C.00 IS-Type: level-1-2
Manual area address(es):
01
Routing for area address(es):
01
Interfaces supported by IS-IS:
Serial0/0.1 - IP - IPv6
Ethernet0/0 - IP - IPv6
Redistribute:
static (on by default)
Distance for L2 CLNS routes: 110
RRR level: none
Generate narrow metrics: level-1-2
Accept narrow metrics: level-1-2
Generate wide metrics: level-1-2
Accept wide metrics: level-1-2
Zurich#
37.2.4 ISISv6 多拓扑模式
ISISv6可以支持多拓扑模式,这样就可以让IPv4和IPv6流量使用不同的拓扑结构。在内存
资源相对宽松的情况下,建议使用多拓扑模式,并且Cisco在IOS软件中提供了过渡模式,可以平
滑的从单拓扑模式过渡到多拓扑模式。多拓扑配置如下
router isis
metric-style wide transition
address-family ipv6
multi-topology transition
配置后
Bonn#show clns is-neighbors detail
System Id Interface State Type Priority Circuit Id Format
Madrid Se0/0.1 Up L2 0 00 Phase V
Area Address(es): 03
IP Address(es): 172.16.9.1*
IPv6 Address(es): FE80::204:C1FF:FE50:E700
Uptime: 00:23:14
NSF capable
Frankfurt Fa0/0 Up L1 64 Bonn.01 Phase
Area Address(es): 03
IP Address(es): 172.16.19.2*
Uptime: 00:23:17
Bonn#
37.2.5 ISIS修改Metric
在接口上可以通过如下命令修改Metric
interface Ethernet 0/0/1
isis ipv6 metric 20
37.2.6 ISIS等价负载均衡
Router(config-router-af)# maximum-paths 3
37.2.7 ISIS安全和认证
ISIS可以在接口上配置密码,配置方法如下:
Router(config-if)#isis password kaka
ISIS可以在接口上配置认证,配置方法如下:
key chain fairy
key 1
key-string dust
!
Interface Ethernet 1
isis authentication mode text
isis authentication key-chain fairy level-2
ISIS认证:
router isis
net 01.0004.c150.f1c0.00
authentication mode md5
authentication key-chain forest
37.2.8 ISISv6 默认路由
Router(config-router-af)# default-information originate
37.2.9 ISISv6 L1/L2重分布
Router(config-router-af)# redistribute isis level-1 into level-2