5虚拟局域网构建

news2024/11/29 22:55:38

前面简单介绍了使用交换机连接不同的服务器,这次我们看看怎么搞虚拟局域网。

虚拟局域网,也被称为VLAN(Virtual Local Area Network),是一个网络的划分概念,使得一组网络设备可以表现得像在同一个物理网络中,即使它们在地理上并不共享同一个物理网络连接。

在没有虚拟局域网的情况下,设备必须是物理连接在同一个网络交换机上才能形成局域网。而通过使用虚拟局域网,可以将设备虚拟组合在一起,无论它们在物理层面上是否彼此相连,使它们能够进行网络通信就好像它们是在同一个局域网中一样。

原因

为什么要有虚拟局域网?

  1. 广播风暴:交换机上的每一个端口都处于不同的冲突域(也就是每个端口都享有独立的带宽)。但局域网中所有的端口都处在同一个广播域,那么就意味着如果有一台终端发出广播帧(如ARP、DHCP),局域网中所有的终端都能够接收到。网络资源被大量占用和浪费。
  2. 安全问题:网络黑客会利用局域网中广播来进行攻击,比如比较常见的 ARP 攻击;或者某台主机上安装了分组嗅探器,那么这台主机就会接收下它收到的所有数据,很可能造成信息泄露

简介

为了解决局域网广播域的问题,IEEE 协会专门设计规定了 802.1Q 的协议标准,这就是虚拟局域网 VLAN(Virtual Local Area Network,)技术,它利用软件实现了二层广播域的划分,在不增加成本的情况下,完美解决了路由器划分广播域的困难。

交换机为用户提供的一种服务,之所以称为“虚拟”局域网,是因为把物理上的局域网根据一定的原则划分为多个小的逻辑网络,这些小的逻辑网络形成各自的广播域,也就是虚拟局域网VLAN。

image-20231029175447860.png

具有 VLAN 功能的交换机上会维护 VLAN 数据表,记录着哪些终端属于同一个 VLAN。同一个 VLAN 是一个广播域,不同的 VLAN 间的设备不能直接通信。

image-20231029175512440.png

Vlan划分

方式优缺点样式
基于端口1.定义简单 2.适合小型网络 3.适合稳定网络Port1 - Vlan5
基于MAC地址1.初期配置复杂 2.后期维护简单MAC1 - Vlan5
基于子网1.配置简单 2.后期维护简单IP 1.1.1.1/24 - Vlan5
基于协议1.应用比较少IP协议 - Vlan5

Vlan工作过程

Vlan比标准以太网帧多了tag,tag里有Vlan编号。交换机根据这个格式,就能做特殊的操作了。

image-20231102235547518.png

交换机有两类端口,ACCESS端口和TRUNK端口,两个端口的作用和能力不同。

ACCESS端口

image-20231103000446225.png

当“主机 A”向“主机 C”发送数据,交换机收到主机 A 发来的标准以太帧后,通过查询“vlan 表”确认该端口属于 vlan5,就在该数据帧打上 vlan5 的标签。 交换机通过查询 MAC 地址表确定转发端口为 port 7 而后通过查询 VLAN 表发现 port 7 端口也属于 VLAN5 和数据帧携带的 vlan id 一致,那么交换机在转发该数据帧前会剥去数据帧的 vlan tag 将其恢复为标准以太帧之后从 port5 转发给目的主 机 C。

当“主机 A”向“主机 D”发送数据,交换机收到主机 A 发来的标准以太帧 后通过查询“vlan 表”确认该端口属于 vlan5,就在该数据帧打上 vlan5 的标签。 交换机通过查询 MAC 地址表确定转发端口为 port 10,而后通过查询 VLAN 表发 现 port 10 端口属于 VLAN10 和数据帧携带的 vlan id 不一致,那么交换机就会将 该数据帧丢弃。

image-20231103000313007.png

TRUNK端口

对于这种布局下的通信,需要使用Trunk口。

image-20231105233153677.png

交换机默认的 access 链路类型端口在转发数据帧时需要将数据帧中的 vlan tag 剥离。如果交换机之间的链路能够传递带有 vlan tag 的数据帧,那么就能保证 vlan 信息不会丢失,实现跨交换机 vlan 通信。Trunk 链路类型端口可以接收和发送多个 vlan 的数据帧,并且在接收和发送过程中不对数据帧中的 vlan tag 进行任何操作。

