一、TUN隧道模式
1、TUN隧道模式的工作原理
TUN模式,又称隧道模式,隧道模式就是修改请求报文的首部IP,再加一层IP报头, 优点:DS和RS不需要在同一网段,可实现不同网络之间的访问。
-
IP隧道技术又称为IP封装技术,它可以 将带有源和目标IP地址的数据报文使用新的源和目标IP进行二次封装,这样这个报文就可以发送到一个指定的目标主机上。
-
客户端发送到LVS调度器(DS)的数据包:源地址: CIP(客户端IP) 目标地址: VIP(DS服务器)
-
加了数据包报头之后:源地址: DIP(VIP)(DS服务器) 目标地址: RIP(RS真正的服务器)
-
数据流向: Client --> DS(调度器) -->prerouting --> INPUT -->postrouting -->RS(真正的服务器)–>lo 回环接口–> 网卡eth0 -->Client
2、TUN模式的特点
- 隧道模式下,调度器和后端服务器组之间使用IP隧道技术,当客户端发送的请求(CIP–>VIP)被director接收后,=director修改该报文,加上IP隧道两端的IP地址作为新的源和目标地址==,并将请求转发给后端被选中的一个目标。当后端服务器接收到报文后,首先解封该报文原有的CIP—>VIP,该后端服务器发现自身的tun接口上配置了VIP,因此接受该数据包。当请求处理完成后,结果将不会重新交给director,而是直接返回给客户端。此时响应数据包的源IP为VIP,目标IP为CIP。 Real Server的RIP和Director的DIP不用处于同一物理网络中,且RIP必须可以和公网通信。也就是说集群节点可以跨互联网实现 。Real Server的tun接口上需要配置VIP地址,以便接收director转发过来的数据包,以及作为响应的报文源IP,Director转发给Real Server时需要借助隧道,隧道外层的IP头部的源IP时DIP,目标IP是RIP,而Real Server响应给客户端的IP头部是根据隧道内层的IP头分析得到的,源IP是VIP,目标IP是CIP,Director只处理入站请求,响应请求由realserver自己完成。
- 一般来说,TUN模式会用来负载调度缓存服务器组,这些缓存服务器一般放置在不同的网络环境,可以就近折返给客户端;在请求对象不在Cache服务器本地命中的情况下,Cache服务器要向源服务器发送请求,将结果取回,最后将结果返回给用户。
3、实现lvs调度器的TUN模式
在DR模式实验的基础上做
1、在LVS调度器(server1)上,ipvsadm -C 清除之前的规则
2、modprobe ipip 添加隧道使用的模块
- modprobe -r ipip 删除隧道模块
3、删除原来网卡上的VIP: ip add