您当前的位置:首页 > 计算机 > 网络通信

21张图详解交换机MAC地址表的五大要素:MAC地址、VLAN、出接口等

时间:10-08来源:作者:点击数:

前言

上次有写过一篇文章,里面有提到了MAC地址表。那么什么是MAC地址表?MAC地址表有什么作用?MAC地址表里面包含了哪些要素?今天带你好好唠唠。

我们以一个案例为例:

如上图:PC1和PC2通过交换机SW1直连,此时PC1想要和PC2通信。

1、根据TCP/IP参考模型,PC1想要和PC2通信,除了需要知道PC2的IP地址,还需要知道PC2的MAC地址,这个我们在之前章节已经讲了,可以通过ARP广播获取PC2的目的IP地址。(PC1的ARP表项如下图)

2、PC1将报文封装好发送给交换机SW1,交换机SW1会查找MAC地址表,匹配到PC2的MAC地址,查找出接口为GE0/0/2。(交换机的MAC地址表如下图)

3、交换机SW1将报文发给PC2,PC2收到后解封装发现目的MAC和目的IP均为自己的,因此接收该报文继续处理。

以上就是整个案例的通信过程,可是我们有没有想过,就是交换机SW1的MAC地址表是怎么生成的?交换机的MAC地址表是啥样的?由哪些要素构成?

MAC地址表

MAC地址表:简单的说,MAC地址表是交换机等网络设备记录MAC地址和端口的映射关系(见下图),代表了交换机从哪个端口学习到了某个MAC地址,交换机把这个信息记录下来,后续交换机需要转发数据的时候就可以根据报文的目的MAC地址去根据MAC地址表转发数据。

华为交换机上可以通过命令display mac-address查看所有类型的MAC地址表项信息;

MAC地址表作用:

1、用于存放交换机所学习到的其它设备的MAC地址信息。

2、用于交换机在转发数据时,根据以太网帧中的目的MAC地址和VLAN编号查询MAC表,快速定位设备的出接口。

MAC地址表主要构成:包括目的MAC地址、设备所属的VLAN、出接口、MAC表项类型、老化时间等。

下面我们就分别来讲下MAC地址表的五大要素。

目的MAC地址

什么是MAC地址?

每个网卡或三层网口都有一个 MAC 地址, MAC 地址是烧录到硬件上,因此也称为硬件地址。MAC 地址作为数据链路设备的地址标识符,需要保证网络中的每个 MAC 地址都是唯一的,才能正确识别到数据链路上的设备。

MAC地址组成?

MAC 地址由 6 个字节组成。前 3 个字节表示厂商识别码,每个网卡厂商都有特定唯一的识别数字。后 3 个字节由厂商给每个网卡进行分配。厂商可以保证生产出来的网卡不会有相同 MAC 地址的网卡。

MAC地址表示方法?

为了查看方便, 6 个字节的 MAC 地址使用十六进制来表示。每个字节的 8 位二进制数分别用 2 个十六进制数来表示。

例如我的网卡 MAC 地址是 34-F6-4B-62-B3-85。可以在自己的PC通过打开cmd通过命令ipconfig /all 查看

交换机是如何学习MAC地址的?

1、交换机在从某接口收到数据帧时会基于源MAC地址学习,然后在MAC地址表中添加MAC地址和接口的映射关系,生成对应的MAC地址表项

2、交换机在转发数据帧时是基于目的MAC地址进行转发

所属VLAN

当交换机上的接口有绑定VLAN时,生成的MAC地址表项会标识接口所属的VLAN。如下图中接口10GE1/0/1的所属VLAN为100。

关于VLAN,我们简单看下VLAN相关的概念。

什么是VLAN?

VLAN是为了在二层隔离广播域而提出的一个概念。

举个例子,我们班级一共有15个人,为了方便管理,我们3人1组,分成组1,组2,组3,组4,组5。那么划分VLAN就类似于分组的概念。

如下图:我们将PC1和PC3划分为VLAN10,PC2和PC4划分为VLAN20,那么相同的VLAN之间可以通信,不同VLAN之间二层不可以通信。

怎么区分不同的 VLAN ?

通过 VLAN ID 进行区分,例如 VLAN 10 和 VLAN 20 就是不同的 VLAN 。

VLAN 技术有哪些好处?

  • 增加了广播域的数量,减小了每个广播域的规模,也减少了每个广播域中终端设备的数量;

  • 增强了网络安全性,保障网络安全的方法增加了;

  • 提高了网络设计的逻辑性,可以规避地理、物理等因素对于网络设计的限制。

VLAN 划分

交换机通常会使用基于端口划分 VLAN 的方法。在交换机上手动配置,绑定交换机端口和 VLAN ID 的关系。

如下图就是基于接口的方式划分VLAN。

优点:配置简单。想要把某个端口划分到某个 VLAN 中,只需要把端口的 PVID (端口 VLAN ID )配置到相应的 VLAN ID 即可。

缺点:当终端设备移动位置是,可能需要为终端设备连接的新端口重新划分 VLAN 。

除了这种方法外,还可以使用基于 MAC 地址划分 VLAN 、基于 IP 地址划分 VLAN 、基于协议划分 VLAN 、基于策略划分 VLAN 等方法来划分 VLAN。

出接口

当交换机收到一个数据包会根据数据帧的目的MAC地址去查找MAC地址表,如果能够匹配到,那么就会根据表项的出接口发送出数据帧。

如上图所示:

1、PC1发送一个如下图所示的数据帧给SW1,目的MAC为PC2的MAC;

2、交换机SW1收到该数据帧后根据目的MAC查找MAC地址表,匹配到表项,按照表项提供的出接口将数据从G0/0/2口转发出去;

3、PC2收到数据帧后进行解封装,通信结束。

MAC地址表表项类型

MAC地址表生成的方式有多种,最常见的就是动态生成MAC地址表项。

下面我们一起看下MAC地址表的表项类型:

1、static:静态MAC地址表项。由用户手工配置,表项不会被老化。

2、blackhole:标识黑洞MAC地址表项,由用户手工配置,表项不会被老化。

3、dynamic:标识动态MAC地址表项,由设备通过源MAC地址学习获得,表项有老化时间,可被老化。

4、security:标识安全动态MAC表项,由接口使能端口安全功能后学习到的MAC地址表项。

5、sticky:标识Sticky MAC表项,由接口使能Sticky MAC功能后学习到的MAC地址表项。

6、mux:标识MUX MAC表项,当接口使能MUX VLAN功能后,该接口学习到的MAC地址表项会记录到mux类型的MAC地址表项中。

7、snooping:根据DHCP Snooping绑定表生成的静态MAC表项类型。

8、evn:标识EVN或EVPN网络中存在的MAC地址表项。

9、authen:用户通过MAC认证或802.1x认证后形成的MAC地址表项。

10、tunnel:通过二层隧道学到的MAC地址。

11、ovsdb:标识通过OVSDB学习到的MAC地址表项。由VMware NSX控制器下发至本端设备获得,表项不会被老化。系统复位或接口板热插拔后不丢失。

老化时间

MAC老化时间:动态MAC地址学习时间,单位是秒。

华为交换机可以通过命令 display mac-address aging-time命令用来查看MAC地址表中动态MAC地址表项的老化时间。

使用本命令查看动态MAC地址表项的老化时间为0秒时,说明学习到的动态MAC地址不会被老化,可能会使MAC地址表项爆炸式增长,降低系统性能。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门