① 什么是交换机
在上一篇文章中,我们了解了两台同网段主机如何通信,详情可戳 同网段主机通信原理
但是如果有多台主机呢?这时就需要交换机了。
获得更多技术资料和免费学习视频,加入讨论群:752160765
两台电脑,可以用一根网线直连。
多台电脑,他们都连到交换机上就可以了。
交换机(switch) 是用来连接多个终端(电脑、手机、打印机),然后帮各个终端来转发数据的。
交换机的转发原理 ,是记录下每个终端的mac地址,以及这个mac地址对应哪个接口。
如图,交换机会记录下PC1的mac和PC2的mac,分别在自己的1口和2口,mac地址表如下图
然后,交换机收到的每个数据包,都会查看数据包的目标mac,然后再从这张表中,查到目标mac对应的是哪个接口,然后发出。
获得更多技术资料和免费学习视频,加入讨论群:752160765
那么这张表是怎么来的呢?
交换机是这样学习mac地址条目的,当他收到1个数据包,就会把数据表的源mac,和接收端口比如gi0/0/1做对应,更新mac表。
如果收到1个包,查了目标mac,没查到相应的条目怎么办?
会从所有口发出,这个动作也叫做泛洪。
交换机的mac地址泛洪攻击简介
交换机的mac地址表空间是有限的,比如只能存1万条,当1万条存满,就无法学习更多的mac地址了。这时黑客可以利用这个原理,发送大量的,伪造了不同源mac的数据包,迅速占满交换机的mac地址表,这样交换机就没有空间去学习真正的mac了。
获得更多技术资料和免费学习视频,加入讨论群:752160765
然后,所有的正常通信的包,因为无法学习到mac,都只能泛洪,也就是从所有接口发出。
这样攻击者就可以收到,原本单独发给别人的包,美滋滋。
有防范的方法吗?
家用交换机没什么好方法,企业级交换机一般都内置端口安全功能,可以设置每个接口允许学习的最大mac地址数量。比如每个接口讲道理只会接1个pc,那么可以设置最大学习mac数为3,给点富余。这样,某人发起攻击,也只能占据3个mac条目了,对交换机造不成什么威胁,企业级交换机的mac表都是万条起步的。
更多网络技术公开课,腾讯课堂搜“ 众元教育 ”,戳 免费公开课 ,可直接听课哦!