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

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

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

解方案如下图:

点击查看大图

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 的感兴趣流.

为什么R2也要配置,请读者自己去思考了。有兴趣大家可做下实验,本文结束。

双ISP接入+NAT配置实例

NAT, ISP, 实例

双ISP接入+NAT配置实例

双ISP接入+NAT配置实例(多发贴,让大家共同进步,受益大家,向赵老大以及各位版主们学习)

环境描述:
使用设备为Cisco2621XM + NE-1E模块,该配置拥有两个FastEthernet以及一个Ethernet端口。 
现使用Ethernet 1/0 端口连接内部局域网,模拟内部拥有100.100.23.0 255.255.0.0 与100.100.24.0 255.255.0.0 两组客户机情况下基于原地址的策略路由。 
Fastethernet 0/0 模拟第一个ISP接入端口,Fastethernet 0/1模拟第二个ISP接入端口,地址分别为 Fastethernet 0/0的ip地址192.168.1.2 255.255.255.0 对端ISP地址192.168.1.1 255.255.255.0 
Fastethernet 0/1 的ip地址192.168.2.2 255.255.255.0 对端ISP地址192.168.2.1 255.255.255.0 
通过策略路由后对不同原地址数据流量进行分流,使得不同原地址主机通过不同ISP接口访问Internet,并为不同原地址主机同不同NAT地址进行转换。 
具体配置: 
version 12.2 
service timestamps debug uptime 
service timestamps log uptime 
no service password-encryption 

hostname Router 


ip subnet-zero 



call rsvp-sync 








interface FastEthernet0/0 --------------------假设该端口为ISP 1接入端口 
ip address 192.168.1.2 255.255.255.0 --------分配地址 
ip nat outside --------指定为NAT Outside端口 
duplex auto 
speed auto 

interface FastEthernet0/1 --------------------假设该端口为ISP 2接入端口 
ip address 192.168.2.2 255.255.255.0 --------分配地址 
ip nat outside --------指定为NAT Outside端口 
duplex auto 
speed auto 

interface Ethernet1/0 --------------------假设该端口为内部网络端口 
ip address 100.100.255.254 255.255.0.0 --------分配地址 
ip nat inside --------指定为NAT Inside端口 
ip policy route-map t0 --------在该端口上使用route-map t0进行策略控制 
half-duplex 

ip nat inside source list 1 interface FastEthernet0/0 overload ------Nat转换,指定原地址为100.100.23.0的主机使用Fastethernet 0/0的地址进行转换 
ip nat inside source list 2 interface FastEthernet0/1 overload ------Nat转换,指定原地址为100.100.24.0的主机使用Fastethernet 0/1的地址进行转换 
ip classless 
ip route 0.0.0.0 0.0.0.0 192.168.2.1 ------静态路由,对Internet的访问通过192.168.2.1(ISP2)链路 
ip route 0.0.0.0 0.0.0.0 192.168.1.1 ------静态路由,对Internet的访问通过192.168.1.1(ISP1)链路 
ip http server 
静太路由不起很大的作用,因为存在策略路由,主要是set int 要求有显示的去往目的的路由 

access-list 1 permit 100.100.23.0 0.0.0.255 ----访问控制列表1,用于过滤原地址,允许100.100.23.0网段主机流量通过 
access-list 2 permit 100.100.24.0 0.0.0.255 ----访问控制列表2,用于过滤原地址,允许100.100.24.0网段主机流量通过 
如果做set int 备份,则acl1,acl2应该允许所有的,进行nat 
route-map t0 permit 10 ----定义route-map t0,permit序列为10 
match ip address 1 ----检查原地址,允许100.100.23.0 网段地址 
set interface FastEthernet0/0 ----指定出口为Fastethetnet 0/0 
(set interface FastEthernet0/1) 我认为可以做备份 

route-map t0 permit 20 ----定义route-map t0,permit序列为20 
match ip address 2 ----检查原地址,允许100.100.24.0 网段地址 
set interface FastEthernet0/1 ----指定出口为Fastethetnet 0/1 

(set interface FastEthernet0/1) 我认为可做备份 ! 
dial-peer cor custom 




line con 0 
line aux 0 
line vty 0 4 

end 
效果检验: 
察看路由表 
Router#show ip route 
Codes: C - connected, S - static, I - IGRP, 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, E - EGP 
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 
100.0.0.0/16 is subnetted, 1 subnets 
C 100.100.0.0 is directly connected, Ethernet1/0 
C 192.168.1.0/24 is directly connected, FastEthernet0/0 
C 192.168.2.0/24 is directly connected, FastEthernet0/1 
S* 0.0.0.0/0 [1/0] via 192.168.1.1 
[1/0] via 192.168.2.1 
发现静态路由存在两条路径! 
察看ip Nat translations 
Router#sho ip nat translations 
Pro Inside global Inside local Outside local Outside global 
icmp 192.168.1.2:1024 100.100.23.23:1024 1.1.1.1:1024 1.1.1.1:1024 
icmp 192.168.2.2:1280 100.100.24.23:1280 1.1.1.1:1280 1.1.1.1:1280 
由于路由器外部存在1.1.1.1的地址,用于模拟Internet公网地址,发现不同网段内部主机流量确实已经从不同出口访问外部资源,并且使用了不同Nat进行地址转换! 
注:大部分多ISP情况下都要使用NAT地址转换功能,但有些特殊情况下不需使用NAT功能,如果不是用NAT,就将配置中的有关NAT的配置去掉, 
如此配置中去掉 ip nat inside source list 1 interface FastEthernet0/0 overload 和ip nat inside source list 2 interface FastEthernet0/1 overload 
以及在端口上去掉ip Nat outside和ip nat inside的配置,就可以实现不用NAT的策略路由。 
以上试验可以实现基于原地址的策略路由功能,可以根据内网原地址进行不同流量通过不同ISP接口访问Internet的功能,但仍没有实现双链路相互备份的功能,即当任意一条链路出现故障的时候无法自动使用另一条链路进行备份,造成一部分相应的内网主机无法访问外网的情况。 
望各位进行讨论,希望找到可行性的方法,即能解决策略路由问题,又能实现双链路的自动备份功能!

