Route map 的使用教材.doc
文本预览下载声明
Route map 的使用:
路由再分布的时候,对路由进行过滤,比使用distribute-list 更灵活;
策略路由;
NAT
BGP路由策略的实现;
Route map 的操作:
Router map 由一组语句组成;
语句的处理时自上而下的;
一旦找到匹配的语句,后续的操作将不再进行;
其中的序列号将用来指定route map 的顺序,可以增加或者更改某条特定的语句;
Route-map my-map permit 10
{ match statements }
{ set statements }
Route-map my-map deny 20
{ match statements }
{set statements }
Route-map my-map permit 30
{ match statements }
{set statements }
对于上面括号中的match条件与set动作,可以两者都有,可以只包含一者,也可以一个都没有。并且设置序列号的时候,中间的间隔设置的尽量要大一些,为的就是方便以后对这个router-map 的扩充,容易往里面加特殊应用的语句。
配置Router-map:
设置router-map的名字和条件----
Router(config)#route-map {名字} [ permit | deny ] [sequence-number]
定义匹配操作的条件----
Router(config-route-map)#match {conditions}
设置匹配成功的语句的动作----
Router(config-route-map)#set {conditions}【这是一个非常强大的命令】
【match与set下面到底包含着什么东西,我们可以在设备上利用帮助命令进行查询。】
Route-map独自应用的时候非常的少,一般都是和路由重分发配合使用,或者为了实现“策略路由”!反正就是“Route-map”的功能很强大,我们在做针对路由的策略的时候,应该首先考虑到它~~~
看看下面的一个应用实例:
Route-map与路由重分发的结合使用:
Router(config)# router ospf 10
Router(config-router)# redistribute rip subnets route-map redis-rip
下面显示的就是路由器上的关于Route-map的配置:
Route map redis-rip permit 10
Match ip addresss 23 29
Set metric 500
Set metric-type type-1
Route map redis-rip deny 20
Match ip address 37
Router map redis-map permit 30
Set metric 5000
Set metric-type type-2
Access-list 23 permit 10.1.0.0 0.0.255.255
Access-list 29 permit 172.16.1.0 0.0.0.255
Access-list 37 permit 10.0.0.0 0.0.0.255
现在来看下route-map的内容:第一个语句表达的非常清楚,就是将匹配访问控制列表23、29的地址的路由更新设置成类型1且度量值为500。
第二个语句,其中只包含一个match语句,但是上面的一句是:deny 20 。这里的关键字“deny”也是至关重要的啊~~想要表达的意思是:和访问控制列表37匹配的路由更新包压根就不能被重分发进入到OSPF。为什么?就是因为上面的那句“deny 20”,已经被“拒绝”了。
第三个语句,这句呢,只包含set语句,没有匹配条件。想要表达的意思就是:不满足上面的那两个语句的路由更新包,都执行我这个语句中所包含的动作吧。并且得看清楚了,这个序列号为30的语句,用的关键字可是“permit”【有了这个关键字,即使下面包含的子语句中不包含任何的内容的话也没关系,那么表达的意思就是:OK,我允许了,你们可以重分发进来,不用采取什么特殊的处理,你们按照你们默认的处理方式就可以了。当然了,这得是在先同意的前提下】,如果是“deny”的话,那就相当于将不符合前面两个语句的路由更新包全都拒绝掉了。其实,如果我们只有前面的10与20,没有后面的30,系统所采取的动作也是
显示全部