科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道建立MAC地址过滤机制

建立MAC地址过滤机制

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

大家可能都了解以太网的MAC地址是什么。但很可能不知道在Cisco IOS中可以用MAC地址做什么。

作者:techrepublic.com.com 2006年11月30日

关键字: 以太网 MAC地址 CISCO

  • 评论
  • 分享微博
  • 分享邮件
大家可能都了解以太网的MAC地址是什么。但很可能不知道在Cisco IOS中可以用MAC地址做什么。

一个以太网MAC地址是用来标示这个世界上每一台以太网设备的独一无二的标志。每个制造商在制造网络设备时(比如以太网卡,无线设备,路由器,交换机)会将这个地址预编程 到他们的设备中。

一个MAC地址可以被叫成别的名字,包括“物理地址(Windows中的叫法)”,“以太网地址”,以及“硬件地址”。不管你怎么叫它,它就是一个12位字符的16进制字符串。下面 是示例:

1234.5678.90ab
12-34-56-78-90-ab
12.34.56.78.90.ab

测定你的MAC地址
在Windows中,你可以使用“ipconfig /all”命令找出你的MAC地址。

表格A

提供了一个示例。

在该命令的输出中,你可以看到MAC地址在“物理地址列表”下面。你也可以在电脑连接的交换机上,使用“show mac-address-table”命令看到类似的信息。这里是个实例:

Switch# show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
All 0014.1c40.b080 STATIC CPU
All 0100.0ccc.cccc STATIC CPU
All 0100.0ccc.cccd STATIC CPU
All 0100.0cdd.dddd STATIC CPU
1 000f.1fd3.d85a DYNAMIC Fa0/14

而在一台Cisco路由器上,你可以使用“show interfaces”命令查到你的接口使用的MAC地址。下面是示例:

RouterB# show interfaces
Ethernet0/0 is up, line protocol is up
Hardware is AmdP2, address is 0003.e39b.9220 (bia 0003.e39b.9220)
Internet address is 1.1.1.1/8

在每一个接口的第二行,你可以看到硬件地址行后面跟着BIA(永恒地址,burned in address)。在这个例子里,硬件地址是0003.e39b.9220。

在Cisco路由器上的每一个以太网接口都有它自己的以太网MAC地址。而特殊设备(比如路由器和交换机),有很多特别的内置地址,比如前面使用“show mac-address-table”命 令输出中的4个显示;就是那些列出了STATIC类型的行。

修改MAC地址
我们将修改默认的MAC地址叫做“MAC欺骗”。这个词听起来很负面,因为它更多的被用于不正当的活动,特别是无线网络的攻击方面。不过,MAC欺骗也有它正当的用途,比如测试 MAC过滤功能。

要在你的Cisco路由器上修改MAC地址,在接口配置模式使用“mac-address”命令。只要在该命令后附带要修改的新MAC地址就可以了——就这么简单。这里是个例子。

RouterB# conf t
Enter configuration commands, one per line. End with CNTL/Z.
RouterB(config)# int e0/0
RouterB(config-if)# mac-address 0000.0000.0001
RouterB(config-if)#^Z
RouterB#
RouterB# show int e0/0
Ethernet0/0 is up, line protocol is up
Hardware is AmdP2, address is 0000.0000.0001 (bia 0003.e39b.9220)
Internet address is 1.1.1.1/8

在修改了MAC地址之后,你可以使用“show interface”命令查看修改后的MAC地址。

使用基于MAC地址的通信过滤
假设,通过一个协议分析器,你发现一个设备在你的网络上发送你不希望出现的通信。看起来这台设备是多宿主的——也就是说,这台设备在用多个IP进行通讯发送。

你可以通过使用“show mac-address-table”命令找到该设备使用的交换机端口,然后对该端口进行关闭。但是如果它连接的是集线器或者其他设备或是来自其他网络,总之是你 控制不了的设备该怎么办呢?

另一个选择就是在路由器或者交换机上使用MAC地址对通信进行过滤。这里是个示例:

Cat3750Switch(config)# mac access-list ext filtermac
Cat3750Switch(config-ext-macl)# deny host 0000.0000.0001 any
Cat3750Switch(config-ext-macl)# permit any any
Cat3750Switch(config-ext-macl)# exit
Cat3750Switch(config)# int g1/0/40
Cat3750Switch(config-if)# mac access-group filtermac in

在本例中我们使用了一台Cisco Catalyst 3750 以太网交换机,我们建立了一个扩展MAC地址存取列表,这个列表的名字叫做filtermac。这个ACL会拒绝所有源MAC地址是 0000.0000.0001的通信数据,而除此以外的所有数据都放行。然后我们将这个MAC地址ACL应用到网络接口1/0/40,从而阻止任何使用该MAC地址的设备向该接口发送数据,不管其IP 地址是什么。

要留意,使用MAC地址过滤并不是一个安全方法——其他人可以很容易的在你的操作系统中修改MAC地址。

(责任编辑:陈毅东

查看本文的国际来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章