本文转自q狼的诱惑 51CTO博客,原文链接:http://blog.51cto.com/liangrui/365353,如需转载请自行联系原作者

cisco 双ISP线路接入 链路自动切换方案相关推荐

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

    最近接到的一个项目,客户总部在惠州,分部在香港,在香港分部设有ERP服务器与邮件服务器,总部出口为铁通10M光纤与网通1M DDN 专线(新增),原总部是用netscreen 防火墙与香港的pix 5 ...

  2. Cisco双ISP线路之单路由器解决方案

    <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> Cisco 双 ...

  3. mysql双主故障自动切换_MySQL主库高可用 -- 双主单活故障自动切换方案

    前言:(PS:前言是后来修改本文时加的)对于这篇文章,有博友提出了一些疑问和见解, 有了博友的关注,也促使我想把这套东西做的更实用.更安全.后来又经过思考,对脚本中一些条件和行为做了些改变.经过几次修 ...

  4. Cisco双ISP双链路NAT接入案例

    一.实验拓扑: 二.需求概述: R1.R2作为本地网络12.0.0.0/24.21.0.0.0/24的网关,为连接远端R5上的网段5.0.0.0/24,分别向两个ISP(ISP1.ISP2)申请了1条 ...

  5. 针对web服务器容灾自动切换方案

    思路: 当服务器A 发生故障,服务器B可以迅速接管服务器A的任务,不影响用户的正常访问. 当服务器A 故障恢复,服务器A可以马上接管服务器B的任务,服务器B恢复备机状态. 做法: 两台服务器上配置一个 ...

  6. Redis Sentinel主从复制自动切换方案

    一.准备环境 #配置环境: Redis Sentinel:192.68.40.16:26379 Redis server主:192.168.40.17:6379 Redis server从:192.1 ...

  7. Cisco 防火墙Firwall Failover ActiveActive 双HSRP 实现双ISP完美切换

    简介 failover Active/Active是与context结合,实现一个context出现了故障,自动切换到另外一个,实现流量不间断转发,当然不间断是需要合理的配置holdtime时间的,默 ...

  8. 宏正自动科技发表新款8/16端口双滑轨LCD KVM多电脑切换器

    2019独角兽企业重金招聘Python工程师标准>>> CL5808/CL5816整合多项先进技术,有效节省机房空间.提升管理效益           全球数字信息分享领导厂商 – ...

  9. mysql双主故障自动切换_mysql双主热备宕机自动切换

    一.定义 通常说的「双机热备」是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短. 二.原理 Keepal ...

最新文章

  1. linux usb组合设备,USB组合设备(5)
  2. 【C 语言】C 项目开发代码规范 ( 形参合法性判断 | 函数返回值局部变量 | 函数中不用全局变量 | 函数中使用局部变量接收形参 | 函数返回值 | 形参作返回值 | 形参返回值处理 )
  3. Apache访问日志切割
  4. c# 获取方法所在的命名空间 类名 方法名
  5. 【Linux笔记】第七篇、配置MariaDB的字符集
  6. php flash上传进度条,PHP_PHP+FLASH实现上传文件进度条相关文件 下载,PHP之所以很难实现上传进度条 - phpStudy...
  7. 读写锁(ReadwriteLock)
  8. R语言预测初步(R语言预测实战-节选)
  9. 一、1.1 Kaggle中kernel技巧
  10. JAVA_SE_Day13
  11. JavaScript对象的声明及操作
  12. Jenkins基础:使用NPM构建前端应用1: nodejs插件的安装与设定
  13. 超详细如何配置将WAN接入
  14. 「新职业」背后赚钱的需求在哪里?
  15. Android与Linux分道扬镳
  16. 简单20行python代码_用 20 行 python 代码实现人脸识别!Python实现就是这么简单!...
  17. 知识图谱关系抽取 python_中文知识图谱-基于规则的关系抽取
  18. 交作业吖 week two
  19. 3dmax:3dmax动画栏之关键帧动画经典案例(弹跳小球、实活力小球(上升慢下降快)、小球跳墙、跳动越来越低的小球实例、空间跳动的小球、球跳阶梯)之详细攻略
  20. Salesforce宣布与阿里巴巴达成战略合作 向全国开放CRM平台

热门文章

  1. C++ GUI Programming with Qt 3安装说明
  2. 2018阿里云云数据库RDS核心能力演进
  3. Windows Server 2008 之 终端服务TS WEB ACCESS
  4. POJ1915 BFS双向BFS
  5. 软件工程到底是干嘛的....
  6. Spring控制器响应(action)请求的几种处理方式,如返回JSON,MODEL MODELVIEW,STRING
  7. 如何用敏捷消除项目风险?
  8. Android 抓包的一些命令 及 adb使用的一些注意事项
  9. TMG2010 之创建访问规则
  10. 理解VMware虚拟机下网络连接的三种模式