网络安全准入技术之MAC VLAN

news2024/11/19 20:35:41

网络准入控制作为主要保障企业网络基础设施的安全的措施,特别是对于中大型企业来说,终端类型多样数量激增、终端管理任务重难度大、成本高。

在这样的一个大背景下,拥有更灵活的动态识别、认证、访问控制等成为了企业网络安全的最核心诉求之一。今天本文就分享网络准入技术之中的MAC VLAN技术应用。

文章目录

    • MAC VLAN产生背景
    • MAC VLAN技术优点
    • MAC VLAN运行机制
      • 静态MAC VLAN
        • 手动配置静态MAC VLAN
        • 动态触发端口加入静态MAC VLAN
      • 动态MAC VLAN
    • 推荐阅读

MAC VLAN产生背景

VLAN最常用的划分方式是基于端口划分,该方式按照设备端口来划分VLAN成员,将指定端口加入到指定VLAN中之后,该端口就可以转发该VLAN的报文。该方式配置简单,适用于终端设备物理位置比较固定的组网环境。

但是随着移动办公和无线接入的普及,终端设备不再通过固定端口接入设备,它可能本次使用端口A接入网络,下次使用端口B接入网络。如果端口A和端口B的VLAN配置不同,则终端设备第二次接入后就会被划分到另一VLAN,导致无法使用原VLAN内的资源;如果端口A和端口B的VLAN配置相同,当端口B被分配给别的终端设备时,又会引入安全问题。

如何在这样灵活多变的网络环境中部署VLAN呢?MAC VLAN应运而生。

MAC VLAN是基于MAC划分VLAN,它根据报文的源MAC地址来划分VLAN,决定为报文添加某个VLAN的标签。该功能通常和安全技术(比如802.1X)联合使用,以实现终端的安全、灵活接入。

MAC VLAN技术优点

MAC VLAN具有以下优点:

  • MAC VLAN能够实现精确的接入控制,它能精确定义某个终端和VLAN的绑定关系,从而实现将指定终端的报文在指定VLAN中转发。

  • MAC VLAN能够实现灵活的接入控制,同一终端通过不同端口接入设备时,设备会给终端分配相同的VLAN,不需要重新配置VLAN;而不同终端通过同一端口接入设备时,设备可以给不同终端分配不同的VLAN。

MAC VLAN运行机制

设备是如何根据MAC地址来划分VLAN的呢?当端口收到一个untagged报文后,以报文的源MAC地址为匹配关键字,通过查找MAC VLAN表项来获知该终端绑定的VLAN,从而实现将指定终端的报文在指定VLAN中转发。

MAC VLAN表项有两种生成方式:静态配置和动态配置。

静态MAC VLAN

手动配置静态MAC VLAN

手动配置静态MAC VLAN常用于VLAN中用户相对较少的网络环境。在该方式下,用户需要手动配置MAC VLAN表项,开启基于MAC地址的VLAN功能,并将端口加入MAC VLAN。

其原理为:当端口收到的报文为Untagged报文时,根据报文的源MAC地址匹配MAC VLAN表项。

a. 首先进行模糊匹配,即查询MAC VLAN表中掩码不是全F的表项。将源MAC地址和掩码相与运算后与MAC VLAN表项中的MAC地址匹配。如果完全相同,则模糊匹配成功,为报文添加表项中对应的VLAN Tag并转发该报文。

b. 如果模糊匹配失败,则进行精确匹配,即查询表中掩码为全F的表项。如果报文中的源MAC地址与某MAC VLAN表项中的MAC地址完全相同,则精确匹配成功,为报文添加表项中对应的VLAN Tag并转发该报文。

c. 如果没有找到匹配的MAC VLAN表项,则继续按照其他原则(基于IP子网的VLAN、基于协议的VLAN、基于端口的VLAN)确定报文所属的VLAN,为报文添加对应的VLAN Tag并转发该报文。

当端口收到的报文为Tagged报文时,如果报文的VLAN ID在该端口允许通过的VLAN ID列表里,则转发该报文;否则丢弃该报文。

该方式实现简单,只涉及接入设备,但该方式下需要在终端可能接入的端口手工配置允许终端的MAC VLAN通过,配置量大。

动态触发端口加入静态MAC VLAN

手动配置静态MAC VLAN时,如果不能确定从哪些端口收到指定VLAN的报文,就不能把相应端口加入到MAC VLAN。

采用动态触发方式可以将端口自动加入静态MAC VLAN。在该方式下,配置MAC VLAN表项后,需要在端口上开启基于MAC的VLAN功能和MAC VLAN的动态触发功能,不需要手动把端口加入MAC VLAN。

