交换机安全 - MAC地址泛洪

发布时间:2020-07-19 10:49:48 作者:牟海川
来源:网络 阅读:3625
MAC层*** – MAC地址泛洪

    常见的二层***或交换机***是MAC泛洪,***者使用大量无效的源MAC地址,这会导致交换机的CAM表溢出,由于交换机在MAC地址表中找不到目的MAC地址对应的端口,从而导致交换机向其它所有端口定期泛洪数据帧、交换机不会再接收新的合法条目,这会影响到网络中的所有用户的传输速度。

    ***者可通过MAC泛洪实现DOS***,也可能会获取全网的数据包。

    CAM表的容量依据交换机的型号有所不同,常用的Catalyst 接入层交换机为8192,可通过以下的命令查看。

    Switch #show mac-address-table count

    MAC地址的老化时间默认为300秒,可通过如下命令查看

    Switch #show mac-address-table aging-time

***步骤

    1、 ***者以不同的源MAC地址发送多个数据包。

    2、 在短时间内,交换机的CAM表被填满,无法再接受新的条目。***的行为需要持续不断,否则MAC地址老化后会清空CAM表。

    3、 交换机开始把它接收到的所有数据包,向所有端口泛洪。因此,***者可能在任何端口获取网络中的所有数据包。

防御措施

    在交换机端口上限定一个具体的MAC地址或限定MAC地址的数量。可以让交换机自动学习,也可以手动配置MAC地址。

    步骤1:启用端口安全,注意,动态端口不能设置,需要将端口模式设置为Access.

      Switch#conf t

      Enter configuration commands, one per line. End with CNTL/Z.

      Switch(config)#int fa0/1

      Switch(config-if)#switchport mode access

      Switch(config-if)#switchport port-security

    步骤2:设置接口允许接入的最大MAC地址数量为4,默认为1

      Switch(config-if)#switchport port-security maximum 4

    步骤3:指定该接口允许接入的具体MAC地址,该配置为可选项,如不指定,交换机端口会自动学习任意4个MAC地址,并只为这4个MAC地址提供服务。

      Switch(config-if)#switchport port-security mac-address H.H.H

    步骤4:使静态配置在端口上的安全地址老化。当交换机端口启用了端口安全后,默认情况下,端口学到地MAC地址不会老化过期。

      Switch(config-if)#switchport port-security aging static

    步骤5:当不允许的MAC地址尝试接入时,定义该接口采取的行为。

      Switch(config-if)#switchport port-security violation {protect | restrict | shutdown}

      Protect 保护:丢弃未授权地址发来的数据帧,但不会为这个违规行为创建日志消息。

      Restrict 限制:丢弃未授权地址发来的数据帧,创建日志消息并发送SNMP Trap消息。

     Shutdown 关闭:这是默认的模式。交换机从一个端口收到未授权地址发来的数据帧后,就会把这个端口置为err-disabled状态,记录日志并发送SNMP Trap消息,必须要管理员手动开启或使用errdisable recovery特性来重新启用该端口。

检查端口安全配置

    管理员可使用命令“Show port-security”来查看哪些端口启用了端口安全特性。

    交换机安全 - MAC地址泛洪

    加入Interface参数查看特定接口的输出信息:

    交换机安全 - MAC地址泛洪

    还可以使用address变量参数来查看MAC地址表的安全信息。注意:剩余时间(Remaining Age)一项没有信息,因为当交换机端口启用了端口安全后,默认情况下,端口学到地MAC地址不会老化过期。该项只有在为接口配置了过期时间后才会显示出来,相关命令为:switchport port-security aging time 300

    交换机安全 - MAC地址泛洪

    可以使用以下命令查看端口当前连接的MAC地址信息:

    交换机安全 - MAC地址泛洪

使用粘性MAC地址的端口安全

    前面我们讲的端口安全可以通过限制每个交换机端口只允许设置数量的MAC地址,来缓解MAC地址欺骗***。但这并没有指定具体的MAC地址。

    最严格的端口安全实施方案是在每个端口上,只允许指定的MAC地址接入。当然这样会带来很多接入问题,管理员的工作负担也需要考虑。但粘性MAC地址特性能够很好地解决这一问题。

    当使用粘性MAC地址时,交换机端口会自动学习MAC地址,它既可以限制交换机端口,使其只接受单个具体的MAC地址,又无需管理员收集所有合法设备的MAC地址,再手动关联到交换机端口上,有效地减轻了管理员工作负担。

    命令:Switch(config-if)#switchport port-security mac-address sticky

    原理:使用粘性MAC地址时,交换机端口自动学习MAC地址,然后记住这个MAC地址并将其以静态条目的形式存入运行配置(Running configuration)中,并把这个MAC地址当作端口安全特性允许接入的唯一MAC地址。如果交换机重启用,需要重新学习MAC地址。

    注意:

    1、接口会把所有动态安全MAC地址,转换为粘性安全MAC地址,包括在粘性学习特性启用前,动态学习到的地址。

    2、交会机把粘性安全MAC地址添加到运行配置中,并不会添加到启动配置中,除非管理员将运行配置复制到启动配置中。如果存入了启动配置中,重新交换机后无需重新学习MAC地址。

    3、该命令不能用于语音VLAN接口。

    下图所示,Type项由原来的“SecureDynamic”变为“SecureSticky”.

    交换机安全 - MAC地址泛洪

    下图所示,交换机端口学习到的MAC地址以静态条目形式存入到了运行配置中。

    交换机安全 - MAC地址泛洪

在必要的端口上阻塞单播泛洪

    默认情况下,交换机若不知道所收数据包的目的MAC地址,它就会向接收端口所属VLAN中的所有端口进行泛洪。

    但有一些端口不需要泛洪。如端口手动配置了MAC地址,或启用端口安全的端口上,配置了安全MAC地址或学习到了足够的MAC地址。从而减少不必要的流量。

    既可以限制未知目的MAC地址的单播泛洪,也可以限制未知目的MAC地址的组播泛洪。

    语法:

    交换机安全 - MAC地址泛洪


推荐阅读:
  1. 如何在Laravel项目中使用Queue队列
  2. 使用PHP怎么实现一个单文件上传功能

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

数据包 target blank

上一篇:Oracle的临时表

下一篇:ImportError : No module named graphics

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》