首页 > 其他分享 >Mininet MAC地址学习:通过Mininet模拟二层交换机和两个主机,通过两个主机通信来了解交换机MAC地址学习过程(sdn基础)

Mininet MAC地址学习:通过Mininet模拟二层交换机和两个主机,通过两个主机通信来了解交换机MAC地址学习过程(sdn基础)

时间:2024-09-07 21:52:35浏览次数:6  
标签:Mininet 主机 端口 地址 MAC 交换机 数据

一.MAC地址学习

1.登录我们创建mininet的虚拟机,创建一个线型拓扑,控制器设置为无。

2.查看全部节点,查看链路信息,然后查看节点信息

3.再打开一个终端(Terminal窗口2),然后打开交换机s1和交换机s2的二层(因为交换机s1和交换机s2是两个SDN交换机,在启动Mininet时没有指定任何控制器,交换机中没有流表的存在,无法进行转发操作。主机h1和主机h2无法进行通信。执行上述命令后,s1和s2就是两台普通的二层交换机了)

4.在Terminal窗口1中,ping俩台主机

5.在Terminal窗口2中查看流表项

由上图可以看到有两条数据帧转发表,但并不是SDN交换机中的流表。这表明交换机已进行过MAC地址学习

二.MAC地址学习分析(Openlab平台,开放实验室)

1. 如下图所示,假设交换机A和B的MAC地址表是空的,主机11向主机33发送数据帧。

2. 交换机A接收到数据帧后,执行以下操作。

(1) 交换机A学习主机11的MAC地址和端口号,此时交换机A的MAC地址表如下图所示。

(2) 交换机A查看自己的MAC地址表。

(3) 如果MAC地址表中有目的主机MAC地址则直接进行数据转发,如果没有则继续执行步骤4。
(4) 交换机A向除源数据发送端口外的其他所有端口发送广播(这里交换机A从端口2和端口3向外发送广播)。

3. 交换机B在接收到数据帧后,执行以下操作。

(1) 交换机B学习源MAC地址和端口号,此时交换机B的MAC地址表如下图所示。

(2) 交换机B查看自己的MAC地址表。

(3) 交换机B向除源数据发送端口外的其他所有端口发送广播(这里交换机B从端口1和端口2向外发送广播)。

4. 主机22查看接收到的数据帧,发现目标MAC地址不是自己,丢弃数据帧。

5. 主机33接收数据帧,主机44丢弃数据帧。

6. 假设这时候主机44要给主机11发送数据帧。

7. 交换机B接收到数据帧后,执行以下操作。

(1) 交换机B学习主机44的MAC地址和端口号,此时交换机B的MAC地址表如下图所示。

(2) 交换机B查看自己的MAC地址表,根据MAC地址表中的条目,单播转发数据到端口3。

8. 交换机A在接收到数据帧后,执行以下操作。

(1) 交换机A学习源MAC地址和端口号,此时交换机A的MAC地址表,如下图所示。

(2) 交换机A查看自己的MAC地址表,根据MAC地址表中的条目,单播转发数据到端口1。

(3) 主机11接收到数据帧。至此,MAC地址学习过程结束。

标签:Mininet,主机,端口,地址,MAC,交换机,数据
From: https://blog.csdn.net/DestinySUT/article/details/142004843

相关文章

  • 第四届机械制造与智能控制国际学术会议(ICMMIC 2024) 2024 4th International Conferenc
    文章目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题六、咨询一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus会议时间:2024年9月27-29日三、大会介绍2024年第四届机械制造与智能控制国......
  • Mac 套壳截图软件有哪些?
    争取用一篇文章让你实现截图加壳自由,告别对套壳截图软件的依赖。点击查看未压缩透明背景超高清原图根据以往我所寻找的,Mac套壳截图软件里面并不完善,有些不尽人意,比如缺乏某种型号或设备的外壳,或分辨率不够,或没有透明背景。于是我恢复了以前Mac套壳截图的老方法,......
  • mac升级node到指定版本
    node版本升级到稳定版18.16.1(1)node-v(2)npmcacheclean-f 在使用npm cacheclear--force清除缓存的时候,报npmWARNusing--forceRecommendedprotectionsdisabled的错误,有可能是镜相源过期的问题  换为npmcacheverify(3) sudonstable//把当前系统的N......
  • Adobe Dimension DN 2024 WIM/MAC下载安装及常用快捷键 (3D设计软件)
    目录一、软件简介1.软件概述2.主要特性3.设计界面二、安装步骤1.下载与解压2.安装过程三、常用快捷键1.基础视图操作2.工具选择与控制3.高级编辑与预览一、软件简介1.软件概述AdobeDimension是一款功能强大的3D设计软件,它旨在简化3D模型的创建、渲染......
  • Adobe Dreamweaver DW WIM/MAC下载安装及常用快捷键 (网站开发和管理)
    目录一、软件概述1.1软件简介1.2适用人群1.3主要特性二、安装步骤2.1下载软件2.2安装准备2.3安装过程三、常用快捷键3.1文件操作3.2编辑操作3.3导航与视图一、软件概述1.1软件简介AdobeDreamweaver是AdobeSystems开发的一款集网页设计、网站开......
  • Adobe Media Encoder ME 2024 WIM/MAC下载安装及常用快捷键 (矢量图形设计软件)
    一、软件简介AdobeMediaEncoder是一款由Adobe公司开发的强大音视频转码软件,主要用于将各种格式的音视频文件转换为其他格式,并进行优化和压缩,以满足不同平台的播放或共享需求。它集成了众多编解码器和输出格式支持,包括H.264、H.265、MPEG-2、MPEG-4等,同时还提供了一系列高级......
  • ffmpeg(各个系统版本安装- Windows11-Mac-Linux)
    各个系统上的安装不建议使用编译安装,大佬的话可以编译安装会各种环境问题,直接使用别人安装好的就行1.Windows11上安装ffmpeg1.官网下载ffmpeg进入DownloadFFmpeg网址,点击下载windows版ffmpeg,使用别人编译好的版本即可在releasebuilds里面选择一个版本(使用release......
  • 如何在Java中获取Windows和Linux/Mac系统上的桌面路径
    在Java中,你可以使用System.getenv()方法来获取环境变量。对于获取桌面路径,你可以根据操作系统的不同来获取相应的环境变量。对于Windows系统,你可以尝试获取USERPROFILE环境变量,它通常指向当前用户的主目录,而Windows的桌面通常位于此目录下的Desktop文件夹内。对于Linux和Mac系统......
  • [计算机网络]我们为什么需要MAC地址
    数据包肯定可以通过IP表而不是MAC表到达目标设备,但是使用动态IP,数据包最终可能会到达错误的设备(当旧设备离线并且新设备采用相同的IP时),新设备无法在没有标识符的情况下确定数据包是否是发给自己的,这时MAC就派上用场了。您需要能够识别网络堆栈所有级别的连接。MAC地址......
  • 使用ensp进行mac泛洪实验
    目录前言使用macof进行mac泛洪使用python的scapy模块进行攻击加固方法前言实验之前我们首先要知道数据链路层的协议,电脑通过交换机的mac地址表进行寻址通信,但是mac地址表有限使用macof进行mac泛洪准备工具:虚拟机kali:192.168.18.131/24         ......