ACL反掩码配置错误导致AR28策略路由失效

发布时间:  2012-07-26 浏览次数:  143 下载次数:  0
问题描述

使用AR28进行组网,实现如下需求:

10.40.0.0/27网段的PC访问10.20.3.0/29网段时通过Ethernet2口往外发送报文,不计费;而访问其他网段时通过Tunnel0发送报文,到Radius进行计费。

原配置如下:
acl 3090 match-order config
    rule normal deny ip source 10.40.0.0 0.0.31.255 destination 10.20.3.0 0.0.0.0
    rule normal permit ip source 10.40.0.0 0.0.31.255 destination any
    rule normal deny ip source any destination any
interface Ethernet2 
    description 2GGSN
    mtu 1476
    tcp mss 1420
    ip address 10.20.8.19 255.255.255.240
    ip policy route-policy IPGWtraffic 
interface Tunnel0 
    link-protocol tunnel
    tcp mss 1420
    ip address 192.168.1.1 255.255.255.0
    source 192.168.253.20
    destination 192.168.253.10
 route-policy IPGWtraffic permit 10
    if-match ip address 3090
    apply interface Tunnel0

但是在路由器上完成以上配置后,不能实现客户需求,PC访问所有网段都会计费。

告警信息

处理过程
修改acl 3090下的第一条rule中目标地址的反掩码为0.0.0.7:
acl 3090 match-order config
    rule normal deny ip source 10.40.0.0 0.0.31.255 destination 10.20.3.0 0.0.0.7
问题得到解决。
根因
检查配置,发现配置ACL时有如下错误:
acl 3090 match-order config
    rule normal deny ip source 10.40.0.0 0.0.31.255 destination 10.20.3.0 0.0.0.0
其中10.20.3.0所对应的反掩码为0.0.0.0,匹配的是主机路由。因此,设备下挂PC访问任何网段都不会匹配该条rule,导致所有来源于10.40.0.0网段的流量都会计费。
建议与总结
配置ACL时必须仔细检查反掩码配置。

END