image-20231105233308779.png

当行政部的 PCA 发出标准以太帧,到达交换机 SW1 的端口 E1/0/2。Port2 属于 access 链路类型端口,所以 SW1 收到数据帧之后查询 vlan 表发现 E1/0/2 属于vlan10,那么就将数据帧打上 vlan10 的标签。然后 SW1 查询自己的 MAC 地址表,发现需要通过端口 E1/0/1 转发出去,而 E1/0/1 端口是 trunk 链路类型端口,允许 vlan10 通过,那么该数据帧就通过 port1 转发到交换机 SW2。

SW2 接收到该数据帧,根据数据帧中的目的 MAC 地址查询 MAC 地址表找到了转发端口 E1/0/5,之后在 vlan 表中查询发现 E1/0/5 所属 vlan 和数据帧携带的vlan id 一致。E1/0/5 端口为 access 链路类型端口,那么交换机在转发该数据帧前会剥去数据帧的vlan tag将其恢复为标准以太帧之后从端口E1/0/5转发给目的主机 PCC。

实战

先用一个交换机,带三个PC,都是默认的Vlan1,互相是可以ping通的

hcl_7148db071733.png

<H3C>ping 112.112.112.1
Ping 112.112.112.1 (112.112.112.1): 56 data bytes, press CTRL_C to break
56 bytes from 112.112.112.1: icmp_seq=0 ttl=255 time=10.898 ms
56 bytes from 112.112.112.1: icmp_seq=1 ttl=255 time=2.828 ms
56 bytes from 112.112.112.1: icmp_seq=2 ttl=255 time=2.286 ms
56 bytes from 112.112.112.1: icmp_seq=3 ttl=255 time=2.215 ms
56 bytes from 112.112.112.1: icmp_seq=4 ttl=255 time=2.290 ms

--- Ping statistics for 112.112.112.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 2.215/4.103/10.898/3.404 ms

image-20231106001920944.png

把PC2\PC3连放到Vlan10,PC4放到Vlan20,测试连通性

[H3C]vlan 10
[H3C-vlan10]port GigabitEthernet1/0/1
[H3C-vlan10]port GigabitEthernet1/0/2
[H3C-vlan10]quit
[H3C]vlan 20
[H3C-vlan20]port GigabitEthernet1/0/3
[H3C]display vlan
[H3C]display vlan 10
[H3C]display vlan 20

从PC2 ping PC3可以,ping PC4失败

<H3C>ping 112.112.112.2
Ping 112.112.112.2 (112.112.112.2): 56 data bytes, press CTRL_C to break
56 bytes from 112.112.112.2: icmp_seq=0 ttl=255 


<H3C>ping 112.112.112.3
Ping 112.112.112.3 (112.112.112.3): 56 data bytes, press CTRL_C to break
Request time out

image-20231106004803584.png

再加一台交换机,两台交换机相连接口设置为TRUNK口,第二台交换机也有Vlan20,有PC5,试试PC4和PC5互不互通,PC2和PC5互不互通

[H3C]interface GigabitEthernet 1/0/10
[H3C-GigabitEthernet1/0/10]port link-type trunk
[H3C-GigabitEthernet1/0/10]port trunk permit vlan 20
[H3C-GigabitEthernet1/0/10]display this
#
interface GigabitEthernet1/0/10
 port link-mode bridge
 port link-type trunk
 port trunk permit vlan 1 20
 combo enable fiber
#
return


<H3C>system-view
[H3C]sysname SW2
[SW2]vlan 20
[SW2-vlan20]port GigabitEthernet 1/0/1
[SW2-vlan20]quit
[SW2]interface GigabitEthernet 1/0/10
[SW2-GigabitEthernet1/0/10]port link-type trunk
[SW2-GigabitEthernet1/0/10]port trunk permit vlan 20
[SW2-GigabitEthernet1/0/10]display this
#
interface GigabitEthernet1/0/10
 port link-mode bridge
 port link-type trunk
 port trunk permit vlan 1 20
 combo enable fiber
#
return

从pc4 ping pc6就通了

<H3C>ping 112.112.112.4
Ping 112.112.112.4 (112.112.112.4): 56 data bytes, press CTRL_C to break
56 bytes from 112.112.112.4: icmp_seq=0 ttl=255 time=26.016 ms

从pc2 ping pc6不通

<H3C>ping 112.112.112.4
Ping 112.112.112.4 (112.112.112.4): 56 data bytes, press CTRL_C to break
Request time out

