• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

S3600交换机配置ACL后出现异常的分析处理

  • 0关注
  • 0收藏 1949浏览
粉丝: 关注:

S3600交换机配置ACL后出现异常的分析处理

一、   组网:

二、   问题描述:

某局点S3600以太网交换机需要新增加一台接入电脑2.1.0.1,但是需要控制这台电脑的访问权限,只允许其可以对2.2.0.0/16网段的访问。现场工程师小G充分了解用户需求后,决定使用交换机ACL流量过滤功能,在接入电脑所在的物理端口下下发ACL来控制数据的访问。小G在S3600交换机上进行了如下配置:

acl number 3002

rule 1 deny ip source 2.1.0.0 0.0.255.255

rule 10 permit ip source 2.1.0.0 0.0.255.255 destination 2.2.0.0 0.0.255.255

interface Ethernet1/0/2

packet-filter inbound ip-group 3002 rule 1

packet-filter inbound ip-group 3002 rule 10

当小G完成配置后发现,接入电脑并不能正常访问允许的2.2.0.0/16网段。经过流量统计和镜像抓包分析发现,数据流量最终在S3600交换机接入端口给丢掉了。于是小G再次对设备配置进行检查,发现设备之前还存在如下配置:

acl number 3001

rule 10 deny ip source 1.1.0.0 0.0.255.255 destination 1.2.0.0 0.0.255.255

interface Ethernet1/0/1

packet-filter inbound ip-group 3001 rule 10

新接入电脑2.1.0.1访问2.2.0.0/16网段的数据流量满足ACL 3002rule 10,数据流所对应的动作为permit,那么交换机连接电脑的端口应该允许该数据流通过,为什么端口会将数据流量丢弃呢?

三、   过程分析:

1. S3600交换机ACL实现机制

S3600交换机芯片的QACL资源是每个block共享的,每个block称为PIC8FE口为1EPIC1GE口为1GPIC。在芯片内部有mask表和rule表,对于流限速和流统计有对应的meter表和counter表。每个EPIC16mask表项,256rule表项,63meter表项,32counter表项。每个GPIC16mask表项,128rule表项,63meter表项,32counter表项。

1.1 硬件ACL资源

对于S3600系列交换机来说,除了系统内部会占用一定数量的ACL资源外,一般给用户可配置的rule数目为每个EPIC 160条,每个GPIC 80条,mask数目为9条。S3600支持匹配报文前80字节的连续4字节的32个字节(可以把前面80个字节分成20段,每段4字节,但每次匹配的只能是其中的8段;实际上在分割这20段的时候还可以更灵活一点,就是每一段的起点可以使任意的偶数字节(当然这个数肯定低于76),如可以是0开始,也可以是2开始)。

1.2 MASK资源分配机制

该设备在进行硬件ACL下发时,首先会查看当前下发规则的mask是否已经存在,如果存在的话,就复用该mask;如果不存在的话,系统从第0mask开始(以递增的方式)查找当前可用的mask空间,找到第一个可用的mask空间后,就分配该mask给配置的规则使用。当然,删除硬件ACL规则时,只有该规则对应的mask空间没有其他规则复用,才会释放该mask资源。这方面S3600-EIS3600-SI版本存在的区别为:在EI版本上,为保证堆叠情况下OSPF功能可用,第15mask被系统固定占用,用户不能使用,而SI版本则没有该限制。

1.3 规则优先级

规则优先级问题是当一个报文符合多个规则,且这些规则对应的动作有冲突时才存在的,如果动作不冲突是不存在优先级问题的。当有冲突发生时,对应mask大的规则优先级高,而按照前面MASK资源分配机制所述,我们实现的配置是mask从低往高占用的,因此也可以笼统的说3600交换机后配置的规则优先级高,先生效。

2. 问题分析结果

根据3600交换机目前ACL的实现机制得知,相同的blockQACL资源是共享的,所以在同一个block里,用户下发的ACL会存在mask资源复用的情况。如果用户后下发的配置规则复用了之前生效的配置规则占用的mask资源的话,就可能会出现优先级不可预期的情况。客户现场出现的问题正是如此,具体分析如下:

 

回顾工程师小G的配置过程,现场设备在成功下发了两条ACL--ACL 3001rule 10ACL 3002rule 1之后,它们将分别占用系统MASK资源12。当ACL 3002rule 10被下发时,发现该规则使用的maskACL 3001rule 10使用的mask完全一样,则复用该mask资源,也就是说ACL 3002rule 10使用的系统mask资源是1。因此,当接入电脑2.1.0.1访问2.2.0.0/16网段的数据流进入E1/0/2端口时,数据流同时符合ACL 3002 rule 1rule 10的流量定义,两个规则的动作存在冲突,将执行mask大的规则对应的动作--deny,所以数据流最终拒绝掉了,这样就可以解释现场出现的问题了。问题原因分析清楚后,我们来看一下该问题的解决方案。

四、   解决方法:

既然引起问题的原因是因为出现了mask资源复用的情况,那么我们见招拆招,为了避免mask资源复用的情况出现,可以从两个方向解决该类问题:

1. 将共用mask的端口挪到不同的block中,使其不再共享相同mask表项

S3600交换机每8个百兆口(如1-89-16以此类推)属于一个block,只有它们才会共享maskrule资源,那么我们可以更改配置,使共用mask的端口挪到不同的block里解决该问题,比如使用e1/0/9替代e1/0/2e1/0/9e1/0/1属于不同的block,不存在资源共享的情况,这样就从根本上解决了该问题。

2. 拆分共用mask资源的rule规则,使其不再共享相同mask表项

就现场的问题来说,我们可以将其中一条rule进行拆分,这样不仅效果相同,同时也避免了公用mask资源的情况发生。比如下面的acl num 3003就是对acl num 3002进行拆分的结果,也可以解决现场的问题:

acl number 3003

rule 1 deny ip source 2.1.0.0 0.0.255.255

rule 2 permit ip source 2.1.0.0 0.0.255.255 destination 2.2.0.0 0.0.127.255

rule 3 permit ip source 2.1.0.0 0.0.255.255 destination 2.2.128.0 0.0.127.255

 


若您有关于案例的建议,请反馈:

作者在2019-06-12对此案例进行了修订
0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作