Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
LISP协议
LISP协议,即Locator/ID Separation Protocol,位置身份分离协议。它将传统的地址分拆为表明位置的RLOCs(RoutIng Locators,路由标识符)和表明身份的EIDs(Endpoint identifiers,节点标识符),也就是位置和身份分离机制。
传统园区网的拓扑基于地址和路由,地址就是拓扑或者位置,它基于vlan和子网,或者说一个地址既代表了一个设备的位置,又代表了该设备的身份。如图12-1所示,位于园区网站点1的10.1.0.1基于vlan,即子网表明了位置和身份,20.1.0.5也如此。

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-1 传统网络中IP地址集身份和位置于一体
我们再来认识一下图12-2中实施完毕LISP协议之后的拓扑图,读者可以看到在站点1和站点2中同时可能同时存在10.1.0.1的设备,但是它们却具有不同的RLOC,这说明其身份没有变化,但是却有很好的移动,这完全符合现代虚拟化的需求。好吧,读者还不知道什么是RLOC,没关系,后边我们一一作出解释,但读者对比12-1至少会发现站点1用1.1.1.1标识,没错1.1.1.1就代表RLOC。正如前文描述,LISP分离标识符和身份符,在图12-2中,左边站点1.1.1.1代表了位置符,而10.1.0.1代表了身份符,读者觉得右边哪些代表身份符,哪些代表位置符呢?

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-2 LISP协议中身份和位置分离-设备10.1.0.1可以方便的移动

12.1 什么是LISP协议

在LISP网络中,不同于传统网络架构,它的路由基于RLOC,地址主机基于EID,映射EID到RLOC。表12-1解释了LISP协议中一系列的名称和术语
简写 名称 简要作用
ITR Ingress Tunnel Router,入向隧道路由器 从面向站点接口收到报文
ETR Egress Tunnel Router,出向隧道路由器 从面向核心的接口收到报文@H_811_4@mR map resolver 映射解析器 从ITR出收到映射请求@H_811_4@mS map server 映射服务器 LISP站点的ETR在MS注册它们的EID前缀
EID endpoint id 终点身份符 通信终端,现今网络的主机
RLOC RoutIng Locator路由位置符 LISP路由器的地址
表12-1 LISP术语解释
对于LISP的这些术语,读者可以参看图12-3,LISP站点内的设备即EID需要和其他站点EID通信,会把数据包发送到xTR设备(流量是双向的,所以该设备是ITR或者ETR),在ITR或者ETR设备上进行LISP的封装或者解封装,没错,是封装,就是我们认识的传统的基于UDP的封装,EID的IP被封装到了内层,而RLOC的地址被封装到了外层,所以只要RLOC地址的可以通过路由查找找到其他EID的RLOC即可,但问题在于我们的最终目的地是其他的EID,而不是RLOC,所以此时还有一个重要的设备,即MS/MR,映射服务器/映射解析器,很多时候它们两个角色处于同1个设备,它的作用就如图中右上角绿色和红色地址的映射。在图12-3中还存在非LISP站点,当然LISP站点照样可以和他们进行通信,在该场景下存在PxTR,即代理xTR设备。

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-3 LISP整体示意图
我们来了解一下LISP系统中的映射系统,该功能非常类似于DNS(域名解析)系统,DNS为URL解析ip地址,它解决了“谁是”的问题,入图12-4中DNS服务器解析了lisp.cisco.com的地址是153.16.5.29.
LISP把身份标识符解析为位置,即回答了在哪里的问题,如图12-4所示,LISP路由器请求153.16.5.29在哪里,LISP映射系统解析:地址符位于128.107.81.169。

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-4 LISP映射系统和DNS系统的类似功能
映射系统是LISP协议的控制设备。整个LISP的映射系统(MS)分为映射服务器(MS)和映射解析器(MR)。
映射解析器MR:从ITR出收到映射请求,转发映射请求到映射系统MS;对非LISP站点的请求不发送映射回应。
映射服务器MS:LISP站点的ETR在MS注册它们的EID前缀,请求配置LISP站点策略和认证;通过映射系统收到映射请求,会把它转发到已经注册的ETR。图12-5为MR/MS的示意图,注意此时数据流量的方向为192.168.1.0/24到192.168.2.0/24

