欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

cisco双ISP线路接入,链路自动切换方案

程序员文章站 2024-01-11 08:21:22
cisco双ISP线路接入,链路自动切换方案   最近接到的一个项目,客户总部在惠州,分部在香港,在香港分部设有ERP服务器与邮件服务器,总部出口为铁通10M光纤与网通1M DD...

cisco双ISP线路接入,链路自动切换方案

 

最近接到的一个项目,客户总部在惠州,分部在香港,在香港分部设有ERP服务器与邮件服务器,总部出口为铁通10M光纤与网通1M DDN 专线(新增),原总部是用netscreen 防火墙与香港的pix 515作IPsec VPN对接,现客户要求是新增一条网通DDN专线用来专跑ERP数据业务,就是要求平时总部去分部访问ERP服务器的数据走DDN专线,访问邮件服务器的数据走ipsecVPN,但当这两条链路其中有出现故障中断时,能做到链路自动切换,例DDN专线出现故障,原走这条线路的ERP数据能自动切换到ipsec VPN线路去,如果线路恢复线路又自动切换。

对netscreen 作了研究它是支持策略路由,但好像不支持线路检测(如知道者请提供资料,学习一下)。

为满足客户要求,我推荐用思科1841路由器,思科支持策略路由与线路检测,一直有看过相应的文档,但没实施过,呵呵,终于有机会了。

解方案如下图:

 

cisco双ISP线路接入,链路自动切换方案

 

IP分配如下:

总部IP段为:192.168.1.0/24  网关:192.168.1.111/24

netscreen ssg-140 和透明接入,

R1配置:

FastEthernet0/0 -- 192.168.1.111/24

FastEthernet0/1 -- 192.168.2.1/24 (铁通线路 IP 有改^_^)

Serial0/0 --- 192.168.3.1/24  (网通线路)

PIX 515配置:

Ethernet1 (outside) -- 192.168.2.2/24

Ethernet0 (inside) -- 192.168.4.1/24

R2配置:

FastEthernet0/0 -- 192.168.4.2/24

FastEthernet0/1-- 192.168.5.1/24

Serial0/0 -- 192.168.3.2/24 

下面只列出重点部分:

VPN配置R1----PIX515

R1:

第一步:在路由器上定义NAT的内部接口和外部接口

R1(config)#int f0/0

R1(config-if)#ip nat inside

R1(config-if)#exit

R1(config)#int f0/1

R1(config-if)#ip nat outside

R1(config-if)#exit

第二步:定义需要被NAT的数据流(即除去通过VPN传输的数据流)

R1(config)#access-list 101 deny   ip 192.168.1.0 0.0.0.255 192.168.4.0 0.0.0.255

R1(config)#access-list 101 deny   ip 192.168.1.0 0.0.0.255 192.168.5.0 0.0.0.255

R1(config)#access-list 101 permit ip any any

第三步:定义NAT。

R1(config)#ip nat inside source list 101 interface f0/1 overload

第四步:定义感兴趣数据流,即将来需要通过VPN加密传输的数据流。

R1(config)#access-list 102 permit ip 192.168.1.0 0.0.0.255 192.168.4.0 0.0.0.255

R1(config)#access-list 102 permit ip 192.168.1.0 0.0.0.255 192.168.5.0 0.0.0.255

第五步:定义ISAKMP策略。

R1(config)#crypto isakmp enable

//启用ISAKMP

R1(config)#crypto isakmp policy 10 

R1(config-isakmp)#authentication pre-share 

//认证方法使用预共享密钥

R1(config-isakmp)#encryption des

//加密方法使用des

R1(config-isakmp)#hash md5 

//散列算法使用md5

R1(config-isakmp)#group 2

//DH模长度为1024

第六步:将ISAKMP预共享密钥和对等体关联,预共享密钥为“cisco123456”。

R1(config)#crypto isakmp identity address 

R1(config)#crypto isakmp key cisco123456 address 192.168.2.2

第七步:设置ipsec转换集。

R1(config)#crypto ipsec transform-set myvpn esp-des esp-md5-hmac 

R1(cfg-crypto-trans)#mode tunnel

第八步:设置加密图。

R1(config)#crypto map myvpnmap 10 ipsec-isakmp 

R1(config-crypto-map)#match address 102

//加载感兴趣流

R1(config-crypto-map)#set peer 192.168.2.2

//设置对等体地址

R1(config-crypto-map)#set transform-set myvpn 

//选择转换集

R1(config-crypto-map)#set pfs group2

//设置完美前向保密,DH模长度为1024

第九步:在外部接口上应用加密图。

R1(config)#int f0/1

