二层交换机是指在同一个IP网段内,数据通过二层交换机进行转发的。数据发送端和接收端都同时处于同一个IP网段内,所以不需要通过IP来寻址,也不需要路由,直接利用各个设备接口的以太网MAC(介质访问控制)地址进行寻址。
MAC地址也称为硬件地址,是处于链路层的地址。以太网的MAC地址由48比特、12个十六进制数字组成。从左到右,0-23位(共有24位)是厂商向IETF(因特网工程任务组)等机构申请用来标识厂商的代码,24位-47位由厂商自动分配,它是各个厂商制造的所有网卡或以太网设备接口的唯一的编号。
以太网MAC地址可以分为3类:
这种类型的MAC地址唯一地标识了以太网的一个节点,该地址也是全球唯一地一个物理地址
48位全位1的MAC地址位广播地址(FF-FF-FF-FF-FF-FF)用来表示LAN(局域网)上的所有节点的设备。
除广播地址外,第8位(从左到右的第8位,对应7位比特位为1的MAC地址为组播MAC地址(例如01-00-00-00-00-00),用来表示LAN上的所有节点,其中以01-80-c2开头的组播MAC地址为BPDU(网桥协议数据单元)MAC地址,一般作为协议报文的目的MAC地址来标识某种协议报文,如STP(生成树协议)BPDU。
二层交换设备的不同接口独立发送数据和接收数据,各个接口属于不同的冲突域。所以可以隔离网络中物理层的冲突域。使得通过它互连的主机(或者网络间)不受流量大小对数据发送冲突的影响。在二层转换中,数据帧转发路径确定的依据是交换机设备在建立的MAC地址表,也就是说在一个范围内数据交换的依据是交换机上建立的MAC地址表。
MAC地址表记录了交换机通过接收的数据帧学习到的其他设备的MAC地址、数据帧进入本地设备的接口(也作为从本设备到数据帧发送设备的出接口)和入接口所加入的VLAN三方面的信息。
MAC地址表表项分为
动态表项:
是由交换机接口通过自动学习帧的方式学习帧中的源MAC地址,再加入本地接口及其加入的VLAN(虚拟局域网)信息而自动生成的。动态MAC地址表保存在本地设备的缓存中,当用户进行重启或者接口卡后,学习的MAC地址表将自动的被清理。每个动态MAC地址表项都可以老化,在一个老化周期他(默认时间为300秒)内表项没有得到更新则被删除。如果在一个老化周期内表项被更新,则该表项的老化时间将被重新开始计算。管理员通过查看本地动态MAC地址表项,可以进行判断两台相连的设备间是否有数据转发;通过查看指定接口关联的动态MAC地址表项个数,可以获取该设备间的接口下通信的用户数。
静态表项:
静态表项由管理员手动进行命令配置,优先级高于动态的MAC地址表项。静态的MAC地址表保存在本设备的内存中,当管理员保存了配置文件设备重启后静态的MAC地址表不会被清理,也不会被老化,只能进行手动的清理。静态MAC地址表项被绑定后,可以保证合法用户的正常使用,防止连接在交换机其他接口的非法用户使用该MAC地址进行攻击。
注意:静态MAC地址表项中指定的MAC地址,必须是单播MAC地址,不能是组播或者广播MAC地址。
IP地址和MAC地址相同点是它们都唯一,不同的特点主要有:
二层交换设备工作在OSI模型的第二层,即数据链路层,它对数据包的转发是建立在MAC(Media Access Control )地址基础之上的。二层交换设备不同的接口发送和接收数据独立,各接口属于不同的冲突域,因此有效地隔离了网络中物理层冲突域,使得通过它互连的主机(或网络)之间不必再担心流量大小对于数据发送冲突的影响。
二层交换设备通过解析和学习以太网帧的源MAC来维护MAC地址与接口的对应关系(保存MAC与接口对应关系的表称为MAC表),通过其目的MAC来查找MAC表决定向哪个接口转发,基本流程如下:
二层交换设备收到以太网帧,将其源MAC与接收接口的对应关系写入MAC表,作为以后的二层转发依据。如果MAC表中已有相同表项,那么就刷新该表项的老化时间。MAC表表项采取一定的老化更新机制,老化时间内未得到刷新的表项将被删除掉。
设备判断目的MAC地址是不是广播地址:
如果目的MAC地址是广播地址,那么向所有接口转发(报文的入接口除外)。
如果目的MAC地址不是广播地址,根据以太网帧的目的MAC去查找MAC表,如果能够找到匹配表项,则向表项所示的对应接口转发,如果没有找到匹配表项,那么向所有接口转发(报文的入接口除外)。
从上述流程可以看出,二层交换通过维护MAC表以及根据目的MAC查表转发,有效的利用了网络带宽,改善了网络性能。图2-6是一个二层交换的示例。
图2-6 二层交换示例
二层交换设备虽然能够隔离冲突域,但是它并不能有效的划分广播域。因为从前面介绍的二层交换设备转发流程可以看出,广播报文以及目的MAC查找失败的报文会向除报文的入接口之外的其它所有接口转发,当网络中的主机数量增多时,这种情况会消耗大量的网络带宽,并且在安全性方面也带来一系列问题。当然,通过路由器来隔离广播域是一个办法,但是由于路由器的高成本以及转发性能低的特点使得这一方法应用有限。基于这些情况,二层交换中出现了VLAN技术。
- 二层交换原理
- 对于网络上的某一设备,如一台计算机或一台[路由器],其IP地址是基于网络拓扑设计出的,同一台设备或计算机上,改动IP地址是很容易的(但必须唯一),而MAC则是生产厂商烧录好的,一般不能改动。我们可以根据需要给一台主机指定任意的IP地址,如我们可以给[局域网]上的某台计算机分配IP地址为192.168.0.112 ,也可以将它改成192.168.0.200。而任一网络设备(如网卡,路由器)一旦生产出来以后,其MAC地址不可由本地连接内的配置进行修改。如果一个计算机的网卡坏了,在更换网卡之后,该计算机的MAC地址就变了。
- 长度不同。IP地址为32位,MAC地址为48位。
- 分配依据不同。IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商。
- 寻址协议层不同。IP地址应用于OSI第三层,即网络层,而MAC地址应用在OSI第二层,即数据链路层。 数据链路层协议可以使数据从一个节点传递到相同链路的另一个节点上(通过MAC地址),而网络层协议使数据可以从一个网络传递到另一个网络上(ARP根据目的IP地址,找到中间节点的MAC地址,通过中间节点传送,从而最终到达目的网络)。
- MAC地址与IP地址区别
- MAC地址表
- 组播MAC地址
- 广播MAC地址
- 物理MAC地址
- MAC地址解释
- 二层交换机定义