MAC地址每个网卡或者三层网口都有一个MAC地址,是烧在硬件上的,所以也叫硬件地址。MAC地址作为数据链路设备的地址标识符,需要对网络中的每个MAC地址都是唯一的,以便正确识别数据链路上的设备。
MAC地址由6个字节组成。前3个字节代表制造商标识代码,每个网卡制造商都有一个特定的唯一标识号。最后3个字节由制造商分配给每个网卡。厂商可以保证生产出来的网卡不会有相同的MAC地址。
现在可以通过软件修改MAC地址了。虚拟机使用物理网卡的MAC地址,这并不能保证MAC地址是唯一的。但只要MAC地址相同的设备不在同一条数据链路上,就没有问题。
为了方便查看,6字节的MAC地址用十六进制表示。每个字节的8位二进制数用2个十六进制数表示,比如我的网卡MAC地址是E0-06-E6-39-86-31。
什么是字节?什么是一点?
Bit,英文名bit,也叫bit。二进制系统中最小的单位,一位的值不是0就是1。
Byte,英文名byte。一个字节由八位组成。
MAC地址怎么用?
最常用的以太网和WLAN使用MAC地址作为地址标识符进行通信。
以太网在有线局域网中应用广泛,标准简单,传输速率高。下图显示了的常见网络拓扑。
网络拓扑是什么?
网络的连接和配置称为网络拓扑。它不仅可以直观地看到网络的物理连接方式,还可以表示网络的逻辑结构。
以太网数据格式当今最常用的以太网协议标准是以太网II标准。以太网II标准定义的数据帧格式如下。
前同步码由7个字节组成,每个字节固定为10101010。下一个字节称为帧起始定界符,这个字节固定为10101011。这8个字节代表以太网帧的开始,也是对等网卡可以保证与之同步的标志。帧起始定界符的最后两位定义为11,后面是以太网数据帧的帧体。
最小的数据帧是多少字节?
帧的字段总计64字节,其中数据为46字节。加上前同步码,是72字节。因此,最小的数据帧是72字节。在传输过程中,每个数据帧有12字节的数据帧间隙,因此最小可传输数据帧长度为84字节,即672位。
二层转发交换机的原理一台交换机有多个网络端口。通过识别数据帧的目的MAC地址,它根据MAC地址表决定从哪个端口发送数据。MAC地址表不需要在交换机上手动设置,而是可以自动生成。
交换机如何添加、更新和删除MAC地址表条目?
在初始状态下,交换机的MAC地址表是空,不包含任何条目。当交换机的端口接收到数据帧时,它会将数据帧的源MAC地址和接收到的数据帧的端口号作为条目保存在其自己的MAC地址表中,并在接收到数据帧时重置该条目的老化定时器时间。这就是交换机自动添加MAC地址表条目的方式。
添加此MAC地址条目后,如果交换机再次从同一端口收到与源MAC地址具有相同MAC地址的数据帧,交换机将更新此条目的老化定时器,以确保活动条目不会老化。但是,如果在老化时间内没有收到与此条目匹配的数据帧,交换机将从其MAC地址表中删除此老化条目。
您也可以手动将静态条目添加到交换机的MAC地址表中。静态添加的MAC地址条目优先于动态获取的条目转发,静态条目没有老化时间,将始终存储在交换机的MAC地址表中。
如何使用MAC地址表条目进行转发?
当交换机的端口收到单播数据帧时,它会检查数据帧的第2层报头信息,并执行两项操作。一个操作是根据源MAC地址和端口信息添加或更新MAC地址表。还有一个操作就是检查数据帧的目的MAC地址,根据数据帧的目的MAC地址查找自己的MAC地址表。搜索MAC地址表后,交换机将根据搜索结果处理数据帧。这里有三种情况:
单播:主机一对一地发送数据。单播地址是主机的MAC地址。
广播:向局域网中的所有设备发送数据。只有全1的MAC地址才是广播MAC地址,即FF-FF-FF-FF-FF-FF-FF。
泛洪:某个端口接收到的数据从除该端口以外的所有端口发出。泛洪操作广播普通数据帧,而不是广播帧。
VLAN广播域是广播帧可以到达的区域。换句话说,由多台交换机和主机组成的网络就是一个广播域。
网络规模越大,广播域越大,洪泛流量越大,降低了通信效率。广播域内任意两台主机可以任意通信,通信数据有被窃取的风险。
为了解决广播域扩大带来的性能和安全性下降的问题,VLAN技术应运而生。VLAN技术可以从逻辑上将一个物理局域网分成多个广播域,每个广播域称为一个虚拟局域网(VLAN)。每个主机只能属于一个VLAN。属于同一个VLAN的主机通过第2层直接通信。属于不同VLANs的主机只能通过IP路由功能进行通信。通过划分多个VLAN,缩小了广播域的传播范围,过滤了冗余包,提高了网络的传输效率,也提高了网络的安全性。
VLAN原理技术使交换机能够通过在数据帧中插入VLAN标签(也称为VLAN标签)来区分每个数据帧所属的VLAN。
VLAN标签用于区分数据帧所属的VLAN。它是一个4字节字段,插入到以太网帧的报头中。VLAN标记将被插入源MAC地址之后。IEEE 802.1Q标准有这种格式定义和字段组成描述。
长度为2字节,取值为0x8100,用于指示该数据帧携带802.1Q标签。不支持802.1Q标准的设备在收到该数据帧时会将其丢弃。
2字节长,分为三个子字段,用于指示数据帧的控制信息:优先级:3位长,从0到7,用于指示数据帧的优先级。值越大,优先级越高。当交换机拥塞时,优先级高的数据帧将首先被转发。CFI(标准格式指示符):长度为1位,取值为0或1。VLAN ID (VLAN标识符):12位长,用于指示VLAN标签的值。取值范围为1 ~ 4094。
VLAN分割后,交换机如何处理广播消息?
当交换机上划分了多个VLAN时,当交换机收到一个广播数据帧时,它将只在同一个VLAN的端口上广播该数据帧。
VLAN分割后,交换机如何处理目的MAC地址不在MAC地址表中的单播数据帧?
当交换机被划分为多个VLAN时,当交换机接收到目的MAC地址不在自己的MAC地址表中的单播数据帧时,只会在同一个VLAN的端口上泛洪该数据帧。
VLAN分割后,不同VLAN的主机可以通信吗?
在多VLAN环境中,即使交换机的MAC地址表存储了数据帧的目的MAC地址条目,如果对应于该目的MAC地址的端口与数据帧的传入端口处于不同的VLAN,交换机也不会通过MAC地址表中的端口发送数据帧。
总结:在不使用路由转发的前提下,交换机不会将从一个VLAN的端口收到的数据帧转发到其他VLAN的端口。
如何区分不同的VLAN?
例如,通过VLAN ID来区分,VLAN 10和VLAN 20是不同VLAN。
VLAN技术有什么好处?
划分VLAN我们可以用不同的方法将交换机上的每个端口划分成一个VLAN,从而在逻辑上分隔广播域。
交换机通常使用基于端口的VLAN划分方法。在交换机上手动配置和绑定交换机端口和VLAN ID之间的关系。
优点:配置简单。要将端口划分为VLAN,只需将端口的PVID(VLAN端口ID)配置为相应的VLAN ID。
缺点:当终端设备处于移动位置时,可能需要为连接到终端设备的新端口重新划分VLAN。
除了这种方法,还可以通过基于MAC地址划分VLAN、基于IP地址划分VLAN、基于协议划分VLAN、基于政策划分VLAN等方法来划分VLAN。
PVID:接口的默认VLAN ID,是交换机端口配置的参数。默认值为1。
基于跨VLAN交换的原理,终端设备不会生成带有VLAN标签的数据帧,但是它们发送的数据帧被称为无标签帧。它们连接的交换机会用VLAN标记未标记的帧。根据交换机各端口的PVID,判断从该接口接收的无标签帧属于哪个VLAN,转发时插入相应的VLAN标签,使无标签帧成为标签帧。
两台交换机通过端口连接时,接收到的数据帧是标记的还是未标记的?交换机端口会做什么?
根据交换机连接的设备类型,判断每个接口接收到的数据帧是否有标记,从而配置交换机接口的类型。
通过交换机发送数据
主机A封装一个以主机F的MAC地址为目的MAC地址的数据帧,从网卡发送出去。
交换机在接入接口上接收数据帧。查MAC地址表,发现数据帧的目的地址是连接到交换机B的中继接口,于是交换机用接入接口的PVID配置对数据帧进行标记,也就是用VLAN 10对数据帧进行标记,从中继接口转发到交换机B。
交换机在中继接口上接收数据帧。查看MAC地址表,发现是VLAN 10的一个数据帧,目的地址设备连接到VLAN 10的一个接入接口。然后去掉数据帧的VLAN标签,从这个接入接口转发给主机F。
在实验中模拟接入接口和中继接口的配置
实验拓扑图
实验要求
实验步骤
混合接口的配置
三种接口类型的特征:
实验拓扑图
实验要求
实验步骤
终端接入接口接收数据帧处理过程
接入接口发送数据帧处理过程
中继接口接收数据帧处理过程
中继接口发送数据帧的处理过程
参考资料:
图形TCP/IP-竹下隆的历史
网络-田国
路由与交换技术-刘