配置动态触发端口加入静态MAC VLAN后,端口在收到报文时,首先判断报文是否携带VLAN Tag,若带VLAN Tag,则直接获取报文源MAC地址;若不带VLAN Tag,则先进行报文VLAN选择(按照基于MAC的VLAN->基于IP子网的VLAN->基于协议的VLAN->基于端口的VLAN的优先次序为该Untagged报文添加对应的VLAN Tag,并获取该VLAN Tag),再获取报文源MAC地址,然后根据报文的源MAC地址和VLAN查询静态MAC VLAN表项:

  • 如果报文源MAC地址与MAC VLAN表项中的MAC地址精确匹配,再检查报文的VLAN ID是否与对应表项中的VLAN ID一致。若一致,通过该报文动态触发端口加入相应VLAN,同时转发该报文;否则丢弃该报文。

  • 如果报文源MAC地址与MAC VLAN表项的MAC地址不精确匹配,当报文VLAN ID为PVID(Port VLAN ID,端口缺省VLAN),判断端口是否允许报文在PVID内转发。若允许,则在PVID中转发该报文,否则丢弃该报文。当报文VLAN ID不为PVID,判断是否报文VLAN ID为Primary VLAN ID且PVID为对应的Secondary VLAN ID。若是,则转发该报文;否则丢弃该报文。
    动态触发端口加入静态MAC VLAN的处理流程

动态MAC VLAN

动态MAC VLAN是由接入认证过程来动态决定接入用户报文所属的VLAN。该方式下,需要在设备上同时配置MAC VLAN和基于MAC的接入认证方式(比如MAC地址认证或者基于MAC的802.1X认证)。

如果用户发起认证请求,认证服务器会对认证用户名和密码进行验证,如果通过,则会下发VLAN信息。此时设备就可根据认证请求报文的源MAC地址和下发的VLAN信息生成MAC VLAN表项,并自动将MAC VLAN添加到端口允许通过的untagged VLAN列表中。用户下线后,设备又自动删除MAC VLAN表项,并将MAC VLAN从端口允许通过的VLAN列表中删除。

该方式的优点是灵活、安全:

  • 它能够自动识别MAC地址、能够自动创建MAC VLAN表项、能够自动允许MAC VLAN通过接入端口。因此该方式应用于大型网络时能够大大简化配置,使用灵活。

  • 只有用户接入认证成功,才能通过指定的VLAN接入网络,因此提高了网络的安全性。

在有完整的域认证或者有启用radius认证的环境中,动态MAC VLAN已经属于一种基本的网络准入认证方式。

推荐阅读

  • IPV4过渡IPV6的关键技术NAT(Network AddressTranslation,网络地址转换)
  • SDWAN(Software Defined Wide Area Network)概述与优势分析
  • 专门为Web应用程序提供安全保护的设备-WAF
  • 在 Exchange Server 的边缘传输服务器上配置邮件附件筛选
  • Windows系统配置高精度时间服务
  • Cisco交换机本地SPAN和远程SPAN的配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1210426.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自定义GPT已经出现,并将影响人工智能的一切,做好被挑战的准备了吗?

原创 | 文 BFT机器人 OpenAI凭借最新突破:定制GPT站在创新的最前沿。预示着个性化数字协助的新时代到来,ChatGPT以前所未有的精度来满足个人需求和专业需求。 从本质上讲,自定义GPT是之前的ChatGPT的高度专业化版本或代理,但自定…

方阵的施密特正交化与相似对角化

方阵的施密特正交化与相似对角化 施密特正交化 施密特正交化步骤 example 略 相似对角化 相似对角化步骤 step1: step2: step3: step4: example 注:特征值的个数与秩无关 A {{-3, 6}, {-10, 6}}; Eigenvalues[A] V Eigenvectors[A]; P {V[[1]], V[[2]]}; P Transpo…

做一个Springboot文件上传-阿里云

概述 这个模块是用来上传头像以及文章封面的,图片的值是一个地址字符串,一般存放在本地或阿里云服务中 1、本地文件上传 我们将文件保存在一个本地的文件夹下,由于可能两个人上传不同图片但是却同名的图片,那么就会一个人的图片就…

ArkUI实战,深入浅出OpenHarmony应用开发

前言 | 《ArkUI实战》《ArkUI实战》深入浅出的介绍了OpenHarmony开发框架ArkUI组件的使用和应用开发流程,是OpenHarmony应用开发的必备电子书。https://www.arkui.club/ OpenHarmony开发资料归档__南先森-Laval社区OpenHarmony入门看这里 _南先森 Laval社区https:/…

Vue.js的生命周期钩子

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

DAY53 1143.最长公共子序列 + 1035.不相交的线 + 53. 最大子序和

1143.最长公共子序列 题目要求:给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删…

