路由过滤命令详解ROUTERMAP.docx
《路由过滤命令详解ROUTERMAP.docx》由会员分享,可在线阅读,更多相关《路由过滤命令详解ROUTERMAP.docx(12页珍藏版)》请在冰豆网上搜索。
![路由过滤命令详解ROUTERMAP.docx](https://file1.bdocx.com/fileroot1/2023-1/29/861e7022-fe55-4407-a0b6-728f775624ec/861e7022-fe55-4407-a0b6-728f775624ec1.gif)
路由过滤命令详解ROUTERMAP
路由过滤命令详解
(一)RouteMaps
特性:
RouteMaps类似于accesslists,不同之处在于RouteMaps可以改变Packets/Routes的部分属性。
用途:
RouteMaps主要用于Redistribution和PolicyRouting及BGP的实现。
实现:
PolicyRouting发送Packets到RouteMaps实现策略路由转发。
Redistribution发送Routes到RouteMaps实现路由条目的过滤。
配置说明:
RouteMaps如果没有指定Action及SequenceNumber属性,默认:
Action:
permit
SequenceNumber:
10
且SequenceNumber不会自动增加。
即如果在使用RouteMaps语句时不指定SequenceNumber,则覆盖SequenceNumber为10的默认条目。
RouteMapsDenyAction:
Redistribution:
特定路由条目不会被重分布。
PolicyRouting:
特定的Packets不会按策略路由转发,但会梗概正常的路由表条目转发。
CaseStudy:
PolicyRouting
注:
(1)PolicyRouting只影响入流量。
(2)可以使用Standard及ExtendedACL.
(3)全局配置iplocalpolicyroute-mapsense可将策略路由应用于Router本身发送的Packets.
<1>StandardACL
interfaceSerial0
ipaddress172.16.5.1255.255.255.0
ippolicyroute-mapsense
!
access-list1permit172.16.6.00.0.0.255
access-list2permit172.16.7.00.0.0.255
!
route-mapsensepermit10
matchipaddress1
setipnext-hop172.16.4.2
!
route-mapsensepermit20
matchipaddress2
setipnext-hop172.16.4.3
<2>ExtendedACL
interfaceEthernet0
ipaddress172.16.1.4255.255.255.0
ippolicyroute-mapsense
!
access-list105permittcp172.16.1.00.0.0.255eqftpany
access-list105permittcp172.16.1.00.0.0.255eqftp-dataany
access-list106permittcp172.16.1.00.0.0.255eqtelnetany
!
route-mapsensepermit10
matchipaddress105
setipnext-hop172.16.2.1
!
route-mapsensepermit20
matchipaddress106
setipnext-hop172.16.3.1
<3>LengthofthePackets
interfaceEthernet0
ipaddress172.16.1.4255.255.255.0
ippolicyroute-mapsense
!
route-mapsensepermit10
matchlength10001600
setipnext-hop172.16.2.1
!
route-mapsensepermit20
matchlength0400
setipnext-hop172.16.3.1
<4>Router'sPackets
interfaceEthernet0
ipaddress172.16.1.4255.255.255.0
ippolicyroute-mapsense
!
iplocalpolicyroute-mapsense
!
access-list120permitipany172.16.1.00.0.0.255
access-list120permitospfanyany
!
route-mapsensepermit10
matchipaddress120
!
route-mapsensepermit20
matchlength10001600
setipnext-hop172.16.2.1
!
route-mapsensepermit30
matchlength0400
setipnext-hop172.16.3.1
注:
如果没有第一个route-map条目,router本身的Packets及OSPF的Packets都会由于后两个route-map语句被转发到错误的地址。
CaseStudy:
PolicyRoutingandQualityofServiceRouting
PolicyRouting结合ip包头的Precedence和TypeofService(TOS)可以实现基于QOS的策略路由。
注:
Precedence和TOS的配置既可使用Number字段,也可以使用Keyword.
setipprecedence
-------------------------------------
BitsNumberKeyword
0000routine
0011priority
0102immediate
0113flash
1004flash-override
1015critical
1106internet
1117network
-------------------------------------
setiptos
-------------------------------------
BitsNumberKeyword
00000normal
00011min-monetary-cost
00102max-reliability
01004max-throughput
10008min-delay
-------------------------------------
interfaceSerial0
ipaddress10.1.18.67255.255.255.252
ippolicyroute-mapsense
!
interfaceSerial1
ipaddress10.34.16.83.255.255.255.252
ippolicyroute-mapsense
!
access-list1permit172.16.0.00.0.255.255
access-list110permittcpanyeqwwwany
!
route-mapsensepermit10
matchipaddress1110
setipprecedencecritical
!
route-mapsensepermit20
setiptos10
setipprecedencepriority
CaseStudy:
RouteTagging
用途:
用于双向重分布时标识特定Domain的路由,以防路由被重分布回起源Domain.
使用方案:
通告路由条目的边缘Router在重分布时给路由条目加上Tag标识,做为TransitNetwork的Domain,不需要使用和识别Tag,仅仅需要将它传递到它的外部网络即可。
路由协议相关:
Support:
RIPv2,EIGRP,IS-IS,OSPF,BGP
NotSupport:
RIPV1,IGRP
PacketsFormat:
RIPv2:
支持16-bittags 表示为十进制:
0~65535
EIGRPexternalrouteTLVs:
支持32-bittags 表示为十进制:
0~4294967295
OSPFtype5LSAs:
支持32-bittags 表示为十进制:
0~4294967295
配置实例:
routerospf1
redistributeigrp1metric10subnetstag1
redistributeripmetric10subnetsroute-mapsense
network10.100.200.10.0.0.0area0
!
routerrip
network10.0.0.0
!
routerigrp1
network10.0.0.0
!
access-list1permit10.1.2.3
access-list2permit10.1.2.4
!
route-mapsensepermit10
matchiproute-source1
settag2
!
route-mapsensepermit20
matchiproute-source2
settag3
(二)Distribute-list
作用:
<1>控制路由条目的分发,及路由的重分布。
<2>建立一个"routefirewall"
关于路由协议:
DistanceVectorRoutingProtocol:
RouteFiltering可以控制其通告/接收的路由条目,及重分布的路由条目。
Link-StateRoutingProtocol:
RouteFiltering只可以控制其在重分布时的路由条目。
注:
LSRoutingProtocol的一个基本的要求就是在一个area内所有Routers的LinkStateDatabase必须一致,所以如果RouteFiltering能过滤掉LSRoutingProtocol的LSA通告,就违背了LSRoutingProtocol的规范。
CaseStudy:
FilteringSpecificRoutes
routerrip
version2
network192.168.75.0
distribute-list1inSerial1
!
ipclassless
access1permit0.0.0.0
CaseStudy:
RouteFilteringandRedistribution
注:
distribute-list命令用于Link-StateRoutingProtocol时:
与接口联用:
只能使用in参数
与路由进程联用:
只能使用out参数
两种方案效果相同。
与接口联用的方案在抑制routefeedback上效果比较好;与路由进程联用的方案在抑制routefeedback时,由于在过滤时,相应的路由条目已经进行了路由表,所以失效。
<1>与接口联用
routerospf25
redistributeripmetric100
network172.16.1.2540.0.0.0area25
network172.16.8.2540.0.0.0area25
network172.16.50.2540.0.0.0area25
distribute-list3inEthernet0/0
distribute-list3inEthernet0/1
distribute-list3inEthernet0/2
!
routerrip
redistributeospf25metric5
passive-interfaceEthernet0/0
passive-interfaceEthernet0/1
passive-interfaceEthernet0/2
network192.16.0.0
distribute-list1inEthernet0/3
distribute-list1inEthernet2/0
distribute-ilst1inEthernet2.1
!
ipclassless
access-list1permit172.16.128.00.0.127.255
access-iist3permit172.16.0.00.0.127.255
<2>与路由进程联用:
routerospf25
redistributeripmetric100
network172.16.1.2540.0.0.0area25
network172.16.8.2540.0.0.0area25
network172.16.50.2540.0.0.0area25
distribute-list10outrip
!
routerrip
redistributeospf25metric5
passive-interfaceEthernet0/3
passive-interfaceEthernet2/0
passive-interfaceEthernet2/1
network172.16.0.0
distribute-list20outospf25
!
ipclassless
access-list10permit172.16.130.0
access-list10permit172.16.145.0
access-list10permit172.16.240.0
access-list20permit172.16.23.0
access-list20permit172.16.9.0
access-list20permit172.16.75.0
(三)Prefix-list
功能:
过滤特定路由协议分发的Routes,主要用与BGP.
特性:
与ACL相比,具有相对较强的灵活性。
在掩码匹配上,也比较容易理解。
CaseStudy:
StandardSyntax
ipprefix-list{list-name|list-number}[seqnumber]{denynetwork/length|permitnetwork/length}[gege-length][lele-length]
noipprefix-list{list-name|list-number}[seqnumber]{denynetwork/length|permitnetwork/length}[gege-length][lele-length]
注:
<1>ipprefix-list使用最长匹配规则。
<2>如果不指定seqnumber,则默认为5,且每增加一个条目自动增加5.
即如果你指定第一条目seqnumber为2,则下一个不指定seqnumber的条目的seqnumber自动变为7.
<3>自动增加seqnumber功能可以用命令:
noipprefix-listsequence-number取消。
<4>length <5>ipprefix-list不能与RouteMaps的matchipnext-hop语句联用;只以与matchipaddress语句联用。
CaseStudy:
ipprefix-listdescription
Syntax:
ipprefix-listlist-namedescriptiontext
CaseStudy:
ConfigurationExample
routerbgp3
nosynchronization
neighbor172.16.1.2remote-as3
neighbor172.16.20.1remote-as1
neighbor172.16.29.1prefix-list1out
noauto-summary
!
ipprefix-list1seq5deny192.68.10.0/24
ipprefix-list1seq10permit0.0.0.0/32
(四)ipas-pathaccess-list
功能:
根据BGP的AS-PATH属性过滤BGP的分发路由条目。
CaseStudy:
Syntax
ipas-pathaccess-listacl-numberpermit|denyregexp
noipas-pathaccess-listacl-number
注:
acl-number有效值为0~500.
CaseStudy:
ConfigurationGuide
<1>过滤所有的私有AS的Routes更新
ipas-pathaccess-list1deny(_64[6-9][0-9][0-9]_|_65[0-9][0-9][0-9]_)
ipas-pathaccess-list1permit.*
<2>应用实例
routerbgp3
nosynchronization
neighbor172.16.1.2remote-as3
neighbor172.16.20.1remote-as1
neighbro172.16.20.1filter-list1out
noauto-summary
!
ipas-pathaccess-lsit1permit^$
(五)以上过滤命令的执行顺序:
<1>inbound
route-map->filter-list->prefix-list,distribute-list
<2>outbound
prefix-list,distribute-list->filter-list->route-map
prefix-list,distribute-list用于邻居在一个方向上每次只能用其中的一个
————————————————————————————————————————
总结:
其实这些过滤命令都不是太难,关键是一个过滤的理念。
它们都是很灵活的东西,运用的好,它会有很大的作用;运用得不好,也有可能会有反作用的。
所以说,在配置这些过滤命令的时候,要仔细的斟酌。
每一个过滤都要思考一下,当安放到现有的网络会有什么样的效用,这样才不至于等到安放到路由器上以后才认识到过滤的漏洞,才不至于引发安全隐患。