总结

组网还是挺好玩的,实战比理论知识要简单一些

最后

大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)

我的个人博客为:https://shidawuhen.github.io/

往期文章回顾:

  1. 设计模式
  2. 招聘
  3. 思考
  4. 存储
  5. 算法系列
  6. 读书笔记
  7. 小工具
  8. 架构
  9. 网络
  10. Go语言

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

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

相关文章

大家都在用的数据安全运维管理系统是哪家?有什么功能?

随着数字化大力发展&#xff0c;越来越多的企业开始重视数据安全&#xff0c;开始采购数据安全运维管理系统。但面对市面上多个品牌的数据安全运维管理系统&#xff0c;企业采购时候往往是蒙圈的。因此不少负责人在问&#xff0c;大家都在用的数据安全运维管理系统是哪家&#…

时间序列预测模型实战案例(八)(Informer)个人数据集、详细参数、代码实战讲解

论文地址->Informer论文地址PDF点击即可阅读 代码地址-> 论文官方代码地址点击即可跳转下载GIthub链接 本文介绍 本篇博客带大家看的是Informer模型进行时间序列预测的实战案例&#xff0c;它是在2019年被提出并在ICLR 2020上被评为Best Paper&#xff0c;可以说Inform…

麒麟操作系统登录双因素认证方案 安当加密

麒麟操作系统安全登录方案可以采取以下几种方式&#xff1a; 账户密码认证&#xff1a;用户登录时需要输入正确的账户和密码&#xff0c;账户和密码是用户登录系统的必要条件。为了保证账户和密码的安全性&#xff0c;可以采用加密算法对密码进行加密存储&#xff0c;并且限制…

CTF工具音频隐写神器MP3stego安装和详细使用方法

音频隐写MP3stego安装和详细使用方法 1.MP3stego介绍&#xff1a;2.MP3stego下载安装&#xff1a;3.MP3stego使用教程&#xff1a;4.MP3stego使用案例&#xff1a;5.MP3stego总结&#xff1a; 1.MP3stego介绍&#xff1a; MP3stego是一个在通用的MP3音频文件中隐写的软件&…

1. Collection,List, Map, Queue

1. java集合框架体系结构图 2. Collection派生的子接口 其中最重要的子接口是&#xff1a; 1&#xff09;List 表示有序可重复列表&#xff0c;重要的实现类有&#xff1a;ArrayList, LinkedList ArrayList特点&#xff1a;底层数组实现&#xff0c;随机查找快&#xff0c;增删…

【FastCAE源码阅读4】VTK OrientationMarkerWidget方向标记组件的使用

FastCAE前处理窗口有个方向指示的组件&#xff0c;会跟踪场景进行旋转&#xff0c;这种设计在很多三维软件都有类似的设计&#xff0c;效果如下图&#xff1a; FastCAE采用的是VTK自带的vtkOrientationMarkerWidget实现的&#xff0c;具体代码如下&#xff1a; void Graph3D…

Springboot在线考试系统 毕业设计-附源码82626

Springboot在线考试系统 摘 要 信息化社会内需要与之针对性的信息获取途径&#xff0c;但是途径的扩展基本上为人们所努力的方向&#xff0c;由于站在的角度存在偏差&#xff0c;人们经常能够获得不同类型信息&#xff0c;这也是技术最为难以攻克的课题。针对在线考试等问题&am…

基于Pytorch框架的LSTM算法(一)——单维度单步滚动预测(2)

#项目说明&#xff1a; 说明&#xff1a;1time_steps滚动预测代码 y_norm scaler.fit_transform(y.reshape(-1, 1)) y_norm torch.FloatTensor(y_norm).view(-1)# 重新预测 window_size 12 future 12 L len(y)首先对模型进行训练&#xff1b; 然后选择所有数据的后wind…

“利用义乌购API揭秘跨境贸易商机:一键获取海量优质商品列表!“

义乌购API可以根据关键词取商品列表。通过调用义乌购API的item_search接口&#xff0c;传入关键词参数&#xff0c;可以获取到符合该关键词的商品列表。 以下是使用义乌购API根据关键词取商品列表的步骤&#xff1a; 注册义乌购开发者账号并获取授权码和密钥。在代码中导入义…

SAP-MM-定义计量单位组

