电子政务 网络管理 常见故障处理

ACL故障排除

来源:网络部撰稿人:网络部发布时间:2015-06-24 字体:[] [][关闭][打印]

 

  ACL(Access Control List,访问控制列表)是用来实现流识别功能的。网络设备为了对特定的报文进行操作,需要配置一系列的匹配规则,以识别出特定的报文,然后根据预先设定的策略对该报文进行操作。ACL常见的应用有:报文过滤、QOS、NAT地址转换和路由策略。

  ACL常见故障主要有:

  1、 配置ACL过滤报文,但没有生效;

  2、 配置ACL过滤报文后,网络连通性产生影响;

  3、 配置了MQC,但所引用的ACL没有匹配到相关流

  下面对上述常见故障的排除方法做简单介绍。

  1、 ACL过滤报文不生效

  (1) 查看防火墙功能是否开启

  在H3C路由器上,防火墙功能缺省是关闭的,可以使用display firewall-statistics命令查看是否开启防火墙功能。

  (2) 检查防火墙的缺省过滤方式

  在路由器上,缺省过滤方式为permit。意味着未匹配到规则的报文会全部通过防火墙。

  (3) 检查ACL规则配置是否正确

  通过命令display current-configuration或display acl all进行检查,确认ACL配置的规则是否正确。

  (4) 检查ACL规则的匹配顺序是否合理

  ACL规则的匹配顺序由定义ACL时的match-order参数决定的。缺省条件下,ACL中各规则的匹配顺序是config,即按照用户配置规则的先后顺序进行规则匹配。所以,在配置ACL的规则时,一般是把掩码较长的规则配置在前面,掩码较短的规则放在后面。对于能匹配到所有流的规则,如permit ip、deny ip等,要配置在最后。

  (5) 检查报文匹配到哪条规则

  对于路由器,通过display acl命令查看报文匹配到哪条规则,进而分析是不是有permit ip等规则允许全部报文通过或规则匹配顺序不合理导致想要阻断的报文通过了设备。

  对于交换机,是基于硬件转发,看不到ACL的匹配计数,可以在traffic behabior中添加accounting行为,查看相应报文匹配到哪条规则。

  查看到报文匹配到哪条规则后,可以修改ACL规则,从而阻断想要被阻断的数据流。

  2、 网络连通性产生影响

  通常配置包过滤,是对部分不需要的流量进行阻断,允许正常数据流通过。如果应用了包过滤后,网络连通性受到影响,可根据以下步骤进行排除:

  (1) 确定是否是包过滤导致的问题

  如果怀疑是包过滤配置不当导致网络连通性故障,可以先把包过滤从接口配置中删除。如果网络连通性恢复了,说明是包过滤配置不当导致的;如果去掉包过滤后,网络连通性没有恢复,说明是其他原因(如路由不可达等)。

  (2) 检查防火墙的缺省过滤方式

  在路由器上,缺省过滤方式为permit。如果配置为deny,则意味着未匹配到规则的报文会被全部过滤掉。

  (3) 检查ACL规则配置是否正确

  通过命令display current-configuration或display acl all进行检查,确认ACL配置的规则是否正确,同时注意查看ACL规则的匹配顺序是否合理。

  (4) 检查是否ACL配置不当导致正常协议交换中断

  在运行相关协议的端口应用ACL做报文过滤时,注意ACL中要允许相关的协议报文通过。如ARP,OSPF,GRE,BGP等。

  3、 配置了MQC,但所引用的ACL没有匹配到相关流

  这种情况下,根据以下步骤进行排除:

  (1) 检查QOS策略是否已经应用到端口

  使用命令display current-configuration或display qos policy interface,来查看相关qos policy的配置是否正确应用到端口上。

  (2) 检查ACL规则配置是否正确

  通过命令display current-configuration或display acl all进行检查,确认ACL配置的规则是否正确。

  (3) 查看报文匹配到哪条规则

  在路由器上,通过display acl命令查看报文匹配到哪条规则。

  由于交换机是基于硬件转发,看不到ACL的匹配计数,可以在traffic behabior中添加accounting行为,查看相应报文匹配到哪条规则。