基于策略的路由(PBR)简介

基于策略的路由(PBR)是一种灵活的数据包路由转发机制。通过在路由器上应用策略路由,使路由器根据路由映射(route-map)决定经过路由器的数据包如何处理。路由映射决定了一个数据包的下一跳转发路由器。

在路由器上应用策略路由,必须要指定策略路由使用的路由映射(route-map),并且要创建路由映射。一个路由映射由很多条策略组成,每个策略都定义了1个或多个匹配规则和对应操作。一个接口应用策略路由后,将对该接口收到的所有包进行检查,不符合路由映射中所定义的数据包将会被按照正常路由转发进行处理,符合路由映射中的策略的数据包,就按照策略中定义的操作进行处理。

策略路由主要应用在企业路由表复杂或者需要对路由进行控制的情况下,特别是当企业网络出口有两条,需要对不同服务和应用或者不同客户端的路由进行控制时,当然企业内部运行两个网络或者更多的网络时也经常要用到路由策略;另外,策略路由除了应用在非正常的路由选路之外,它还可以用来防止病毒或黑客的攻击,使用条件语句将病毒或攻击的特征码匹配出来,然后再指定一个安全策略(如使用黑洞路由)将攻击阻断.

黑洞路由是对动态路由选择协议的一个补充。黑洞路由可以将不想要的流量转发到一个称为null0的接口中去。我们可以建立一条或一些静态路由,将精确匹配这些路由的流量丢弃。和ACL不同的是,Cisco IOS的所有交换过程,包括CEF,都能处理黑洞路由,而不降低性能。需要注意的是,PBR技术不支持配置了PBR的路由器始发流量和到达该路由器的流量。

PBR(基于策略的路由)实例解析

下面我们就以一个试验来描述策略路由的阻断流量的功能。路由器的E0/0口作为内部网络的网关,地址为200.1.1.1,内部网络有一个WWW服务器,地址为200.1.1.100,和WWW同一网段内有普通用户PC一台,在外部网络有一个远程的用户,IP地址为199.1.1.100,允许远程用户能够访问WWW服务器,同时不允许访问内部用户的PC机,使用PBR完成需求。

在路由器上配置相关的地址,并测试与200.1.1.100,200.1.1.10和199.1.1.100的连通性。配置一个路由映射(route-map),匹配从远程用户到内部用户的流量,并牵引到null0接口中去,并在null0接口下配置不返回不可达信息。其他不匹配路由映射的流量正常转发。

路由器的初始配置如下:

Router(config)#interface Ethernet0/0

Router(config-if)#ip address 200.1.1.1 255.255.255.0

Router(config-if)#exit Router(config)#interface Ethernet0/1

Router(config-if)#ip address 199.1.1.1 255.255.255.0

Router(config-if)#exit

测试连通性:

Router#ping 200.1.1.100

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 200.1.1.100, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5),

round-trip min/avg/max = 1/3/4 ms Router #ping 200.1.1.10

Type escape sequence to abort. Sending 5,

100-byte ICMP Echos to 200.1.1.10, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5),

round-trip min/avg/max = 1/2/4 ms Router #ping 199.1.1.100 Type escape sequence to abort.

更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Network/lyjs/

Sending 5, 100-byte ICMP Echos to 199.1.1.100, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5),

round-trip min/avg/max = 1/3/4 ms 

配置匹配敏感流量的ACL:

Router(config)#access-list 100 permit ip host 199.1.1.1 host 200.1.1.10 配置null0接口:

Router(config)#interface null 0

Router(config-if)#no ip unreachables 建立路由映射:

Router(config)#route-map pbr

Router(config- route-map)#match ip address 100

Router(config- route-map)#set interface null 0在出口路由器的E0/1接口上打开NETFLOW交换功能,方便我们对结果进行查看,并在该接口上调用PBR:

Router(config)#interface Ethernet0/1

Router(config-if)#ip route-cache flow

Router(config-if)# ip policy route-map pbr

Router(config-if)#exit

在远程主机上对内网的设备再次进行连通性测试:

C:>ping 200.1.1.100