业务场景&#xff1a; 有些物料的计量单位是相同的&#xff0c;为了快速维护物料的计量单位的转换关系&#xff0c;可以创建计量单位组&#xff0c;输入转换关系时&#xff0c;输入组就可以直接转换&#xff0c;不需要单个维护 SPRO-后勤常规-物料主数据-设置关键字段-定义计…

享搭低代码平台:快速构建符合需求的进销存管理系统应用

本文介绍了享搭低代码平台如何赋予用户快速构建进销存管理系统应用的能力。通过在应用商店安装费用进销存管理模板&#xff0c;并通过拖拽方式对模板进行自定义扩充&#xff0c;用户可以快速搭建符合自身需求的进销存管理系统&#xff0c;从而提高管理效率和优化运营。 介绍低代…

shopee、亚马逊卖家如何安全给自己店铺测评?稳定测评环境是关键

大家都知道通过测评可以提升产品的转化率&#xff0c;提升产品的销量&#xff0c;那么做跨境平台的卖家如何安全的给自己店铺测评呢&#xff1f; 无论是亚马逊、拼多多Temu、shopee、Lazada、wish、速卖通、敦煌网、Wayfair、雅虎、eBay、Newegg、乐天、美客多、阿里国际、沃尔…

进销存管理系统如何提高供应链效率?

供应链和进销存系统之间有着密切的联系。进销存系统是供应链管理的一部分&#xff0c;用于跟踪和管理产品的采购、库存和销售。进销存管理是供应链管理的核心流程之一&#xff0c;它有助于提高效率、降低成本、增加盈利&#xff0c;同时确保客户满意度&#xff0c;这对于企业的…

HackTheBox-Starting Point--Tier 1---Ignition

文章目录 一 题目二 实验过程 一 题目 Tags Web、Common Applications、Magento、Reconnaissance、Web Site Structure Discovery、Weak Credentials译文&#xff1a;Web、常见应用、Magento、侦察、网站结构发现、凭证薄弱Connect To attack the target machine, you must …

Docker安装Minio(稳定版)

1、安装 docker pull minio/minio:RELEASE.2021-06-17T00-10-46Z docker run -p 9000:9000 minio/minio:RELEASE.2021-06-17T00-10-46Z server /data 2、访问测试 3、MinIO自定义Access和Secret密钥 要覆盖MinIO的自动生成的密钥&#xff0c;您可以将Access和Secret密钥设为…

干货分享 | 3D WEB轻量化引擎HOOPS Communicator如何读取复杂大模型文件?

HOOPS Communicator是一款简单而强大的工业级高性能3D Web可视化开发包&#xff0c;其主要应用于Web领域&#xff0c;主要加载其专有的SCS、SC、SCZ格式文件&#xff1b;HOOPS还拥有另一个桌面端开发包HOOPS Visualize&#xff0c;主要加载HSF、HMF轻量化格式文件。 两者虽然同…

面向有连接型和面向无连接型

文章目录 面向有连接型和面向无连接型面向有连接型面向无连接型 面向有连接型和面向无连接型 通过网络发送数据&#xff0c;大致可以分为面向有连接与面向无连接两种类型&#xff0c;如下图&#xff1a; 面向有连接型 面向有连接型中&#xff0c;在发送数据之前&#xff0c…

Python Slice函数:数据处理利器详解

引言&#xff1a; 在Python编程中&#xff0c;处理数据是一个非常常见且重要的任务。为了更高效地处理数据&#xff0c;Python提供了许多内置函数和方法。其中&#xff0c;slice()函数是一个非常强大且常用的工具&#xff0c;它可以帮助我们轻松地提取、操作和处理数据。无论是…

无效的标记: --release

一、错误提示&#xff1a; 无效的标记: --release 二、原因 使用的 jdk 版本与所需 jdk 版本不符 三、解决&#xff1a; 1、先排除是否是JDK与SpringBoot的版本不一致导致的&#xff1a;如JDK1.8和SpringBoot3.1.5冲突&#xff1b; 2、检查调整Java编译版本 3、检查Maven环…

MTK 拨打紧急电话接通时间过长问题分析

1、问题分析 从Log视频来看&#xff0c;通话接通时间过长&#xff0c;但是Modem Log来看&#xff0c;进行多两次拨号。 查看AP代码确实进行了两次拨号 AP界面查看确实只有一路通话 查看MTK原始代码&#xff0c;发现当紧急拨号失败后&#xff0c;上层换卡重试&#xff0c;界面不…