Android图片压缩插件

今天才发现这个还有插件,平时都是传网站上压缩完了又下载下来覆盖原文件。现在有这个了,开发好高效😁!分享给大家,可能对你们有用哈哈😆。也可能你们早都知道了……

信息系统项目管理师(第四版)教材精读思维导图-第十五章到二十四章

请参阅我的另一篇文章,综合介绍软考高项: 信息系统项目管理师(软考高项)备考总结_计算机技术与软件专业技术_铭记北宸的博客-CSDN博客 ​ 思维导图源文件下载链接: 十五章风险管理 十六章采购管理 十七章干系人管理…

如何驾驭逻辑、形式逻辑与AI算法?

逻辑错误与逻辑形式错误是有区别的: 逻辑错误经常表现为没有逻辑因果,用辩证法、阴谋论和统计归纳替代因果演绎;而逻辑形式错误是:前提是形式和内容需要分离,就像数学与语文分开,数学代表形式,…

技术贴 | SQL 执行 - 执行器优化

本期技术贴主要介绍查询执行引擎的优化。查询执行引擎负责将 SQL 优化器生成的执行计划进行解释,通过任务调度执行从存储引擎里面把数据读取出来,计算出结果集,然后返回给客户。 在关系型数据库发展的早期,受制于计算机 IO 能力的…

SLF4J: Class path contains multiple SLF4J bindings.

问题截图 问题原因 这里就是由于hbase 安装路径下的一个文件和hadoop安装路径下的文件起冲突了 解决办法 我的路径: 这个一定要看自己电脑上的路径 /usr/local/hbase/lib/client-facing-thirdparty/ slf4j-log4j12-1.7.25.jar更名为: /usr/local/hb…

手把手带你学习 JavaScript 的 ES6 ~ ESn

文章目录 一、引言二、了解 ES6~ESn 的新特性三、掌握 ES6~ESn 的用法和实现原理四、深入挖掘和拓展《深入理解现代JavaScript》编辑推荐内容简介作者简介精彩书评目录 一、引言 JavaScript 是一种广泛使用的网络编程语言,它在前端开发中扮演着重要角色。随着时间的…

Python | 机器学习之聚类算法

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《人工智能奇遇记》🔖少年有梦不应止于心动,更要付诸行动。 目录结构 1. 机器学习之聚类算法概念 1.1 机器学习 1.2 聚类算法 2. 聚类算法 2.1 实验目的…

基于Vue+SpringBoot的天然气工程业务管理系统 开源项目

目录 一、摘要1.1 项目介绍1.2 项目详细录屏 二、功能模块三、使用角色3.1 施工人员3.2 管理员 四、数据库设计4.1 用户表4.2 分公司表4.3 角色表4.4 数据字典表4.5 工程项目表4.6 使用材料表4.7 使用材料领用表4.8 整体E-R图 五、系统展示六、核心代码6.1 查询工程项目6.2 工程…

MAT工具定位分析Java堆内存泄漏问题方法

原创/朱季谦 一、MAT概述与安装 MAT,全称Memory Analysis Tools,是一款分析Java堆内存的工具,可以快速定位到堆内泄漏问题。该工具提供了两种使用方式,一种是插件版,可以安装到Eclipse使用,另一种是独立版…

Kibana:作为非设计师设计直观的 Kibana 仪表板

作者:Carly Richmond, Marco Vettorello, Giovanni Magni 开发人员、SRE 工程师和才华横溢的技术人员通常需要构建快速仪表板来展示有关其应用程序状态的重要信息,这些信息可供混合受众使用。 如果你不是前端开发人员或设计师,那么构建所有人…

【Mysql】MySQL基于成本的优化

什么是成本 我们之前说 过MySQL 执行一个查询可以有不同的执行方案,它会选择其中成本最低,或者说代价最低的那种方案去真正的执行查询。那么成本是怎么计算的呢,其实在 MySQL 中一条查询语句的执行成本是由下边这两个方面组成的: I/O 成本 …

【Linux】Linux基础IO(下)

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:Linux 🎯长路漫漫浩浩,万事皆有期待 上一篇博客:【Linux】…

JVM 内存区域

JVM内存结构模型 程序计数器: 1.线程私有的,是一块较小的内存空间,当前线程所执行的字节码的行号指示器 2.每个线程都有一个独立的程序计数器,各线程之间程序计数器互不影响,独立存储 3.此内存区域是唯一一个在java虚拟…

u系 kdump查看配置

V4 桌面: 如果能上外网配置网络源安装软件包: 会自动安装以下几个包(不能连接外网直接安装一下几个包即可): 查看kdump配置: Kdump-config show 可以看到USE_KDUMP1 ,生成的vmcore文件在/var…