Pinging 200.1.1.100 with 32 bytes of data:

Reply from 200.1.1.100:

bytes=32 time<1ms TTL=128 Reply from 200.1.1.100:

bytes=32 time<1ms TTL=128 Reply from 200.1.1.100:

bytes=32 time<1ms TTL=128 Reply from 200.1.1.100:

bytes=32 time<1ms TTL=128 Ping statistics for 200.1.1.100:

Packets: Sent = 4,

Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

Minimum = 0ms,

Maximum = 0ms,

Average = 0ms C:>ping 200.1.1.10 Pinging 200.1.1.10 with 32 bytes of data:

Request timed out.

Request timed out.

Request timed out.

Request timed out.

Ping statistics for 200.1.1.10:

Packets: Sent = 4,

Received = 0,

Lost = 4 (100% loss), 这时,会发现外部网络的远程用户已经无法ping通内部的用户了,但是还是可以ping通WWW服务器。查看边界路由器的状态:

Router#show access-lists

Extended IP access list 100 10 permit ip host 199.1.1.100 host 200.1.1.10 (18 matches)

Router#show ip cache flow IP packet size distribution (18 total packets):

1-32 64 96 128 160 192 224 256 288 320 352 384 416 448 480 .000 .000 .000 1.00 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 512 544 576 1024 1536 2048 2560 3072 3584 4096 4608 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000 IP Flow Switching Cache,

278544 bytes

1 active, 4095 inactive,

3 added 66 ager polls,

0 flow alloc failures

Active flows timeout in 30 minutes

Inactive flows timeout in 15 seconds

last clearing of statistics never

Protocol

Total

Flows

Packets Bytes Packets Active(Sec) Idle(Sec) ——

Flows

/Sec

/Flow /Pkt

/Sec

/Flow

/Flow ICMP

2

0.0

5

100

0.0

4.0

15.3 Total:

2

0.0

5

100

0.0

4.0

15.3 SrcIf

SrcIPaddress

DstIf

DstIPaddress

Pr SrcP DstP Pkts Et0/1

199.1.1.100

Null

200.1.1.10

01 0000 0800

18 通过效果图我们发现,有18个数据包匹配了ACL,并被PBR牵引到null0接口后丢弃了。

PBR的相关知识就为大家介绍完了,希望大家已经掌握。

时间: 2024-08-03 13:53:02

基于策略的路由(PBR)简介的相关文章

在Linux下配置基于策略的路由的实例

