IP-Prefix 配置核心要点与典型应用场景
一、实验拓扑及描述
设备的接口编号及IP编址如图所示;
二、实验要求
1、R2与R3运行OSPF;
2、在R2上配置两条静态路由,目的地分别是172.16.0.0/24及172.16.0.0/16,下一跳为R1;
3、在R2上将静态路由重发布到OSPF,但是要求只将172.16.0.0/16路由注入OSPF。
三、实现步骤与配置
R1的配置如下:
#完成接口IP的配置
sysname R1
interface GigabitEthernet0/0/0
description to AR2G0/0/0
ip address 192.168.255.1 30
interface LoopBack0
ip address 1.1.1.1 32
R2的配置如下:
#完成接口IP的配置
sysname R2
interface GigabitEthernet0/0/0
description to AR1G0/0/0
ip address 192.168.255.2 30
interface GigabitEthernet0/0/1
description to AR3G0/0/1
ip address 192.168.254.2 30
interface LoopBack0
ip address 2.2.2.2 32
#创建OSPF进程1,并且设置router-ID为2.2.2.2;在R1的GE0/0/1口上激活OSPF
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 192.168.254.2 0.0.0.0
network 2.2.2.2 0.0.0.0
R3的配置如下:
#完成接口IP的配置
sysname AR3
interface GigabitEthernet0/0/1
description to AR2G0/0/1
ip address 192.168.254.1 30
interface LoopBack0
ip address 3.3.3.3 32
#创建OSPF进程1,并且设置router-ID为3.3.3.3;在R3的GE0/0/1口上激活OSPF
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 192.168.254.1 0.0.0.0
network 3.3.3.3 0.0.0.0
R2上将直连路由注入RIP
R2增加的配置如下:
[R2]ip route-static 172.16.0.0 24 192.168.255.1
[R2]ip route-static 172.16.0.0 16 192.168.255.1
现在R2的路由表中静态路由有两条:
接下来在R2上部署路由重发布。如果我们直接在OSPF视图下执行import-route static,则这两条静态路由都会被注入到OSPF。你肯定已经想到,可以在执行重发布动作的时候关联一个route-policy,并且在route-policy中去调用一个ACL,通过这个ACL来抓取路由172.16.0.0/16。思路是正确的,但是却无法实现。原因在上一个实验中我们已经解释过了,使用基本ACL去匹配或者抓取路由时,是无法匹配路由的掩码的,因此必须使用另外一个工具:前缀列表(prefix-list)。前缀既能够匹配路由条目的网络号,也能够匹配其掩码。
**R2上增加如下配置:
ip ip-prefix aa index 10 permit 172.16.0.0 16
route-policy route16 permit node 10
if-match ip-prefix aa
quit
#**
ospf 1 router-id 2.2.2.2
import-route static route-policy route16
quit
上面的配置中,“ip ip-prefix aa permit 172.16.0.0 16“这条命令指的是被匹配的路由,网络号的前16个比特必须与172.16.0.0的前16个比特相同,而且掩码必须为16。
完成上述配置后,先看一下R3的路由表:
可以看到,R3学习到了172.16.0.0/16路由,但是172.16.0.0/24的路由则已经被我们过滤了。到此实验就完成了。
四、IP-Prefix 是什么?
IP-Prefix(IP 前缀列表) 是网络设备(如路由器、交换机)中用于匹配 IP 地址或网段的一种灵活过滤工具。它通过定义 “网络地址 + 前缀长度范围” 的规则,精准筛选符合条件的 IP 流量,主要用于路由策略(如路由引入、路由过滤)、策略路由、ACL 联动等场景。
与传统的 ACL(访问控制列表)相比,IP-Prefix 更专注于 IP 地址段的匹配,语法更简洁、灵活性更高(支持前缀长度范围匹配),尤其适合路由层面的过滤需求。
五、IP-Prefix 的核心作用
IP-Prefix 本质是 “IP 地址匹配模板”,核心用于 “筛选符合条件的 IP 流量或路由条目”,具体应用场景包括:
1、 路由过滤:在动态路由协议(OSPF、BGP、RIP)中,过滤引入或发布的路由条目。
2、 例:只允许 192.168.0.0/24 网段的路由通过 OSPF 发布,其他路由全部拒绝。
2、策略路由:基于源 IP 或目的 IP,引导流量走指定路径。
例:将 10.0.0.0/8 网段的流量引导至专线链路,其他流量走互联网链路。
3、路由策略联动:结合路由策略(Route-Policy),实现路由优先级调整、路由属性修改等。
例:匹配到 172.16.0.0/16 网段的路由后,将其优先级改为 100。
VPN 实例隔离:在 VPN 场景中,通过 IP-Prefix 限定 VPN 实例可访问的 IP 范围。
六、IP-Prefix 的配置语法(以华为设备为例)
1、基本配置格式
ip ip-prefix <前缀列表名称> [index <序号>] permit | deny <网络地址> [mask <子网掩码> | prefix-length <前缀长度>] [greater-equal <最小前缀长度>] [less-equal <最大前缀长度>]
2、典型配置示例
示例 1:匹配精确网段(192.168.1.0/24)
ip ip-prefix EXACT_192 permit 192.168.1.0 prefix-length 24 # 仅允许192.168.1.0/24
示例 2:匹配网段及所有子网(10.0.0.0/8 的所有子网,前缀长度 24~32)
ip ip-prefix 10_SUBNET permit 10.0.0.0 prefix-length 8 greater-equal 24 less-equal 32 # 匹配10.0.0.0/24 ~ 10.255.255.255/32
示例 3:拒绝特定网段(172.16.255.0/24),允许其他所有网段
ip ip-prefix FILTER_172 index 10 deny 172.16.255.0 prefix-length 24 # 先拒绝目标网段
ip ip-prefix FILTER_172 index 20 permit 0.0.0.0 prefix-length 0 # 再允许所有网段(默认规则