CCIE理论第三篇-LISP技术
LISP
LISP(locator identity separation protocol)位置身份分离协议
这个是个啥呢?为什么需要这个东东呢?
首先呢,我们知道,在VXLAN里面,MAC in udp(在tunnel 的概念下)
环境
首先,假设现在某公司,需要把左边的设备迁移到右边,中间是运营商,但是这个是个服务器,需要对外提供服务
那么迁移会带来什么问题呢?
传统架构中,
>首先,迁移,你不能换IP吧
>因为IP这个东西,在大公司大企业里面,他是都有备案以及记录,有规范的
>不是你想改就能随便改的,而且改了也很麻烦,会带来一系列的问题
>比如,最基本的,路由咋办?你一改全局都得用,很不显示
>其次,在没有vpn的情况下,运营商难道要给你改路由吗,很麻烦的,哪怕是BGP
>再者,NAT,他们的NAT都是端口有规范的,对应IP,难道一个一个去改吗,很明显很不现实
在很多公司中现在都有负载均衡设备,会联动上面的DNS
有人要问了,这个时候关DNS什么事?
DNS是域名解析
一般服务器嘛,对外提供的肯定是网址不可能是IP呀
但是一改了,原本的就解析不到了
那么这个时候,负载均衡设备上会有一个生命检测周期的功能
不管你是什么,只要是个ip,就会检测,有点像SLA,BFD这个东西
然后如果原本那个死亡了,那么新的上来了,负载均衡设备会告诉DNS
解析的跑来这边了
(这里的DNS是自己内部搭建的DNS,不是公网的DNS)
不够一般来讲,负载均衡是作为DNS的下一跳存在的
就是当下面的客户端和外部的user发送了请求
那么DNS会先发给负载均衡设备然后再由这个设备发送下去给需求的设备
但是这个过程,负载均衡设备会进行重新封装,并不是纯转发
其中,比较出名的负载均衡厂家是A10,F5这些,当然很多安全公司也有,奇安信深信服这些
小总结
首先讲一下小总结
1.首先,现在面临的都是异地化的
2.当一个服务器没了,新启了一个服务器,那么,怎么找到这个新的服务器
3. 现在来说,VXLAN是可以解决的
4. 但是局限的环境是,纯内网的环境下
5. 但是如果是面向公网环境的,那么会需要用到DNS+负载均衡设备
讲正题了
那么既然说了那么多,那么这个LISP有什么用呢?
因为这种环境使用VXLAN是可以解决的
LISP最主要的核心是什么呢?
他是帮助用户去定位迁移后的地址的位置
首先LISP使用场景是在内网的哈!!!(也就是underlay网络)
LISP呢是非常类似于DNS的,但是他又有VXLAN的感觉,但是又不能说他是DNS+VXLAN的结合
它是通过一个第三方的服务器,叫mapping DB serve
这个是自己搭建的哈!!!
然后他分成两个部分一. mapping resolver-用来服务客户的,查询者二. mapping sever-用来服务请求端的但是实际上这是同一个东西,因为查询的都是一个人呀不过呢在mapping db server里面,他有这个概念的存在
这个东西呢,有点点像NAT
那他主要是做啥的呢?
他是通过外网映射到内网的主机做实时监控然后查询路径
这个外网叫做RLOC,叫做路由定位routing-locator
这个内网叫做EID,end-poiont identifler
只是叫法哈,RLOC就是对应的出接口,EID就是对应终端设备
然后Mapping DB serve就是做这个事情的,是不是有点像NAT
>这个东东是思科开发的,有点私有的感觉
>但是呢很多高端的技术,在很多厂家其实都通用的
>就例如华三,他的配置跟思科完全一模一样
说了半天,mapping db serve是用来帮你做查询的
场景
首先呢,DC-A迁移到DC-B这边
中间这个设备,我们称之为ITR设备
其他的都成为ETR设备
什么是ITR设备呢?
然后LISP呢,会先在mapping server上注册
首先发送一个mapping request-这个类似与hello包这样的东西
注册啥呢?
一个是我的RLOC,一个是我的EID
然后呢,这其中还有热备份的功能,因为ETR设备是每一分钟像ITR设备发送一次注册的
如果收不到回复会认为邻居死亡,是不是有点路由协议hello包哪个味道了
这个时候问题来了,哪这个网络中,什么时候查询mapping-db,什么时候走默认路由呢?
毕竟,他还要正常上网,跑其他业务不只是LISP的存在呀
这个是这样的
当LISP设备,没有明细的路由条目的时候,就会去查询mapping-db
但是其实有个尴尬的问题,就你上网,最简单的www,baidu.com
在没查询之前,难道她知道百度的明细路由嘛?
所以这个时候还是会查询mapping-db,所以这个东东又有点DNS的那个感觉
but,他不是dns呀,所以对于他来说,是不存在的地址
那这个时候,mapping会回复不存在的信息,那么这个时候设备就会走默认路由出去了
这里来一波小总结
1.有明细路由条目走明细
2.没有的时候全部查询mapping-db
3.如果有就直接走mapping-db
4.当mapping-db到不了的时候,就会返回信息然后走默认路由
工作流程
因为我们一直在讲的是内部迁移的问题
那么这个时候来说一下LISP的工作流程
首先,mapping resolver简称MR设备 因为这样方便说
然后,mapping server简称MS设备
他是这样的
当上面的user发送了请求,到了网关
那么会先去找MR,这没错吧,前面已经说过了
然后呢,MR设备会把这条请求告诉MS设备
然后MS设备,会把这个需求发送给最后一次注册的设备
如果没有则MR不会通告给MS,也不会有查询
但是由于注册信息是每60一次,所以这样相当于一个备份
然后这个时候,ETR会给ITR(GW)回复信息
一般呢,这个MR+MS设备,是部署在ETR设备情况下的
当然如果请求量大的话可以单独弄一个硬件给他
但是记得有一点哈!!
前面已经提过了
MR+MS是同一个设备
mapping db server
只不过他们两个模块
一个服务ITR
一个服务ETR
抓包
可以看到短偶库4789哈,这个是vxlan的端口号
还有VNI的编号之类的
往下也有详细的地址
下面的都是LISP的
其中第一个红圈是rloc地址
下面的是eid地址
这个4342端口是随机的哈,并不是固定的
通过抓包发现,其实这个LISP又和VXLAN差不多
配置参考
思科
指向eid rloc地址,优先级,权重
指定itr
指定ert
手动指定map-resolover
手动指定ert的map-server,至于后面这个key就是一个认证而已
mapping db server设备
跟谁注册,就得写谁
华三
基本上跟思科一模一样
https://www.cisco.com/c/en/us/td/docs/switches/datacenter/sw/n
x-os/lisp/configuration/guide/b_NX
OS_LISP_Configuration_Guide/b_NX
OS_LISP_Configuration_Guide_chapter_01000.html
https://www.cisco.com/c/en/us/td/docs/ios
xml/ios/iproute_lisp/configuration/xe-3s/irl-xe-3s-book/irl-cfg
l
i
sp.html#GUID-5CFF5491-8045-43C8-80F8-73C16C6E185E
http://www.h3c.com/cn/d_201612/965115_30005_0.htm
这些均为LSP的文档文献