图12-5 映射系统示意图
LISP协议的数据转发设备为ITR和ETR,ITR,从面向站点接口收到报文,会把这些报文封装转发到远程的LISP站点或者发送原始报文转发到非LISP站点。ETR,从面向核心的接口收到报文,解封装发送到位于LISP站点EID。如图12-6所示,从LISP站点1的EID 192.168.1.0/24网络到LISP站点2的192.168.2.0/24网络的数据到达xTR-1,xTR-1封装数据包,外层IP报文的目标地址为远端ETR即,xTR-3;数据到达xTR-3之后,会解封装,此时内层报文的目标地址为原始的192.68.2.0/24网络,故而会到达最终的EID

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-6 LISP中的报文转发
在刚才的描述中,我们提到了LISP的封装,那么我们来看一下LISP的封装报文,在RPF6830中,定义了LISP的报头格式,如图12-7所示,外层报头的源目地址为RLOC的地址,而内层地址为EID的地址。中间部分为UDP头部和LISP的头部。

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-7 LISP报文结构
LISP不仅仅支持IPv4还可以支持多种封装的报文转发,诸如IPv4上的IPv4,IPv4上的IPv6,IPv6上的IPv6,以及IPv6上的IPv4等。图12-8描述了IPv6 over IPv4的转发过程,读者可以看到原始的报文为IPv6地址,在到达RLOC 1.1.1.1之后被LISP封装了头部以及外层IPv4的RLOC地址1.1.1.1到2.1.1.1,该报文到达2.1.1.1.之后解封装为IPv6报文转发到最终的EID 2001:10:2:0::1.

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-8 IPv6 over IPv4的LISP转发过程
一个EID可能对应多个RLOCs。每一条EID与不同RLOCs的对应关系都带有优先级(Priority)和权重(Weight)两个属性。优先级表明ITR应该优先使用哪个RLOCs,权重说明了怎样在多个目的EID相同的RLOCs之间分配流量。如果一个EID对应每个RLOCs的优先级和权重值都一样,那么流量将在通往所有RLOCs的链路上被均匀分配。

12.2 LISP实现

乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议


图12-9 LISP协议实现拓扑
我们在图12-9实现LISP协议,其中EID设备为10.1.0.1和10.2.0.1,R3和R6为xTR,R4为映射系统。

12.2.1 完成路由层面的基础工作

xTR设备之间以及同MS之间需要通信,那么路由是必须的,我们在本例中采用Eigrp协议,EID同其他站点EID通信,那么可以通过认路由指向xTR设备即可

R3、R4和R6的基础路由配置:
R3-SITE1(config)#router eigrp 90
R3-SITE1(config-router)# network 33.0.0.0
R3-SITE1(config-router)# network 34.1.1.3 0.0.0.0
!
R4-MS(config)#router eigrp 90
R4-MS(config-router)# network 0.0.0.0
!
R6-SITE2(config)#router eigrp 90
R6-SITE2(config-router)# network 46.1.1.6 0.0.0.0
R6-SITE2(config-router)# network 66.1.1.1 0.0.0.0
R6-SITE2(config-router)#
验证基础的Eigrp邻居和通过Eigrp得到的路由
R4-MS#show ip eigrp neighbors 
EIGRP-IPv4 Neighbors for AS(90)
H   Address                 Interface              Hold Uptime   SRTT   RTO  Q  Seq
                                                   (seC)         (ms)       Cnt Num
1   46.1.1.6                Et0/3                    14 00:18:07   10   100  0  4
0   34.1.1.3                Et1/1                    11 00:18:07    5   100  0  4
R6-SITE2#show ip route eigrp 
Codes: L - local,C - connected,S - static,R - RIP,M - mobile,B - BGP
       D - EIGRP,EX - EIGRP external,O - OSPF,IA - OSPF inter area 
       N1 - OSPF NSSA external type 1,N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1,E2 - OSPF external type 2
       i - IS-IS,su - IS-IS sumMary,L1 - IS-IS level-1,L2 - IS-IS level-2
       ia - IS-IS inter area,* - candidate default,U - per-user static route
       o - ODR,P - perioDic downloaded static route,H - NHRP,l - LISP
       a - application route
       + - Replicated route,% - next hop override

