公司以前一直使用的单链路联通,可是随着南方分公司的创建,广泛反映访问公司资源速度太慢,影响了正常工做,因而乎,又上了一条电信。
拓扑以下图:
php
工没有链路负载均衡设备,如何实现双链路冗余以及负载均衡呢?
经过单网卡双IP映射+策略路由+智能DNS解析来实现,以下图:
首先,把w ww.xxx. com服务器的单网卡设置两个IP分别为A,B,而后分别把A映射到路由器电信接口上ipD,把B映射到路由器联通接口上ipC。
node
智能DNS—经过判断发起解析请求的客户机的IP地址来判断所属ISP地址段,分配不一样的解析结果,如图:
在智能DNS上的w ww.xxx. com存在两条A记录,分别是联通的ipC、电信的ipD,当联通用户发起解析请求时,返回给用户ipC,反之亦然。
以此来达到联通用户访问联通链路,电信用户访问电信链路的目的。这是入站负载。
服务器
下面以电信用户访问为例,当电信用户获取w ww.xxx. com的IP后,访问到路由器电信链路上的ipD,此时ipD映射为www服务器的内网IP A,当内网IP A接收到访问请求后,必然会返回数据,内网默认网关固然都是路由器,当数据包通过路由器时,此处的策略路由根据源IP来控制下一跳的路由,最终是的IP A的数据都走电信链路。
这样,出站和入站实现链路相同,不会存在出入链路不一样丢包现象了,大功告成。
app
下面是路由器具体配置:
#
acl number 3000
//定义源为A的ACL
rule 0 permit ip source 172.16.2.2 0
acl number 3001
//定义源为B的ACL
rule 0 permit ip source 172.16.2.1 0
#
interface GigabitEthernet0/0
//此接口为出口路由器的内网口
port link-mode route
ip address 192.168.2.2 255.255.255.0
ip policy-based-route policy //将匹配源地址为服务器私网地址的策略路由下发至内网口
#
interface GigabitEthernet7/0
//电信链路接口
port link-mode route
description to-dianxin
nat outbound static
nat server protocol tcp global x.x.x.x www inside 172.16.2.2 www
//映射A ip
ip address x.x.x.x 255.255.255.252
#
interface GigabitEthernet0/1
//联通链路接口
port link-mode route
description to-wangtong
nat outbound static
nat server protocol tcp global x.x.x.x www inside 172.16.2.1 www
//映射B ip
ip address x.x.x.x 255.255.255.252
#
policy-based-route policy permit node 0
//匹配ACL3000的走电信出接口
if-match acl 3000
apply ip-address next-hop x.x.x.1
//电信ISP路由地址
policy-based-route policy permit node 5
//匹配ACL3001的走联通出接口
if-match acl 3001
apply ip-address next-hop x.x.x.2
//联通ISP路由地址
#
ip route-static 0.0.0.0 0.0.0.0 x.x.x.1
ip route-static 0.0.0.0 0.0.0.0 x.x.x.2 preference 80
#
负载均衡