资料中心

H3C Comware V7平台交换机通过自定义ACL实现 ICMP 单通案例

2020-09-01发表
  • 1收藏
河子 八段

描述

现场拓扑如下:

 

S5820v2交换机作为普通二层设备,与两台电脑PC1、PC2互联。

S5820v2交换机G1/0/1和G1/0/2接口均为access类型,切pvid相同。PC1和PC2 IP地址属于相同网段。

客户要求:

在PC1和S5820v2上能够ping通PC2;PC2不能ping通PC1和S5820v2。


故障配置:

管理员,在S5820v2 G1/0/1接口inbound方向部署packet-filter 3000,规则如下:

#
    acl number 3000
     rule 1 deny icmp source PC2 0
    #
    interface GigabitEthernet1/0/1
     packet-filter 3000 inbound
    #

采用上述配置部署后,发现PC2无法ping通PC1和S5820v2,但是PC1和S5820v2同样无法ping通PC2.客户需求没有实现。

 

问题分析

由于客户要求PC1和S5820v2能够ping通PC2,则S5820v2交换机G1/0/1接口允许接收PC2的回应ICMP报文(ICMP的type=0);同时,PC2不能够ping通PC1和S5820v2,则S5820v2交换机G1/0/1接口不允许接收到PC2的请求ICMP报文(ICMP的type=8)。

若通过高级ACL(ACL 3000~3999)只能精细匹配到Protocol协议类型为ICMP(Protocol=8),无法匹配到请求ICMP报文(ICMP的type=8)和回应ICMP报文(ICMP的type=0),因此高级ACL无法实现。

如果想要实现客户要求,则必须在S5820v2交换机上部署用户自定义ACL(ACL 5000~5999)。


创建匹配阻止ICMP请求报文的自定义ACL 5000,如下

#
    acl number 5000
     rule 1 deny l2 0800 ffff 34
    #

“0800”为匹配ICMP请求报文(type=8,code=0)

“34”为从l2 二层头开始往后的偏移量34字节

在G1/0/1接口inbound方向调用该ACL

#
    interface GigabitEthernet1/0/1
     packet-filter 3000 inbound
    #

按照自定义ACL部署后,即可实现PC1和S5820v2能够ping通PC2;PC2不能够ping通PC1和S5820v2.


注意: 

1、交换机目前仅支持在物理接口inbound方式部署自定义ACL

2、如果交换机接口为trunk/hybrid类型,通过的报文携带一个有vlan_tag报文时,自定义ACL中偏移量需要增加4个字节


提出建议

    +

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

确定

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