我们继续实验在R1上设置多条路由,
[R1]ip route-static 192.168.3.0 24 NULL 0
[R1]ip route-static 192.168.4.0 24 NULL 0
要求:我们在R2上对R1引入ospf的外部奇数路由做过滤。
通过观察1.0、2.0、3.0、4.0我们发现奇数的16进制
0:0000 0000
1111 1110
1:0000 0001
1111 1110
rule deny source 192.168.1.0 0.0.254.0
rule permit source any
filter-policy 2000 import
单独使用filter-policy对路由做过滤时,不同协议路由有不同的效果。
我们现在用的是import,是用于对被引入的入向路由做过滤。export是引入的路由在做出向时做的过滤。
我们想一下我们在R2上做了以上的过滤,那么在R3上还能接收到这些路由么?
图片.png
答案是会的,因为我们在R2上只是对本路由表接收到外部路由做过滤。
像ospf这种链路状态协议,产生路由的原因是因为我们有五类LSA的存在,R2做过滤是对已经加入进来的路由做过滤,lsa泛洪在加入之后就会进行,所以我们只是对本路由器路由表存放接收到的五类LSA做过滤,但并不影响五类LSA的存在和泛洪。
而普通的距离矢量协议RIP,会直接过滤掉路由在R3上查不到来自R1的路由,因为距离适量协议产生路由的原因是通过交换各自路由表中的路由,而不是像ospf协议,R2在接收到RIP协议的路由会先存在路由表,但是存放的时候路由表被过滤,就没有了。
import会因为协议的不一样有不同的效果,那export是不是也是一样呢?
其实export也是的,如果是ospf协议的路由,用export也是一点效果都没有,因为在传出去之间已经进行了泛洪,ospf是对状态的传递,rip是对结果的传递。
ACL应用示例
- ACL可以通过匹配报文的信息实现对报文的分类
IP-Prefix List应用示例
IP-Prefix List能够同时匹配IP地址前缀以及掩码,
IP-Prefix List不能用于IP报文的过滤,只能用于路由信息的过滤,我们举个例子,
ip ip-perfix test index 10 permit 10.0.0.0 16 greater-equal 24 less-equal 28
ip地址范围10.0.0.0-10.0.x.x
24<=掩码长度<=28
例如:10.0.1.0/24 10.0.2.0/25 10.0.2.192/26
实验:
ip ip-prefix Pref1 index 10 permit 1.1.1.0 24
匹配1.1.1.0的路由
ip ip-prefix Pref1 index 10 permit 1.1.0.0 16 greater-equal 24
匹配1.1.x.x 掩码大于等于 24的路由
ip ip-prefix Pref1 index 10 permit 1.1.0.0 16 greater-equal 24 less-equal 24
匹配1.1.x.x 掩码等于 24的路由
ip prefix Pref1 index 10 permit 1.1.0.0 16 less-equal 24
匹配1.1.x.x掩码大于等于16小于等于24的路由
ip prefix Pref1 index 10 permit 1.1.0.0 16 less-equal 30
匹配1.1.x.x掩码大于等于16小于等于30的路由
ip prefix Pref1 index 10 permit 0.0.0.0 0
匹配缺省路由
ip prefix Pref1 index 10 permit 0.0.0.0 0 less-equal 32 匹配的所有的路由
- 注意:ip-prefix-list也存在默认语句,拒绝所有路由。
- 注意:lenght<=ge<=le
用一条语句把192.168.1.0/24的所有子网都匹配出来
ip prefix Pref1 index 10 permit 192.168.1.0 24 greater-equal 25 less-equal 32 - 注意:前缀列表 ip-prefix-list不能匹配奇偶网段。
用一条语句匹配出所有主类网络号A类地址
ip prefix Pref1 index 10 permit 0.0.0.0 1 greater-equal 8 less-equal 8
用一条语句匹配出所有主类网络号B类地址
ip prefix Pref1 index 10 permit 128.0.0.0 2 greater-equal 16 less-equal 16
实验:
我们在R1上引入一条最小的A类地址1.0.0.0 8和最大的126.0.0.0 8
[R1]ip route-static 1.0.0.0 8 NULL 0
[R1]ip route-static 126.0.0.0 8 null 0
我们将之前的路由策略都删除掉
[R1-ospf-1]undo filter-policy 2000 export static
我们先拒绝1.0.0.0 8 的路由,允许掩小于32的路由
[R1]ip ip-prefix 1 deny 1.0.0.0 1 greater-equal 8 less-equal 8
[R1]ip ip-prefix 1 permit 0.0.0.0 0 less-equal 32
[R1]ospf
[R1-ospf-1]filter-policy ip-prefix 1 export static
这时我们查看路由表,发现我们引入的都是c类的,测试成功
图片.png
网友评论