Gateway of last resort is not set

      33.0.0.0/32 is subnetted,1 subnets
D        33.1.1.1 [90/435200] via 46.1.1.4,00:17:38,Ethernet0/2
      34.0.0.0/24 is subnetted,1 subnets
D        34.1.1.0 [90/307200] via 46.1.1.4,00:17:41,Ethernet0/2
      44.0.0.0/32 is subnetted,1 subnets
D        44.1.1.1 [90/409600] via 46.1.1.4,Ethernet0/2
R6-SITE2#ping 34.1.1.3 //验证数据报文的发送,RLOC之间可以通信
Type escape sequence to abort.
Sending 5,100-byte ICMP Echos to 34.1.1.3,timeout is 2 seconds:
!!!!!
success rate is 100 percent (5/5),round-trip min/avg/max = 4/4/5 ms
R6-SITE2#ping 44.1.1.1 //验证数据报文的发送,RLOC可以和MS通信
Type escape sequence to abort.
Sending 5,100-byte ICMP Echos to 44.1.1.1,round-trip min/avg/max = 1/1/1 ms
接下来我们需要完成EID的路由实施
RP/0/0/cpu0:XR1-EID#sh run router static 
Wed Nov 23 12:54:56.583 UTC
router static
 address-family ipv4 unicast
  0.0.0.0/0 10.1.0.254
 !
R5:
R5-EID(config)#ip route 0.0.0.0 0.0.0.0 10.2.0.254
R5-EID(config)#

读者配置完毕,EID之间并不能通信,因为此时xTR上并没有路由到达EID。只有在完成LISP之后才可以通信
12.2.2 实施LISP协议
我们的配置对象主要涉及R3、R4和R6,各个设备的角色已经在图12-9中表明。

