IP SLA 常见问题及配置

1.什么是IP SLA

Service Level Aggrement(服务等级协议)在ISP领域指的是用户和服务提供上签订的服务等级合同。用户可以享受什么样的等级什么样的带宽服务等等。当然此处我们探讨的和这个无关,我们主要对企业网络环境中应用SLA的作用做探讨。

2) 什是静态浮动路由?

  浮动静态路由是一种静态路由,在主路由失效时,提供备份路由。但在主路由存在的情况下它不会出现在路由表中。浮动静态路由主要用于拔号备份.

3) IP SLA有什么功能?

-检测路由器之间的网络性能。

-量化当前网络的性能,健康状况。

-评估现有网络的服务质量。

-帮助用户分析,排除网络故障。

-和浮动静态路由,HSRP等技术结合做track功能(工程中应用较多的实例,也是我们本动画探讨的一个重点)

4) IP SLA原理?

  通过发送测试报文,对网络性能,服务质量进行分析,并为用户提供网络服务质量的各种参数,例如:

  抖动延迟,文件传输速率,TCP时延等等。

配置

今日的网络环境,无论是局域网还是广域网,冗余已经成为一个重要的因素。这次的主题涉及一个广域网的冗余——数条广域网链路终结于一个路由器。

最佳、最简单的在思科设备上实现广域网冗余的方法是配合IP SLA使用可靠的静态备份路由。

IP SLA是包含于思科IOS中的可以允许管理员去分析IP应用程序和服务的IP服务等级(IP Service Levels)的一个软件。IP SLA利用动态流量监视技术来监视网络中的连续流量。思科路由器提供IP SLA响应机制为通过网络的数据进行精确的测量。

使用 IP SLA,路由器或交换机执行周期性的测量。测量次数以及可用的测量类型十分丰富,在本文中我只设计ICMP ECHO(ICMP响应)功能。IP SLA其本身就是一个非常大的课题。

让我们来看看一个基本的广域网链路冗余示例的拓扑,如下:

Cisco 配置IP SLA 路由联动_网络服务

在上图中,思科设备通过两条广域网链路连接至ISP1和ISP2。现实中最通常的配置是在路由器上配置指向下一跳的默认路由,如下所示:

R1(config)# ip route 0.0.0.0 0.0.0.0 2.2.2.2

R1(config)# ip route 0.0.0.0 0.0.0.0 3.3.3.3 10

正如你所注意到的,指向ISP2的管理距离被设置为10,该条链路是备份链路。

以上配置通过配置两条浮动路由基本满足了我们的需求,但这种配置仅仅适用于路由器广域网接口是up/down或down/down的情景中。但是更多的情况是,尽管链路是up的,但是我们没有办法抵达网关(下一跳路由器地址),这通常是ISP侧的问题造成的。

在这种情景中,IP SLA成为了工程师的最佳伙伴。通过添加大约六条IOS命令我们即可拥有更加可靠的自动故障切换的网络环境。

使用IP SLA,思科路由器可以通过因特网控制消息协议(ICMP)ping来对广域网的远端路由器接口的状态(up 或 down)来进行验证,并在远端路由器接口down时实现本地备份链路的故障切换(备份激活)。可靠的静态路由备份使用对象跟踪(object track)功能来确保在各种灾难事件中的可靠备份,比如因特网链路失效或对端设备故障等。

IP SLA配置为去ping一个目标地址,比如公网上可路由的ip地址或企业网络中的地址,亦或是你的下一跳ISP路由器地址。ping请求只应从主链路接口发出。以下示例配置实现IP SLA生成到ISP1的下一跳地址的icmp ping。

R1(config)#ip sla monitor 1

R1(config-sla-monitro)#type echo protocol ipIcmpEcho 2.2.2.2 source-interface f1/0

R1(config-sla-monitro-echo)# timeout 1000

R1(config-sla-monitro-echo)# threshold 2

R1(config-sla-monitro-echo)# frequency 3

具体配置过程中,每个IOS版本的命令实现都可能有些微差别,部署需要查询思科文档。以上命令的版本是 IOS 12.4(10)。

以上信息配置并启用了IP SLA。


通过设置频率(frequency),ICMP echo请求每3秒发往下一跳地址2.2.2.2。

失效时间(timeout)设置了等待响应包的最大时间。

定义完IP SLA的操作,下一步我们要去定义一个对象来跟踪我们设置的SLA。通过下面的IOS命令进行设置:

R1(config)#track 1 ip sla 1 reachability (注:3640没有办法找到这条指令)

以上配置用以跟踪IP SLA的操作。如果没有ping响应包从下一跳返回,track的状态将down,在接收的ping响应包的时候track状态将会转为up。

