您当前的位置:首页 > 电脑百科 > 网络技术 > 网络知识

什么叫MAC地址学习,记录什么内容

时间:2019-10-28 12:12:28  来源:  作者:

概述

mac地址学习虽然说起来比较简单,但是在工作中,还是经常看小伙伴不能正确的应用,遇到问题时也比较迷茫,不知道如何分析问题。究其原因,可能还是对MAC地址学习的工作原理了解的不够,所以我今天写一篇文章,给还迷糊的小伙伴在普及一下,如果是已经了解的同学,可以当做复习。

MAC地址简介

在OSI七层模型中,每一层都有不同标识符,用来区分不同的设备,这样它们之间才能对等的进行通信。而MAC地址是数据链路层(layer2)标识符,在数据链路层唯一标识一台设备。

科普一下:什么叫MAC地址学习,记录什么内容

OSI七层模型

MAC地址总共有48个比特(bit),在工作中通常使用16进制来表示,一般有两种写法,一种是:HH:HH:HH:HH:HH:HH格式,如下图:

科普一下:什么叫MAC地址学习,记录什么内容

HH:HH:HH:HH:HH:HH

另外一种是:HHHH:HHHH:HHHH,如下图:

科普一下:什么叫MAC地址学习,记录什么内容

HHHH:HHHH:HHHH

中间可以使用冒号(:)或者点(.)分割,看具体的厂商实现。

源MAC vs 目的MAC

我们注意到,在一个以太网报文中,有两个MAC地址:源MAC、目的MAC,如下图所示:

科普一下:什么叫MAC地址学习,记录什么内容

源MAC、目的MAC

那么这两个MAC地址有什么区别呢?这也是大家容易犯迷糊的地方,其实只要记住三句话就可以了:

  1. 源MAC地址是属于报文发送者;
  2. 目的MAC地址是属于报文终结者;
  3. 交换机接收到报文以后,会记录源MAC,同时根据目的MAC查找出接口。

MAC地址学习原理

MAC地址学习是针对于交换机来说的,它说的是交换机在收到一个报文时,会把报文的源MAC地址记录在MAC地址表项中。

如下图所示,交换机E0/1接口收到任何PC1发送的报文,都会把源地址记录在MAC地址表项中:

科普一下:什么叫MAC地址学习,记录什么内容

记录MAC地址表项

交换机MAC地址表项的格式类似于下图:

科普一下:什么叫MAC地址学习,记录什么内容

MAC地址表项

当交换机从别的接口,收到目的MAC是0000:0000:1111的报文时,就会从E0/1接口转发出去,这个也称为查找MAC地址表。

下面我们以一个具体的例子来阐述上面的内容。

原理举例

拓扑

科普一下:什么叫MAC地址学习,记录什么内容

拓扑图

  • 三台PC配置同一个网段的IP地址;
  • 交换机和三台PC相连的接口配置同一个Access VLAN 10;

MAC地址学习

初始情况下,交换机的MAC地址表项是空的,如下图:

科普一下:什么叫MAC地址学习,记录什么内容

初始的MAC Table

当PC1发送的任何报文到达交换机时,例如ARP报文:

科普一下:什么叫MAC地址学习,记录什么内容

ARP报文

交换机都会记录报文的源MAC地址,同时更新在MAC地址表项中,如下图所示:

科普一下:什么叫MAC地址学习,记录什么内容

更新MAC地址表

下次如果收到目的MAC为0000.0000.1111的报文,就会只从E0/1接口转发出去,如下图所示:

科普一下:什么叫MAC地址学习,记录什么内容

特定出接口

估计看到这里,有小伙伴就会问:如果交换机接收到的报文,在MAC地址表找不到目的MAC对应的表项该怎么办?

答案是:在同一个VLAN里进行泛洪。

例如此时PC2发送一个报文,其目的MAC地址为0000.0000.4444,交换机没有这个表项,则交换机会把报文同时发送到PC1和PC3,如下图所示:

科普一下:什么叫MAC地址学习,记录什么内容

交换机泛洪报文

总结

各位小伙伴看完上面的描述,应该对MAC地址学习的原理了解了吧,我们简单的总结出3条结论:

  1. MAC地址学习,记录是接收报文的源MAC地址;
  2. 交换机收到报文以后,会根据目的MAC地址查找出接口;
  3. 如果找不到出接口,会从同一个VLAN里的所有接口转发出去(泛洪);
  4. ​如果找到出接口,会只从特定的出接口转发出去,这个就是MAC地址学习的真正目的:减少网络的流量。

如果各位还有疑问,欢迎留言讨论,也非常欢迎各位关注我的头条号,一起讨论网络问题!



