一、IOS版本的Cisco交换机(二层):

1.Config模式下,配置Mac Access-list

   Switch#conf t

   Switch(config)#mac access-list extended XXXX

   Switch(config-ext-macl)#deny any host MAC-Add

   Switch(config-ext-macl)#permit any any

2.找到交换机上相应的上连端口(一般为Trunk口),将Mac Access-list应用上去

   Switch#conf t

   Switch(config)#int fa X/X

   Switch(config-if)#mac access-group XXXX in

    需要注意的地方:因为Cisco的交换机在应用Mac Access-list的时候,只能在in方向上做mac过滤,而一般我们应用的端口多为上连端口,对于本交换机来说,流量为Out,所以我们如果想要禁用某个二层接入层交换机上的Mac时,只能采取禁止任何其他的Mac地址访问该Mac的方式。这体现在配置Mac Access-list时,禁止的语句要写成deny any host MAC-Add,而不是deny host MAC-Add any。

二、Set命令集的Cisco交换机(二层、三层均可):

采用配置Cam filter的方式

   set cam static filter MAC-Add VLAN

三、华为交换机:

1.配置Link Acl

   <Switch>system-view

   [Switch]acl name XXXX link match-order auto

   [Switch-acl-link-XXXX]rule ID deny ingress MAC-Add 0000-0000-0000 egress any

   [Switch-acl-link-XXXX]rule ID permit ingress any egress any

2.应用Link Acl

   <Switch>system-view

   [Switch]packet-filter link-group XXXX

    华为的Acl是在全局配置下应用的,不需要应用到具体的上连端口,它可以控制单独MAC的访问方向,不过它没有host关键字,需要用到MAC Addr的反掩码,如果是单独一个MAC,则反掩码是0000-0000-0000。

附录一:各种交换机下查看MAC-端口对应关系的命令

IOS版本Cisco交换机:show mac-address-table

Set命令集的Cisco交换机:show cam dynamic

华为交换机:display mac-address

如果某个MAC-Addr显示对应的端口为上连的Trunk口,则这个MAC-Addr不是本交换机物理接口上学习到的,而是在其他交换机上。

附录二:各种交换机MAC-Addr的格式

IOS版本Cisco交换机:xxxx.xxxx.xxxx

Set命令集的Cisco交换机:xx-xx-xx-xx-xx-xx

华为交换机:xxxx-xxxx-xxxx

 

cisco交换机根据端口查看MAC-IP 信息!

1,直连交换机上查看端口信息,得出MAC
IDC-2960G48-B11-103#sh mac address-table interface gi0/36
          Mac Address Table
-------------------------------------------

Vlan    Mac Address       Type        Ports
----    -----------       --------    -----
  90    001b.fcdd.e4a9    DYNAMIC     Gi0/36
Total Mac Addresses for this criterion: 1

2,登录到级联的上联交换机(中心交换)上查询该MAC地址对应的IP信心

IDC-3750G-12S-01>sh ip arp | in 001b.fcdd.e4a9
Internet  192.168.90.15         181   001b.fcdd.e4a9  ARPA   Vlan90

 

转自:http://blog.163.com/netchen@126/

http://hi.baidu.com/racky5688/item/7661b7f4c1ed13b031c19906