R3-SITE1(config)#router lisp //启动LISP协议
R3-SITE1(config-router-lisp)# EID-table default instance-id 0 //设置EID认的实例ID为0,在没有实施VRF的情况下,实施0即可
R3-SITE1(config-router-lisp-EID-tablE)# database-mapping 10.1.0.0/24 34.1.1.3 priority 1 weight 100 //设置EID和RLOC的映射关系,优先级值越小则该RLOC的优先级越高,该值的范围是0到255,该值为255时表明不能单播转发,如果存在多个RLOC,且优先级相同则负载均衡。权重值取值范围为0到100,该值代表了RLOC如何实现单播报文的负载比例。    
R3-SITE1(config-router-lisp-EID-tablE)#  exit
R3-SITE1(config-router-lisp)# !
R3-SITE1(config-router-lisp)# ipv4 itr map-resolver 44.1.1.1 //配置ITR的映射解析器为44.1.1.1
R3-SITE1(config-router-lisp)# ipv4 itr //本设备为ITR设备
R3-SITE1(config-router-lisp)# ipv4 etr map-server 44.1.1.1 key ender //配置ETR的映射服务器为44.1.1.1,认证密码为ender
R3-SITE1(config-router-lisp)# ipv4 etr //本设备为ETR设备
R3-SITE1(config-router-lisp)#
!
R6-SITE2(config)#router lisp
R6-SITE2(config-router-lisp)# EID-table default instance-id 0
R6-SITE2(config-router-lisp-EID-tablE)# database-mapping 10.2.0.0/24 46.1.1.6 priority 1 weight 100       
R6-SITE2(config-router-lisp-EID-tablE)#  exit
R6-SITE2(config-router-lisp)# !
R6-SITE2(config-router-lisp)# ipv4 itr map-resolver 44.1.1.1
R6-SITE2(config-router-lisp)# ipv4 itr
R6-SITE2(config-router-lisp)# ipv4 etr map-server 44.1.1.1 key ender
R6-SITE2(config-router-lisp)# ipv4 etr
!
配置映射系统:
R4-MS(config)#router lisp
R4-MS(config-router-lisp)# site SITE1 //设置站点,命名为SITE1
R4-MS(config-router-lisp-sitE)#  authentication-key ender //设置认证的密码
R4-MS(config-router-lisp-sitE)#  EID-prefix 10.1.0.0/24 //设置该站点EID前缀
R4-MS(config-router-lisp-sitE)#  exit
R4-MS(config-router-lisp)# !
R4-MS(config-router-lisp)# site SITE2
R4-MS(config-router-lisp-sitE)#  authentication-key ender
R4-MS(config-router-lisp-sitE)#  EID-prefix 10.2.0.0/24
R4-MS(config-router-lisp-sitE)#  exit
R4-MS(config-router-lisp)# !
R4-MS(config-router-lisp)# ipv4 map-server //该设备为映射服务器
R4-MS(config-router-lisp)# ipv4 map-resolver //该设备为映射解析器
R4-MS(config-router-lisp)
验证LISP的实施和状态
R3-SITE1#show ip lisp 0 
  Instance ID:                      0 //配置的LISP 实例
  Router-lisp ID:                   0
  Locator table:                    default
  EID table:                        default
  Ingress Tunnel Router (ITR):      enabled //该设备为ITR
  Egress Tunnel Router (ETR):       enabled //该设备为ETR
  Proxy-ITR Router (PITR):          disabled
  Proxy-ETR Router (PETR):          disabled
  NAT-traversal Router (NAT-RTR):   disabled
  mobility First-Hop Router:        disabled
  Map Server (MS):                  disabled
  Map Resolver (MR):                disabled
  Delegated Database Tree (DDT):    disabled
  Map-request source:               3.3.3.3 
  ITR Map-Resolver(s):              44.1.1.1 //映射解析器为44.1.1.1
  ETR Map-Server(s):                44.1.1.1 (00:00:48) //映射解析器为44.1.1.1
  xTR-ID:                           0x679FC9FE-0x397B5F24-0x575124BC-0xC3844226
  site-ID:                          unspecified
  ITR Solicit Map request (SMR):    accept and process
    Max SMRs per map-cache entry:   8 more specifics
    Multiple SMR suppression time:  20 secs
  ETR accept mapping data:          disabled,verify disabled
  ETR map-cache TTL:                1d00h
  Locator Status Algorithms:
    RLOC-probe algorithm:           disabled
    LSB reports:                    process
    IPv4 RLOC minimum mask length:  /0
    IPv6 RLOC minimum mask length:  /0
  Static mappings configured:       0
  Map-cache size/limit:             1/1000
  Imported route count/limit:       0/1000
  Map-cache activity check period:  60 secs
  @R_674_10586@l database mapping size:      1
   static database size/limit:      1/5000
   dynamic database size/limit:     0/1000
  Persistent map-cache:             interval 01:00:00
    Earliest next store:            00:08:12
    LOCATIOn:                       unix:LISP-MapCache-IPv4-00000000-00003
R3-SITE1#show ip lisp database //验证LISP的数据库
LISP ETR IPv4 Mapping Database for EID-table default (IID 0),LSBs: 0x1,1 entries

10.1.0.0/24
  Locator   Pri/Wgt  source     State
  34.1.1.3    1/100  cfg-addr   site-self,reachable //针对EID10.1.0.0/24的RLOC为34.1.1.3,状态为可达的
R3-SITE1#show ip lisp forWARDing EID local //验证本地转发EID
Prefix
10.1.0.0/24
R5-EID#ping 10.1.0.1 //此时通过RLOC封装之后,数据包可以到达其他站点EID 10.1.0.1
Type escape sequence to abort.
Sending 5,100-byte ICMP Echos to 10.1.0.1,timeout is 2 seconds:
..!!!
success rate is 60 percent (3/5),round-trip min/avg/max = 2/2/3 ms
R3-SITE1#show ip lisp map-cache //查看LISP映射缓存信息
LISP IPv4 Mapping Cache for EID-table default (IID 0),2 entries

0.0.0.0/0,uptime: 01:05:04,expires: never,via static send map-request
  Negative cache entry,action: send-map-request
10.2.0.0/24,uptime: 00:06:46,expires: 23:53:59,via map-reply,complete
  Locator   Uptime    State      Pri/Wgt
  46.1.1.6  00:06:46  up           1/100 //到达远端的RLOC 46.1.1.6的信息

