路由过滤命令详解
- 2007-10-08 23:17:36 作者: 来源:Cnfan.net收集 浏览次数:2414 文字大小:【大】【中】【小】
简介:(一) Route Maps 特性: Route Maps类似于access lists,不同之处在于Route Maps可以改变Packets/Routes的部分属性。 用途: Route Maps主要用于Redistribution和Policy Routing及BGP的 ...
关键字:
路由器
Route
思科
Cisco
CCIE
热点:
|
|
|
路由协议相关:
Support: RIPv2,EIGRP,IS-IS,OSPF,BGP
Not Support: RIPV1,IGRP
Packets Format:
RIPv2: 支持16-bit tags 表示为十进制:0 ~ 65535
EIGRP external route TLVs: 支持32-bit tags 表示为十进制:0 ~ 4294967295
OSPF type 5 LSAs: 支持32-bit tags 表示为十进制:0 ~ 4294967295
配置实例:
router ospf 1 redistribute igrp 1 metric 10 subnets tag 1 redistribute rip metric 10 subnets route-map sense network 10.100.200.1 0.0.0.0 area 0 ! router rip network 10.0.0.0 ! router igrp 1 network 10.0.0.0 ! access-list 1 permit 10.1.2.3 access-list 2 permit 10.1.2.4 ! route-map sense permit 10 match ip route-source 1 set tag 2 ! route-map sense permit 20 match ip route-source 2 set tag 3 |
(二) Distribute-list
作用:
<1> 控制路由条目的分发,及路由的重分布。
<2> 建立一个"route firewall"
关于路由协议:
Distance Vector Routing Protocol: Route Filtering可以控制其通告/接收的路由条目,及重分布的路由条目。
Link-State Routing Protocol: Route Filtering只可以控制其在重分布时的路由条目。
注: LS Routing Protocol的一个基本的要求就是在一个area内所有Routers的Link State Database必须一致,所以如果Route Filtering能过滤掉LS Routing Protocol的LSA通告,就违背了LS Routing Protocol的规范。
Case Study: Filtering Specific Routes router rip version 2 network 192.168.75.0 distribute-list 1 in Serial1 ! ip classless access 1 permit 0.0.0.0 Case Study: Route Filtering and Redistribution |
注:
distribute-list 命令用于Link-State Routing Protocol时:
与接口联用: 只能使用in参数
与路由进程联用: 只能使用out参数
两种方案效果相同。与接口联用的方案在抑制route feedback上效果比较好;与路由进程联用的方案在抑制route feedback时,由于在过滤时,相应的路由条目已经进行了路由表,所以失效。
两种方案效果相同。与接口联用的方案在抑制route feedback上效果比较好;与路由进程联用的方案在抑制route feedback时,由于在过滤时,相应的路由条目已经进行了路由表,所以失效。
<1> 与接口联用
router ospf 25 redistribute rip metric 100 network 172.16.1.254 0.0.0.0 area 25 network 172.16.8.254 0.0.0.0 area 25 network 172.16.50.254 0.0.0.0 area 25 distribute-list 3 in Ethernet0/0 distribute-list 3 in Ethernet0/1 distribute-list 3 in Ethernet0/2 ! router rip redistribute ospf 25 metric 5 passive-interface Ethernet0/0 passive-interface Ethernet0/1 passive-interface Ethernet0/2 network 192.16.0.0 distribute-list 1 in Ethernet0/3 distribute-list 1 in Ethernet2/0 distribute-ilst 1 in Ethernet2.1 ! ip classless access-list 1 permit 172.16.128.0 0.0.127.255 access-iist 3 permit 172.16.0.0 0.0.127.255 |
<2> 与路由进程联用:
router ospf 25 redistribute rip metric 100 network 172.16.1.254 0.0.0.0 area 25 network 172.16.8.254 0.0.0.0 area 25 network 172.16.50.254 0.0.0.0 area 25 distribute-list 10 out rip ! router rip redistribute ospf 25 metric 5 passive-interface Ethernet0/3 passive-interface Ethernet2/0 passive-interface Ethernet2/1 network 172.16.0.0 distribute-list 20 out ospf 25 ! ip classless access-list 10 permit 172.16.130.0 access-list 10 permit 172.16.145.0 access-list 10 permit 172.16.240.0 access-list 20 permit 172.16.23.0 access-list 20 permit 172.16.9.0 access-list 20 permit 172.16.75.0 |
(三) Prefix-list
功能:
过滤特定路由协议分发的Routes,主要用与BGP.
特性:
与ACL相比,具有相对较强的灵活性。在掩码匹配上,也比较容易理解。
Case Study: Standard Syntax
ip prefix-list {list-name | list-number} [seq number] {deny network/length | permit network/length} [ge ge-length] [le le-length]
no ip prefix-list {list-name | list-number} [seq number] {deny network/length | permit network/length} [ge ge-length] [le le-length]
注:
<1> ip prefix-list使用最长匹配规则。
<2> 如果不指定seq number,则默认为5,且每增加一个条目自动增加5.
即如果你指定第一条目seq number为2,则下一个不指定seq number的条目的seq number自动变为7.
<3>自动增加seq number功能可以用命令:no ip prefix-list sequence-number取消。
<4> length < ge-length < le-length <= 32
<5> ip prefix-list不能与Route Maps的match ip next-hop语句联用;只以与match ip address语句联用。
Case Study: ip prefix-list description
Syntax:
ip prefix-list list-name description text Case Study: Configuration Example router bgp 3 no synchronization neighbor 172.16.1.2 remote-as 3 neighbor 172.16.20.1 remote-as 1 neighbor 172.16.29.1 prefix-list 1 out no auto-summary ! ip prefix-list 1 seq 5 deny 192.68.10.0/24 ip prefix-list 1 seq 10 permit 0.0.0.0/32 |
(四) ip as-path access-list
功能:
根据BGP的AS-PATH属性过滤BGP的分发路由条目。
Case Study: Syntax
ip as-path access-list acl-number permit | deny regexp
no ip as-path access-list acl-number
注:acl-number有效值为0 ~ 500.
Case Study: Configuration Guide
<1> 过滤所有的私有AS的Routes更新
ip as-path access-list 1 deny (_64[6-9][0-9][0-9]_|_65[0-9][0-9][0-9]_)
ip as-path access-list 1 permit .*
<2> 应用实例
router bgp 3 no synchronization neighbor 172.16.1.2 remote-as 3 neighbor 172.16.20.1 remote-as 1 neighbro 172.16.20.1 filter-list 1 out no auto-summary ! ip as-path access-lsit 1 permit ^$ |
(五) 以上过滤命令的执行顺序:
<1> inbound
route-map->filter-list->prefix-list,distribute-list
<2> outbound
prefix-list,distribute-list->filter-list-> route-map
prefix-list,distribute-list用于邻居在一个方向上每次只能用其中的一个
————————————————————————————————————————
总结:
其实这些过滤命令都不是太难,关键是一个过滤的理念。
它们都是很灵活的东西,运用的好,它会有很大的作用;运用得不好,也有可能会有反作用的。
所以说,在配置这些过滤命令的时候,要仔细的斟酌。每一个过滤都要思考一下,当安放到现有的网络会有什么样的效用,这样才不至于等到安放到路由器上以后才认识到过滤的漏洞,才不至于引发安全隐患。