IP-Prefix List

简介: IP-Prefix List:能够同时匹配网络号和前缀长度性能及可控性比ACL强(ACL无法匹配掩码/前缀长度) 前缀列表不能用于数据包的过滤

地址前缀列表


在进行配置案例前先了解一下基础知识

一、IP-Prefix List

IP-Prefix List:能够同时匹配网络号和前缀长度

性能及可控性比ACL强(ACL无法匹配掩码/前缀长度)

前缀列表不能用于数据包的过滤

IP-Prefix List能解决ACL解决不了的问题

image.png

二、语法及匹配规则

1、语法

image.png

前缀掩码长度范围:

  前缀过滤列表可以进行精确匹配或者在一定掩码长度范围内匹配,并通过配置关键字greater-equal和less-equal来指定待匹配的前缀掩码长度范围。如果没有配置关键字greater-equal或less-equal,前缀过滤列表会进行精确匹配,即只匹配掩码长度为与前缀过滤列表掩码长度相同的IP地址路由;如果只配置了关键字greater-equal,则待匹配的掩码长度范围为从greater-equal指定值到32位的长度;如果只匹配了关键字less-equal,则待匹配的掩码长度范围为从指定的掩码到关键字less-equal的指定值。

2、匹配规则

image.png

前缀列表的组成及匹配规则:

 前缀过滤列表由IP地址和掩码组成,IP地址可以是网段地址或者主机地址,掩码长度的配置范围为0~32。

 IP-Prefix List中的每一条IP-Prefix都有一个序列号index,匹配的时候将根据序列号从小到大进行匹配。

  如果不配置IP-Prefix的index,那么对应的index在上次配置的同名IP-Prefix的index的基础上,以步长为10进行增长。如果配置的IP-Prefix的名字index都和已经配置了的一项IP-Prefix  List的相同,仅仅只是匹配的内容不同,则该IP-Prefix List将覆盖原有的IP-Prefix List。

 当所有前缀过滤列表均未匹配时,缺省情况下,存在最后一条默认匹配模式为deny。当引用的前缀过滤列表不存在时,则默认匹配模式为permit。

三、配置案例

R1、R2之间运行OSPF

有两条静态路由导入R1

允许在R2的路由表中出现192.168.0.0/16 的路由条目

不允许出现192.169.0.0/24的路由条目

1、拓扑

image.png

R1基础配置

sy
sy R1
int g0/0/0
ip add 12.0.0.1 24 
ospf 1 router-id 1.1.1.1
a 0 
net 12.0.0.1 0.0.0.0
import-route static

R2基础配置

sy
sy R2
int g0/0/0
ip add 12.0.0.2 24 
ospf 1 router-id 2.2.2.2
a 0 
net 12.0.0.2 0.0.0.0

小技巧

不接线又没有下一跳时静态路由的下一跳接口设置为路由黑洞NULL 0

ip route-s 192.168.0.0 16 null 0
ip route-s 192.168.0.0 24 null 0

2、分析

ACL实现

定义ACL

image.png

OSPF中做ACL策略

image.png

R2路由表中仍然有两条5类的LSA条目

image.png

结论:ACL根本无法实现路由过滤

IP-Prefix List实现

定义IP ip-prefix

image.png

OSPF中做ip-prefix 策略

image.png

R2的路由表中只出现了匹配上的192.168.0.0/16这一条

image.png

结论:IP-Prefix List能解决ACL解决不了的问题

四、IE考试题

匹配以下路由禁止使用ACL

image.png

IP ip-perfix 192.168.4.0 22 greater-equal 24 less-equal 24

思考题

老铁们想想这个题该怎么实现呢?????

image.png

相关文章
|
3月前
|
存储 C++ 容器
【C++】Map和Set -- 详解(下)
【C++】Map和Set -- 详解(下)
|
3月前
|
存储 编译器 C++
【C++】List -- 详解(下)
【C++】List -- 详解(下)
|
3月前
|
存储 算法 C++
【C++】List -- 详解(上)
【C++】List -- 详解(上)
|
3月前
|
Linux 网络安全 iOS开发
/config --prefix=/usr/local/ssl --shared 命令里的参数的作用
【4月更文挑战第18天】/config --prefix=/usr/local/ssl --shared 命令里的参数的作用
74 3
|
3月前
|
存储 自然语言处理 C++
【C++】Map和Set -- 详解(上)
【C++】Map和Set -- 详解(上)
|
Web App开发 XML 算法
file_put_contents利用技巧(php://filter协议)
file_put_contents利用技巧(php://filter协议)
277 0
|
缓存
source-map
webpack 配置 source-map
101 0
source-map
|
JSON 缓存 JavaScript
一文了解source-map
一文了解source-map
|
Web App开发
PCIe TLP Prefix & PASID TLP Prefix介绍
PCIe TLP Prefix & PASID TLP Prefix介绍
1704 0
PCIe TLP Prefix & PASID TLP Prefix介绍
|
Linux 开发工具 开发者
有关Linux系统出现Malformed line 1 in source list /etc/apt/sources.list (type)问题的解决方式
以下内容仅代表个人意见,本人亲测有效,如果没有效果可以现将之前的sources.list备份的文件恢复 重要的事情说三遍:记得备份,记得备份,记得备份 本文中所阐述的问题大致是因为由于不正常的关闭影响的sources.list文件的异常,以导致这种问题生成的原因,因此在这里考虑进行重新创建sources.list文件来解决问题的处理方式 本蒟蒻在昨晚做Linux(我用的是Debian,教学要求 )的时候,因为要在 /etc/apt/sources.list里添加一些东西,但是更改完之后,发生了错误:
772 0
有关Linux系统出现Malformed line 1 in source list /etc/apt/sources.list (type)问题的解决方式