此时EID之间已经可以完成通信。我们来看一个真实的通过LISP转发的报文情况,如图12-10所示,读者可以从中看到UDP报头,也可以看到源端口号为1283,目的端口号为标准的4341,UDP报文承载了LISP数据(并没有看到和标准的LISP一样的LISP报头和IP报头)。

在做好实验之后,我们可以虑一下LISP的扩展性问题。可扩展性是衡量一个网络协议的基本指标之一,一个能处理好10个节点通信的网络不一定能够应对100个节点之间的数据交互,这其中增加的难度往往不止是将处理能力提高10倍这么简单。LISP在计算数据包的目的路由时需要找到EID与RLOCs的对应关系,由于EID和RLOCs是两个独立的地址空间,它们之间可能没有任何规律,因此EID和RLOCs之间是一个近似Full Mesh(全网状)的对应关系,一个LISP网络的边缘路由器即XTR需要知道对应每一个站点EID的RLOCs是多少,才能够正确地转发数据包。随着LISP网络的扩张,这张对应关系表变得越来越长,当收到新的数据包时,每次查找所用的时间也越来越长。当网络规模达到一定程度时,在一个路由器"肚子"里装下整张大网的拓扑关系就显得不太现实了,传统的动态路由协议如OSPF、IS-IS利用了IP地址空间的层级关系,将一个网段内的地址合并为一条路由,配合链路状态值,大大缩减了路由器需要了解的路由表长度。但在LISP中,EID和RLOCs之间没有层级关系,传统的方法不再起作用,需要新思路来解决新问题。LISP给出的答案是LISP-ALT(LISP-Alternative-Topology LISP替代拓扑),它是一个架构在基础网络上的虚拟拓扑,专门用来找出EID与RLOCs的对应关系。凡是LISP的ITR和ETR都加入到LISP-ALT中,它们之间形成EBGP(External BGP--外部边界网关)邻居关系,所有的BGP(Border Gateway Protocol--边界网关路由协议)信令都通过GRE协议封装,这些ITR和ETR就利用BGP交换EID的可达信息。换句话说,LISP节点之间运行封装的BGP协议,在现有网络上形成一个叠加的网络,ITR和ETR通过这个叠加的网络学习EID和RLOCs的对应关系。在传统的路由协议中没有地方可供LISP传递EID和RLOCs的对应关系,有了LISP-ALT之后,LISP的节点就有了一个专用渠道交换EID的可达信息。新的IP包头和LISP-ALT构成了LISP协议的精髓,正是这两个要素保证了一个IP数据包能够通过一种完全不同的方式被安全送到目的地。当一个ITR收到一个节点发送过来的数据包后,它首先查看自己的缓存内是否有目的节点的EID-RLOCs对应关系,如果这个关系存在,则ITR为数据包加上外层包头,写入找到的RLOCs并转发出去,对应的ETR收到IP包后,发现目的RLOCs正好是自己,于是去掉外层包头,将原始数据包送给目的站点。在LISP网络内可以配置一组专门用于路由查询的路由器。如果ITR在缓存内找不到目的EID与RLOCs的对应关系,则会在外层包头里写入目的站点EID,然后通过LISP- ALT发送给一个指定的LISP路由器,这个路由器被授权完成EID-RLOCs的对应工作,保存有比较完整的EID-RLOCs信息。当指定的路由器收到这个数据包后,发现外层包头和内层包头都是同样的EID,于是它判断出这是一个查询报文,于是,它首先将数据包去除外层包头并送往目的站点,然后向ITR发送一条应答报文,说明目的EID和RLOCs的对应关系,ITR收到这条报文之后会将这个EID-RLOCs关系缓存下来,接下来收到的IP包就可以直接发送给对应的ETR了。通过这样一个过程,在LISP网络中只需要设置几个指定的路由器保存比较完整的EID-RLOCs关系,其他ITR和ETR只需要保存常用的对应关系;如果碰到不认识的EID,只需要向指定的路由器发起查询即可.

大佬总结

以上是大佬教程为你收集整理的乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议全部内容,希望文章能够帮你解决乾颐堂安德企业基础架构CCIE即EI CCIE技术LAB文档-LISP协议所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。