R1(config-if)#crypto map myvpnmap

PIX:

第一步:定义感兴趣数据流,即将来需要通过VPN加密传输的数据流。

PIX(config)# access-list no-nat extended permit ip 192.168.5.0 255.255.255.0 192.168.1.0 255.255.255.0

PIX(config)# access-list no-nat extended permit ip 192.168.4.0 255.255.255.0 192.168.1.0 255.255.255.0 

第二步:通过VPN传输的数据包不需要做NAT,因此,将这些数据包定义到nat 0,nat 0不对数据包进行地址转换。nat0的处理始终在其他nat(例如nat1、nat2、nat3……)之前。

PIX(config)# nat (inside) 0 access-list no-nat

第三步:访问internet的数据流使用PAT出去。

PIX(config)# nat (inside) 1 0 0

PIX(config)# global (outside) 1 interface

第四步:定义ISAKMP策略。

PIX(config)# crypto isakmp enable outside 

//在外部接口上启用ISAKMP

PIX(config)# crypto isakmp policy 10 authentication pre-share 

//认证方法使用预共享密钥

PIX(config)# crypto isakmp policy 10 encryption des 

//加密方法使用des

PIX(config)# crypto isakmp policy 10 hash md5 

//散列算法使用md5

PIX(config)# crypto isakmp policy 10 group 2

//DH模长度为1024

第五步:将ISAKMP预共享密钥和对等体关联,预共享密钥为“cisco123456”。

PIX(config)# crypto isakmp identity address 

PIX(config)# crypto isakmp key cisco123456 address 192.168.2.1

第六步:设置ipsec转换集。

PIX(config)# crypto ipsec transform-set myvpn esp-des esp-md5-hmac

第七步:设置加密图。

PIX(config)# crypto map myvpnmap 10 ipsec-isakmp 

PIX(config)# crypto map cmyvpnmap 10 match address no-nat

//加载感兴趣流

PIX(config)# crypto map myvpnmap 10 set transform-set myvpn

//选择转换集

PIX(config)# crypto map myvpnmap 10 set peer 192.168.2.1

//设置对等体地址

PIX(config)# crypto map myvpnmap 10 set pfs group2

//设置完美前向保密,DH模长度为1024

第八步:在外部接口上应用加密图。

PIX(config)# crypto map myvpnmap interface outside

第九步:指定IPsec的流量是可信任的。

PIX(config)# sysopt connection permit-ipsec

接下是本部份重点,就是路由选择与链路检测配置:

R1:

ip access-list extended lan-erp

permit ip 192.168.1.0 0.0.0.255 host 192.168.5.53 (ERP IP)

ip access-list extended lan-mail

permit ip 192.168.1.0 0.0.0.255 host 192.168.5.50 (mail IP)

定义route-map 的感兴趣流

ip sla monitor 1

type echo protocol ipIcmpEcho 192.168.3.2

ip sla monitor schedule 1 life forever start-time now

ip sla monitor 2

type echo protocol ipIcmpEcho 192.168.2.2

ip sla monitor schedule 2 life forever start-time now

track 123 rtr 1 reachability

track 124 rtr 2 reachability

启用思科SLA协议,动态检测链路。

route-map test permit 10

match ip address lan-erp

set ip next-hop verify-availability 192.168.3.2 1 track 123

set ip next-hop verify-availability 192.168.2.2 2 track 124

!

route-map test permit 20

match ip address lan-mail

set ip next-hop verify-availability 192.168.2.2 1 track 124

set ip next-hop verify-availability 192.168.3.2 2 track 123

启用routermap 对数据进行分流。

R2:

ip access-list extended erp-lan

permit ip host 192.168.5.53 192.168.1.0 0.0.0.255

ip access-list extended mail-lan

permit ip host 192.168.5.50 192.168.1.0 0.0.0.255

定义route-map 的感兴趣流

ip sla monitor 1

type echo protocol ipIcmpEcho 192.168.3.1

ip sla monitor schedule 1 life forever start-time now

ip sla monitor 2

type echo protocol ipIcmpEcho 192.168.2.1

ip sla monitor schedule 2 life forever start-time now

track 123 rtr 1 reachability

track 124 rtr 2 reachability

启用思科SLA协议,动态检测链路。

route-map test permit 10

match ip address mail-erp

set ip next-hop verify-availability 192.168.3.1 1 track 123

set ip next-hop verify-availability 192.168.4.1 2 track 124

!

route-map test permit 20

match ip address erp-mail

set ip next-hop verify-availability 192.168.4.1 1 track 124

set ip next-hop verify-availability 192.168.3.1 2 track 123

定义route-map 的感兴趣流.