验证track状态,可以通过show track来实现,如下:

Cisco 配置IP SLA 路由联动_路由器_02

以上输出显示,track的状态为down。每个IP SLA操作维护一个操作返回代码。这个返回代码由track过程进行解释。返回代码可以是OK、过载或其他几种返回代码。

Cisco 配置IP SLA 路由联动_网络服务_03

最后一个步骤是:在IP SLA可靠静态路由实现的配置中,为指向ISP的路由器默认路由添加"track"声明,如下所示:

Cisco 配置IP SLA 路由联动_网络服务_04


"track 1"表示该静态路由只有在track状态为up时才建立;如果track的状态是down,第二条路由将开始转发数据流量。

关于英文原著作者:

Sujit Nair拥有CCNA,CCNP,CCIP 和ITIL 工程师认证。供职与思科系统公司,在路由协议领域提供工程技术支持。

翻译完了,把我的实验拓扑给大家付上一份,有兴趣的做做,如果ip sla的某些命令不支持,可以尝试换换IOS。

Cisco 配置IP SLA 路由联动_路由器_05

Good night, my 51cto friends!




思科路由器IP SLA配置实例

思科, 路由器, SLA

路由器SLA配置实例
IP sla的功能是很强大的,这只是IP sla的一个小的功能。

举个例子,
某公司拉了一条光纤专线,光纤进来后接收发器再接1841路由器,另外接了一条网通的线备份,正常情况下走电信,电信断了会走网通,通过浮动路由来实现,问题来了,如果电信的光纤在某个局点出了问题,但1841和收发器的连接是好的,即1841的连接电信的接口的1层2层全是OK的,那这时候是不会切换到网通的,如何实现备份呢???
IP sla可以解决,一要路由可以track一个IP地址,可以通过向一个地址发送icmp包,如果尝试几次收不到回应后认为对方不存在,此路由失效。

在1841上做的

Building configuration...
version 12.4
service timestamps debug datetime msec
service
timestamps log datetime msec
service password-encryption
debugging
enable secret 5 $1$K9cw$ff4.SEldlX3TGV1x1qSdP0
!
no aaa
new-model
!
resource policy
!
mmi polling-interval 60
no mmi
auto-configure
no mmi pvc
mmi snmp-timeout 180
ip subnet-zero
ipcef
no ip domain
lookup
!------------------------------------------------------------------------------------- 建立 sla
ipsla monitor 1
type echo protocol ipIcmpEcho x.x.x.x
request-data-size
1400
timeout 1000
threshold 2
frequency 3
ip sla monitor schedule 1life forever start-timenow
!
!
!------------------------------------------------------------------------------------- 建立track
track2 rtr 1
!
track 3 rtr 1reachability
interfaceFastEthernet0/0
ip address x.x.x.x 255.255.255.252
speed
10
half-duplex
crypto map clientmap
!
interface
FastEthernet0/1
ip address 192.168.10.1 255.255.255.0
duplex
auto
speed
auto
!-------------------------------------------------------------------------------------HSRP
track
standby 1 track 2
standby 1 track 3
!
ip
classless
!------------------------------------------------------------------------------------- 路由
track
ip route 1.1.1.1 255.255.255.255 x.x.x.x track 2
ip route 0.0.0.0
0.0.0.0 x.x.x.x
!
ip http server
no ip http
secure-server
!
!------------------------------------------------------------------------------------- 策略路由
track
route-map test permit 10
match ip address 1
set ip next-hop
verify-availability x.x.x.x 1 track
2
!
!
!
control-plane
!



ip sla配置和注解

1)IP SlA/track
本地路由设备到下一台三层交换机之间串接一台透明设备,当对端shutdown状态,本地设备仍处于UP,这时将导致所谓的“黑洞”现象,
我们可以通过SLA来做网络端到端的可用性监测,从而解决这个问题。
R871(config)#ip sla 64
R871(config-ip-sla)# icmp-echo 192.168.64.2
R871(config)#ip sla schedule 64 life forever start-time now
R871(config)#ip sla 65
R871(config-ip-sla)# icmp-echo 192.168.65.2
R871(config)#ip sla schedule 65 life forever start-time now
---采用icmp协议来监视,即发出icmp echo包来探测对端的可达性,192.168.64.2/65.2为对端IP地址

2)定义SLA监视组
R871(config)#track 64 rtr 64 reachability…………………….定义跟踪组
R871(config)#track 65 rtr 65 reachability

3)定义icmp失效时效
scheduler max-task-time 5000

4)定义需要指定源路由的ip地址
access-list 68 permit 192.168.68.0 0.0.0.255