Tags:MAC地址   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
前言上次有写过一篇《20张图深度详解MAC地址表、ARP表、路由表》的文章,里面有提到了MAC地址表。那么什么是MAC地址表?MAC地址表有什么作用?MAC地址表里面包含了哪些要素?今天...【详细内容】
2021-09-09  Tags: MAC地址  点击:(76)  评论:(0)  加入收藏
我们都知道上网需要IP地址和MAC地址(不知道也没关系,请看下文),也称为逻辑地址和物理地址。IP地址和MAC地址有什么联系和区别?我们打个比方,以日常剁手网购寄快递为例:IP地址是你的...【详细内容】
2021-08-10  Tags: MAC地址  点击:(157)  评论:(0)  加入收藏
什么是网关、DNS、子网掩码,它有什么作用,确实,我们平时在网络中总是在不断的提到网关,却很少真正的去了解它。一、什么是网关1、什么是网关网关是一种充当转换重任的计算机系统...【详细内容】
2020-10-10  Tags: MAC地址  点击:(83)  评论:(0)  加入收藏
为什么需要MAC安全?任何网络接入都需要交换机。不管什么型号的交换机这对二层数据转发都会有MAC地址表来进行指导转发。[SW1]dis mac-address summary显示MAC地址总体信息看...【详细内容】
2020-04-10  Tags: MAC地址  点击:(178)  评论:(0)  加入收藏
一、MAC 地址简介1.MAC(Media Access Control)地址用来定义网络设备的位置。MAC 地址由 48 比特长、12 位的 16 进制数字组成,其中从左到右开始,0 到 23bit 是厂商向 IETF 等机...【详细内容】
2020-03-15  Tags: MAC地址  点击:(89)  评论:(0)  加入收藏
一、什么是VLAN VLAN中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络&md...【详细内容】
2020-03-02  Tags: MAC地址  点击:(88)  评论:(0)  加入收藏
云主机 在文件/etc/sysconfig/network-scripts/ifcfg-eth0 中增加一行类似如下MACADDR=00:04:AC:33:1C:3B答:MAC地址是网卡的物理地址,其实在Linux下也可更改MAC地址:1)闭网卡设...【详细内容】
2020-02-29  Tags: MAC地址  点击:(131)  评论:(0)  加入收藏
对于使用MAC电脑的朋友们来说,有时候可能需要知道电脑网卡的MAC地址(也叫物理地址、硬件地址)。例如无线路由器绑定MAC防止蹭网,那么我们该如何查得自己电脑的Mac地址呢?今天小...【详细内容】
2019-12-20  Tags: MAC地址  点击:(189)  评论:(0)  加入收藏
MAC地址表说到MAC地址表,就不得不说一下交换机的工作原理了,因为交换机是根据MAC地址表转发数据帧的。在交换机中有一张记录着局域网主机MAC地址与交换机接口的对应关系的表,交...【详细内容】
2019-12-04  Tags: MAC地址  点击:(113)  评论:(0)  加入收藏
今天上午接到一个客户电话报障说电脑无法上网了,花了差不多半个钟终于搞定,下面记录一下 。客户描述:上周五电脑是可以正常上网的,这周一来公司打开电脑发现上不了网了,并没有对...【详细内容】
2019-11-26  Tags: MAC地址  点击:(126)  评论:(0)  加入收藏
▌简易百科推荐
以京训钉开发平台接口文档为例,使用HttpClient类请求调用其接口,对数据进行增删改查等操作。 文档地址: https://www.yuque.com/bjjnts/jxd/bo1oszusing System;using System.C...【详细内容】
2021-12-28  Wednes    Tags:HttpClient   点击:(1)  评论:(0)  加入收藏
阿里云与爱快路由安装组网教程一、开通好阿里云轻量服务器之后在服务器运维-远程连接处进行远程 二、进入控制台后在root权限下根据需要安装的固件位数复制下面命令。32位:wg...【详细内容】
2021-12-28  ikuai    Tags:组网   点击:(1)  评论:(0)  加入收藏
HTTP 报文是在应用程序之间发送的数据块,这些数据块将通过以文本形式的元信息开头,用于 HTTP 协议交互。请求端(客户端)的 HTTP 报文叫做请求报文,响应端(服务器端)的叫做响应...【详细内容】
2021-12-27  程序员蛋蛋    Tags:HTTP 报文   点击:(5)  评论:(0)  加入收藏
一 网络概念:1.带宽: 标识网卡的最大传输速率,单位为 b/s,比如 1Gbps,10Gbps,相当于马路多宽2.吞吐量: 单位时间内传输数据量大小单位为 b/s 或 B/s ,吞吐量/带宽,就是网络的使用率...【详细内容】
2021-12-27  码农世界    Tags:网络   点击:(3)  评论:(0)  加入收藏
1.TCP/IP 网络模型有几层?分别有什么用? TCP/IP网络模型总共有五层 1.应用层:我们能接触到的就是应用层了,手机,电脑这些这些设备都属于应用层。 2.传输层:就是为应用层提供网络...【详细内容】
2021-12-22  憨猪哥08    Tags:TCP/IP   点击:(35)  评论:(0)  加入收藏
TCP握手的时候维护的队列 半连接队列(SYN队列) 全连接队列(accepted队列)半连接队列是什么?服务器收到客户端SYN数据包后,Linux内核会把该连接存储到半连接队列中,并响应SYN+ACK报...【详细内容】
2021-12-21  DifferentJava    Tags:TCP   点击:(10)  评论:(0)  加入收藏
你好,这里是科技前哨。 随着“元宇宙”概念的爆火,下一代互联网即将到来,也成了互联网前沿热议的话题,12月9日美国众议院的听证会上,共和党议员Patrick McHenry甚至宣称,要调整现...【详细内容】
2021-12-17  王煜全    Tags:Web3   点击:(14)  评论:(0)  加入收藏
一、demopublic static void main(String[] args) throws Exception { RetryPolicy retryPolicy = new ExponentialBackoffRetry( 1000, 3);...【详细内容】
2021-12-15  程序员阿龙    Tags:Curator   点击:(22)  评论:(0)  加入收藏
一、计算机网络概述 1.1 计算机网络的分类按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);按照网络使用者:公用网络、专用网络。1.2 计算机网络的层次结构 TCP/IP四层模...【详细内容】
2021-12-14  一口Linux    Tags:网络知识   点击:(31)  评论:(0)  加入收藏
无论是在外面还是在家里,许多人都习惯了用手机连接 WiFi 进行上网。不知道大家有没有遇到过这样一种情况, 明明已经显示成功连接 WiFi,却仍然提示“网络不可用”或“不可上网”...【详细内容】
2021-12-14  UGREEN绿联    Tags:WiFi   点击:(25)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条