基于策略的路由比传统路由更强大,使用更灵活,它使网络管理者不仅能够根据目的地址而且能够根据报文大小.应用或IP源地址来选择转发路径.在现实的网络应用中,这种选择的自由性还是很需要的.而Linux从2.1版本的内核开始就实现了对策略路由的支持,下面就介绍一个配置实例,以期对读者有所帮助. 实例背景 如图所示,两个内部网通过远端路由器1与因特网相联,通过远端路由器2与上级网相联, Linux服务器做策略路由器,内有4块网卡.IP地址的分配情况如表所示. 在应用需求方面,内网1允许通过远端路由器1(1

Linux环境下基于策略的路由

摘要 本文以大量实例为基础介绍了基于Linux2.2的强大路由功能,它提供的路由功能是很多路由器产品都是难以匹敌的,如果考虑到它的免费性,它的性能价格比更是没有任何产品可以相比. 目前在计算机网络中使用的传统路由算法都是根据IP包目的地址进行路由选择.然而在现实应用中经常有这样的需求:进行路由选择时不仅仅根据数据报的目的地址,而且根据数据报的其他一些特性如:源地址.IP协议.传输层端口,甚至是数据包的负载部分内容,这种类型的路由选择被称作基于策略的路由. 在Linux中,从2.1版本的内核开始就

基于策略以及SNMPv3的网络管理的融合

一.前言 网络的发展日新月异,新技术.新业务.新概念层出不穷,无论是规模,还是广度和深度,对人们生活的影响均非昔日可比.随着网络规模的扩大,管理问题日益突出,针对服务质量的保证以及业务管理,人们提出了基于策略的网络管理PBNM(Policy-Based Network Management)方案.基于策略的网络管理方案已经成为近几年迅猛发展的网管 技术之一. 同时,由于网络装置变得愈来愈大.愈来愈复杂.愈来愈富于变化,使得网络的管理费用随之增加.为了控制费用,需要使用标准工具,使其能够应用于更多

SQL Server 2008基于策略的管理

SQL Server 2008通过引入可扩展的基于策略的管理功能降低了数据平台的管理工作量.其中最引人注意的莫过于提供策略化管理的Declarative Management Framework (简称DMF),不过这个名称已经被启用了,现在正是名字是基于策略的管理(Policy Based Management),我们姑且简称为PBM.PBM使DBA们可以制定管理策略,并将这些策略应用到服务器.数据库以及数据环境中的其他对象上去.经过精心设计的管理策略可以帮助DBA们对数据环境进行前摄性的管理

基于软件的路由正在蚕食传统分支路由器市场

随着越来越多的企业开始意识到软件带来的巨大好处,基于软件的路由和SD-WAN的兴起可能会快速地替代传统分支路由器. 强化的硅性能和改进的路由软件(例如软件定义WAN)已经结合在一起,使数十亿美元的分支路由器市场开始走下坡路.分布式的企业正在部署基于软件的路由,替代传统的分支路由器架构. 虚拟路由器软件易于处理典型的分支路由需求.SD-WAN应用的兴起以及对集中分支管理的需求也将促进分支机构对虚拟路由的采用.Doyle Research预计未来分支网络功能将包括基于软件的安全性.路由.SD-WAN

Symfony2创建基于域名的路由相关示例_php实例

本文实例讲述了Symfony2创建基于域名的路由实现方法.分享给大家供大家参考,具体如下: 你可以匹配将要来到的请求以HTTP域名的方式 YAML方式 mobile_homepage: path: / host: m.example.com defaults: { _controller: AcmeDemoBundle:Main:mobileHomepage } homepage: path: / defaults: { _controller: AcmeDemoBundle:Main:home

降低数据中心的复杂性:运用基于策略的管理

策略能够让IT团队更有效地管理虚拟机的可用性.安全性以及其他组件.企业可以采取本文提及的策略来降低数据中心 的复杂性. 随着数据中心的不断发展,变得越来越复杂,使用软件来代替人员管理这种复杂性更加有效的同时,也更具性价比. 因此,基于策略的管理已成为数据中心管理员们的基本技能.无论您是使用超级融合系统还是正在转换为软件定义模式,基于策略的管理的目标是降低人工工作量并使用策略来管理您的IT基础设施. 以下是有关如何在您的数据中心开始采用基于策略管理方式的一些提示. 不同的数据中心策略适用于不同目的

第十八章——基于策略的管理(1)——评估数据库属性

原文:第十八章--基于策略的管理(1)--评估数据库属性 前言: 本章包含: 1.评估数据库属性 2.限制数据库对象   介绍:         基于策略的管理(PBM)能帮助DBA管理一个或多个实例,并通过PBM管理数据库实体或其他SQLServer对象.PBM协助DBA应用或强制服务器对象和数据库按照策略来运作. 下面的概念是需要牢记的: 1. 策略:定义在PBM下的数据库或服务器对象的规则. 2. 条件:条件是方面状态的布尔值. 3. 方面:在PBM中,目标的行为模式的一套属性集.   评

第十八章——基于策略的管理(2)——限制数据库对象

原文:第十八章--基于策略的管理(2)--限制数据库对象 前言: 在实际环境中,会有很多开发人员正在对一个项目编写SQL脚本,此时需要对对象的命名经行强制限定.完成这个任务可以使用强制的一些策略来实现. 合理的命名对象并不仅仅是处于维护需要,有时候也能影响性能,限定数据库的命名对象将能避免一些性能问题.通常SP_是用于SQLServer系统存储过程,但是一些程序员会尝试将其作为自定义存储过程的命名. 下面我们将演示如何使用策略,来限定SP_前缀,让其只属于SQLServer系统存储过程的命名规则