5)配置路由策略
route-map test permit 10
match ip address 68
set ip next-hop verify-availability 192.168.65.2 10 track 65
set ip next-hop verify-availability 192.168.64.2 64 track 64
exit

6)接口应用路由策略
interface FastEthernet4
ip address 192.168.66.2 255.255.255.0
ip policy route-map test
exit

7)缺省路由应用track

ip route 0.0.0.0 0.0.0.0 192.168.64.2 10 track 64
ip route 0.0.0.0 0.0.0.0 192.168.65.2 100 track 65



R871#sh run
Building configuration...

Current configuration : 2905 bytes

Last configuration change at 16:06:20 bjt Wed Nov 11 2009
NVRAM config last updated at 10:37:12 bjt Wed Nov 11 2009

version 12.4
no service pad
service timestamps debug datetime msec localtime show-timezone
service timestamps log datetime msec localtime show-timezone
service password-encryption
service sequence-numbers

hostname R871

boot-start-marker
boot system flash:/c870-advsecurityk9-mz.124-15.T9.bin
boot-end-marker

logging buffered 4096
no logging console
enable secret 5 $1$9jvT$n/KkFKrWqAO2GJ8fXNJEc0

no aaa new-model

clock timezone bjt 8


dot11 syslog
ip cef


no ip domain lookup

archive
log config
 hidekeys

interface FastEthernet0

interface FastEthernet1
shutdown

interface FastEthernet2
switchport access vlan 5

interface FastEthernet3
switchport access vlan 5

interface Dot11Radio0
no ip address
shutdown
speed basic-1.0 basic-2.0 basic-5.5 6.0 9.0 basic-11.0 12.0 18.0 24.0 36.0 48.0 54.0
station-role root

interface Vlan1
ip address 192.168.64.254 255.255.255.0

interface Vlan5
ip address 192.168.65.254 255.255.255.0

ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 192.168.64.2 10 track 64
ip route 0.0.0.0 0.0.0.0 192.168.65.2 100 track 65
ip route 192.168.67.0 255.255.255.0 192.168.66.254
ip route 192.168.68.0 255.255.255.0 192.168.66.254
ip route 193.168.1.254 255.255.255.255 192.168.66.254
ip route 193.168.2.254 255.255.255.255 192.168.66.254

ip http server
no ip http secure-server

ip sla 64
icmp-echo 192.168.64.2
ip sla schedule 64 life forever start-time now
配置SAA检查连通性。并跟踪这结果。很精巧的实现思路。
ip sla 65
icmp-echo 192.168.65.2
ip sla schedule 65 life forever start-time now
配置SAA检查连通性。并跟踪这结果。很精巧的实现思路。
track 64 rtr 64 reachability
track 65 rtr 65 reachability

定义访问控制列表,permit选项为需要重定向的数据包
access-list 168 deny   ip 192.168.68.0 0.0.0.255 192.168.64.0 0.0.0.255
access-list 168 deny   ip 192.168.68.0 0.0.0.255 192.168.65.0 0.0.0.255
access-list 168 permit ip 192.168.68.0 0.0.0.255 any

定义策略路由
route-map test permit 10
match ip address 168
set ip next-hop verify-availability 192.168.65.2 10 track 65
set ip next-hop verify-availability 192.168.64.2 64 track 64

应用策略路由
interface FastEthernet4
ip address 192.168.66.2 255.255.255.0
ip policy route-map test
duplex auto
speed auto

control-plane

alias exec rt show ip route
alias exec sc show cdp nei
alias exec sv show ver
alias exec st show clo
alias exec ct config t
alias exec sr sh run
alias exec si show interface
alias exec cc clear counter
alias exec cl clear log
alias exec sl show log
alias exec sns show ntp status
alias exec cac clear access-list counters
alias exec sa show access-list

line con 0
no modem enable
line aux 0
line vty 0 4
password 7 01100F175804
login

scheduler max-task-time 5000
ntp source FastEthernet0
ntp server 132.163.4.103
end


其实这是客户需要才试出来的,我对ip sla的功能也不是很熟悉,只实现到静态路由的自动备份和切换功能!

,直接用静态路由配合route-mapIP SLA就能实现
默认一个子网通过route-map 1,优先走线路1,同时在route-map 1中调用IP SLA,监测线路1的下一条是否可达,如果可达,走线路1,不可达,走常规路由,也就是走静态路由,两条静态路由也要开启track调用IP SLA
同理,第二个子网通过route-map 2,优先走线路二,同时在route-map 2中调用IP LSA,监测线路2的下一条是否可达,可达走线路2,不可达,走静态路由,静态路由也通过track调用IP SLA,监测下一跳。