prefix-list是一个Cisco专业术语。
前缀列表用于对路由的匹配和过滤,既能限制前缀的範围,又能限制掩码的範围。
前缀列表的格式Ip prefix-list A permit a.a.a.a/length ge le
基本介绍
- 中文名前缀列表
- 外文名prefix-list
前缀列表特徵
- 前缀列表的性能比访问列表高。路由器将前缀列錶转换成树结构,其中的每个分支表示一项测试,Cisco IOS 软体能够更快地确定是允许还是拒绝。
- 支持增量修改。对于前缀列表,可对其条目进行增量修改。可给前缀列表的每行指定序列号,路由器将根据序列号对列表中的条目进行排序。只要最初指定的序列号不是连续的,以后就可插入列表行。还可删除各行,而不用删除整个列表。
- 命令行界面对用户友好。
- 灵活度高。例如,路由器可根据指定的位数确定路出更新中的网路号是否与前缀列表匹配。
前缀列表可包含任意数量的行,每行都指出了测试和结果。路由器根据前缀列表评估路由时,匹配的第一行将指出允许还是拒绝。如果不与任何行匹配,结果将为拒绝。
使用前缀列表
使用前缀列表进过滤时,需要判断路由的前缀与前缀列表中的前缀是否匹配,这类似于使用访问列表。
根据如下规则确定允许还是拒绝前缀通过。
- 空前缀列表允许所有前缀通过。
- 如果前缀允许通过,将使用相应的路由;如果前缀被拒绝,则不使用相应的路由。
- 前缀列表包含序列号的语句组成,路由器从前缀列表的第一条(序列号最小的)语句开始检查。
- 找到匹配的语句后,路由器不算检查前缀列表的其他语句。为提高效率,可将最常见的条件放在前面,方法是给它指定较小的序列号。
- 如果前缀不与前缀列表中的任何条目匹配,将被拒绝。
配置前缀列表
要创建前缀列表,可使用全局配置命令ip prefix-list {list-name I list-number} [seq seq-value] {deny I permit} network/length [ge ge-νalue] [le le-value]
参数 | 描述 |
---|---|
list-name | 创建的前缀列表名称(区分大小写) |
list-number | 创建的前缀列表编号 |
seq seq-value | prefix-list 语句的32 位序列号,用于确定过滤时语句的处理顺序。默认序列号易5的递增(5、10、15 等) |
deny I permit | 匹配时採取的措施 |
network/length | 要匹配前缀的长度 |
ge ge-νalue | 要匹配前缀的长度範围 |
le le-value | 要匹配前缀的长度範围 |
关键字ge 和le 都是可选的,它们用于指定要匹配的前缀长度範畴,这数值必须满足如下条件。
length < ge-value < le-value <=32
如果没有指定ge 和le,则必须完全匹配。
可以增量方式重新配置前级列表的条目,可独立地添加或删除条目。
要删除前缀列表,可使用全局配置命令no ip prefix-list list-name ,其中list-name是前缀列表的名称。
要添加或删除前缀列表的文本描述,可使用全局配置命令no ip prefix-list list-namedescription text。
前缀列表序列号
前缀列表序列号是自动生成的——除非禁用自动生成功能。如果禁用了序列号自动生成功能,必须使命令ip preflx-list 的参数seq-value 为每个条自指定序列号。
前缀列表是一个按照序排列的列表。如果前缀与前缀列表的多个条目都匹配,序列号非常重要:只认为前缀与序列号最小的条目匹配。
评估前缀列表时,从序列号最小的条目开始,并沿前缀列表向下部找,直到找到匹配的条目。找到匹配的条目后,根据该条目採取允许或拒绝措施,而不再对前级列表中的其他条目进行评估。
表示示例
例一
ip prefix-list 2 permit 2.2.2.0/24 //(匹配前24位:2.2.2. ,掩码必须为24位)
例二
ip prefix-list 2 permit 2.2.2.0/24 ge 25 le 30 //(匹配前24位:2.2.2. ,掩码必须为25-30位)
例三
ip prefix-list 2 permit 2.2.2.0/24 le 32 //(匹配前24位:2.2.2. ,掩码必须为24-32位)
例四
ip prefix-list 2 permit 2.2.2.0/24 ge 26 //(匹配前24位:2.2.2. ,掩码必须为26-32位)
例五
ip prefix-list 3 permit 0.0.0.0/0 le 32 //(匹配所有)
验证前缀列表
命令 | 描述 |
---|---|
show ip prefix-list [detaill summary] | 显示所有前缀列表的信息。detaill可在输出中包含描述和命中次数 |
show ip prefix-list [detail I summary] prefix-list-name | 以表格方式显示特定前缀列表/长度相关联的策略 |
show ip prefix-list prefix-list-name [network/length] | 显示序列号为指定值的条目 |
show ip prefix-list prefix-list-name [seq sequen-number] | 序列号指定值的条目 |
show ip prefix-list prefix-list-name [network/length] longer | 比指定网路和长度更具体的所有条目 |
show ip prefix-list prefix-list-name [network/length] first-match | 给定前缀匹配的条目 |
clear ip prefix-list prefix-list-name [network/length] | 充值命中次数 |