【网络协议详解】——VLAN技术(学习笔记)

🕒 1. VLAN介绍

🕘 1.1 目标

VLAN技术把用户划分成多组逻辑的网络,组内可以通信,组间不允许通信。

二层转发的单播、组播、广播报文只能在组内转发。

为了实现转发控制,在待转发的以太网帧中添加 VLAN标签 ,然后设定交换机端口对该标签和帧的处理方式。

方式包括丢弃帧、转发帧、添加标签、移除标签。

🕘 1.2 帧格式

在这里插入图片描述

  • 标签协议标识TPID:固定取值为0x8100,表明这是一个携带802.1Q标签的帧
  • 优先级PRI:指明帧的优先级。0-7,表示8种优先级,提供有差别的转发服务。
  • 标准格式指示CFI:在以太网环境中,这个字段始终为0。
  • VLAN标识:它唯一地标志了以太网帧属于哪一个VLAN
    • VID的取值范围是0~ 4095 (0 ~ 212-1)
    • 0和4095都不用来表示VLAN,因此用于表示VLAN的VID的有效取值范围是1 ~ 4094

802.1Q帧是由交换机来处理的,而不是用户主机来处理的

  • 当交换机收到普通的以太网帧时,会将其插入4字节的VLAN标记转变为802.1Q帧,简称“打标签”。
  • 当交换机转发802.1Q帧时,可能会删除其4字节VLAN标记转变为普通以太网帧,简称“去标签”。

端口上接收时总希望能够打上标签,发送出去时候总希望能去除标签

🕘 1.3 划分方式

  • 基于端口(常用)
    在这里插入图片描述

  • 基于MAC地址
    在这里插入图片描述

  • 基于协议
    在这里插入图片描述

  • 基于子网
    在这里插入图片描述

  • 基于策略(安全性很高)

🕘 1.4 链路

VLAN 技术的出现,使得交换网络中存在了带VLAN 的以太网帧和不带VLAN 的以太网帧。因此,相应地也对链路做了区分:
(1)接入链路(Access Link):连接用户主机和交换机的链路。通过的帧为不带Tag 的以太网帧。
(2)干道链路(Trunk Link):连接交换机和交换机的链路。通过的帧一般为带Tag 的VLAN 帧,也允许通过不带Tag 的以太网帧。

🕘 1.5 端口模式

交换机的端口类型有以下三种:Access、Trunk、Hybrid

交换机各端口的缺省VLAN ID

  • 在思科交换机上称为Native VLAN,即本征VLAN。
  • 在华为交换机上称为Port VLAN ID,即端口VLAN ID,简记为PVID。每个端口有且只有一个PVID,默认情况下端口的PVID都为1(即端口属于VLAN 1)

🕤 1.5.1 接入端口

  • 接入端口(Access Port):一般用于终端设备与交换机之间

注意:交换机与路由器连接的接口也需要使用接入接口。这是因为路由器中的消息也不带VLAN标签,就像终端一样,保证路由器的数据能够进入交换机领域,数据由路由器进入交换机是会被打上默认标签,接着猜按照交换机间VLAN的规则行走。简单理解就是把路由器当作终端。

  • 接入端口只能属于一个VLAN

  • 接入端口的PVID值与端口所属VLANID相同(默认为1

  • 接入端口接收处理方法:一般只接收"未打标签"的普通以太网MAC帧。根据接收帧的端口PVID值给帧"打标签",即插入4字节的VLAN标记字段,字段中的VID取值与端口PVID取值相等

  • 接入端口发送处理方法:若帧中的VID与端口的PVID相等,则"去标签"并转发该帧;否则不转发

在这里插入图片描述
在这里插入图片描述

🕤 1.5.2 干道端口

  • 干道端口(Trunk Port):一般用于交换机之间或交换机与路由器之间的互连
  • 干道端口可以属于多个VLAN
  • 用户可以设置干道端口的PVID值,默认情况下,干道端口PVID值为1
  • 干道端口发送处理方法
    • VID等于PVID的帧,“去标签,再转发”
    • VID不等于PVID的帧,直接转发
  • 干道端口接收处理方法
    • 接收"未打标签"的帧。根据接收帧的端口的PVID给帧"打标签",即插入4字节的VLAN标记字段,字段中的VID取值与端口的PVID取值相等
    • 如该端口允许进入,则直接接收"已打标签的帧",否则丢弃

🕤 1.5.3 混合端口(仅华为交换机有)

  • 混合端口(Hybrid Port):既可以用于交换机之间或交换机与路由器之间的互连(同干道端口),也可用于交换机与用户计算机之间的互连(同接入端口)
  • 混合端口可以属于多个VLAN(同干道端口)
  • 用户可以设置混合端口的PVID值。默认情况下,混合端口的PVID值为1(同干道端口)
  • 混合端口发送处理方法与干道端口不同):
    • 查看帧的VID是否在端口的"去标签"列表中
    • 若存在(untag),则"去标签"后转发
    • 若不存在(tag),则直接转发
  • 混合端口接收处理方法(同干道端口):
    • 接收"未打标签"的帧。根据接收帧的端口的PVID给帧"打标签",即插入4字节的VLAN标记字段,字段中的VID取值与端口的PVID取值相等
    • 如该端口允许进入,则直接接收"已打标签的帧",否则丢弃

在这里插入图片描述

🕒 2. VLAN内通信

在这里插入图片描述

在这里插入图片描述

(1)数据帧首先到达SWA 的端口GE0/0/4。
(2)端口GE0/0/4 给数据帧加上Tag,Tag 的VID 字段填入该端口所属的VLAN 的编号2。
(3)SWA 查找VLAN2的MAC 地址表,将该帧转发到相应的出端口GE0/0/2,到SWB。
(4)SWB 收到帧后,会根据帧中的Tag 识别出该帧属于VLAN2,查找MAC 地址表,将该帧转发到相应的出接口
(5)端口GE0/0/3 将数据帧发送给主机Host B。

🕒 3. VLAN间通信

🕘 3.1 概述

VLAN隔离了二层广播域,也就严格地隔离了各个VLAN之间的任何流量,分属于不同VLAN的用户不能互相通信。

不同VLAN 之间的流量不能直接跨越VLAN 的边界,需要使用路由,通过路由将报文从一个VLAN 转发到另外一个VLAN。

在主机设置默认网关,对于非本地的通信,主机会自动寻找默认网关,并把报文交给默认网关转发而不是直接发给目的主机。

🕘 3.2 解决VLAN间互通的方法

为每个VLAN 分配一个单独的路由接口:

  • 在二层交换机上配置VLAN,每一个VLAN使用一条独占的物理连接连接到路由器的一个接口上。
  • 随着每个交换机上VLAN数量的增加,这样做必然需要大量的路由器接口,出于成本考虑一般不采用。

多个VLAN公用一条物理连接:

  • 二层交换机上和路由器上配置他们之间相连的端口使用VLAN Trunking,使多个VLAN共享同一条物理连接到路由器
  • 这种方式也称为独臂路由或者单臂路由,它只需要一个以太网接口,通过创建子接口可以承担所有VLAN 的网关,从而在不同的VLAN 间转发数据。

在这里插入图片描述
路由器仅仅提供一个以太网接口,而在该接口下提供三个子接口分别作为3个VLAN用户的缺省网关,当VLAN100的用户需要与其它VLAN的用户进行通信时,该用户只需将数据包发送给缺省网关,缺省网关修改数据帧的VLAN标签后再发送至目的主机所在VLAN,即完成了VLAN间的通信。

三层交换机:

  • 既具备二层交换机的交换功能,又具备路由器的路由功能。
  • 主机设置默认网关就是三层交换机中虚拟VLAN接口的IP地址。

在这里插入图片描述

🕒 4. 实验:利用单臂路由实现VLAN间通信

🔎 【GNS3】Window10 下 GNS3 配置 IOU 模拟环境

题目:本实验模拟公司网络场景。路由器RI是公司的出口网关,员工PC通过交换机IOU1接入公司网络,交换机IOU1与路由器R1相连。
公司内部网络通过划分不同的VLAN隔离了不同部门之间的二层通信,保证各部门间的信息安全。但是由于业务需要,市场部和人事部之间需要能实现跨VLAN通信, 网络管理员决定借助路由器的三层功能,通过配置单臂路由来实现。

步骤:开启GNS3虚拟机,新建拓扑文件,在工作区添加一台二层交换机(IOU)、一台路由器和两台PC,按下图连接路由器、交换机和PC,开启设备。设备的vlan 配置和IP地址配置按下表进行。PC1属于VLAN30,PC2属于VLAN40,现需要在路由器R1上配置单臂路由使得VLAN30和40连通。将路由器和交换机的配置指令截图如下:

在这里插入图片描述

设备接口IP地址地址掩码默认网关
R1F0/0.110.0.1.1255.255.255.0-
F0/0.210.0.2.1255.255.255.0-
PC-1E010.0.1.2255.255.255.010.0.1.1
PC-2E010.0.2.2255.255.255.010.0.2.1
设备接口接口类型所属VLAN允许通过的VLAN
IOU1E0/0trunk-30、40
E0/1access30-
E0/2access40-

配置R1:

# 打开接口
R1#conf t
R1(config)#int f0/0
R1(config-if)#no shutdown
# 配置子接口IP
R1(config)#int f0/0.1
R1(config-subif)#encapsulation dot1q 30
*Mar  1 00:04:36.471: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
R1(config-subif)#ip address 10.0.1.1 255.255.255.0
R1(config-subif)#exit
*Mar  1 00:04:54.855: %SYS-5-CONFIG_I: Configured from console by console
R1(config)#int f0/0.2
R1(config-subif)#encapsulation dot1q 40
R1(config-subif)#ip address 10.0.2.1 255.255.255.0
*Mar  1 00:05:52.107: %SYS-5-CONFIG_I: Configured from console by console
# 在R1上查看路由表
R1#show ip route

在这里插入图片描述

配置PC-1与PC-2:

PC-1> ip 10.0.1.2/24 10.0.1.1
Checking for duplicate address...
PC1 : 10.0.1.2 255.255.255.0 gateway 10.0.1.1

PC-1> save
Saving startup configuration to startup.vpc
.  done

PC-2> ip 10.0.2.2/24 10.0.2.1
Checking for duplicate address...
PC2 : 10.0.2.2 255.255.255.0 gateway 10.0.2.1

PC-2> save
Saving startup configuration to startup.vpc
.  done

配置IOU1:

IOU1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
# 创建VLAN
IOU1(config)#vlan 30
IOU1(config)#vlan 40
# 配置设备端口为 Access 类型
IOU1(config)#int e0/1
IOU1(config-if)#switchport access vlan 30
*May 17 05:46:42.170: %SYS-5-CONFIG_I: Configured from console by console
IOU1(config-if)#exit
IOU1(config)#int e0/2
IOU1(config-if)#switchport access vlan 40
*May 17 05:47:16.330: %SYS-5-CONFIG_I: Configured from console by console
IOU1(config-if)#exit
# 配置设备端口为 Trunk 类型
IOU1(config)#int e0/0
IOU1(config-if)#switchport trunk encapsulation dot1q
*May 17 05:48:51.668: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, ch
IOU1(config-if)#switchport mode trunk
*May 17 05:49:10.903: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, ch
IOU1(config-if)#switchport trunk allowed vlan 30,40
*May 17 05:49:47.394: %SYS-5-CONFIG_I: Configured from console by console
# 在IOU1上查看VLAN
IOU1#show vlan
IOU1#show interface e0/0 switchport

在这里插入图片描述
在这里插入图片描述

配置完记得write保存!

在PC1上ping PC2:
在这里插入图片描述

在这里插入图片描述

🕒 5. 实验:利用三层交换机实现VLAN间通信

题目:本实验模拟公司网络场景。员工PC通过交换机IOU2接入公司网络,交换机IOU2与三层交换机IOU1相连。
公司内部网络通过划分不同的VLAN隔离了不同部门之间的二层通信,保证各部门间的信息安全。但是由于业务需要,市场部和人事部之间需要能实现跨VLAN通信, 网络管理员决定借助三层交换机来实现。

在这里插入图片描述

设备接口接口类型所属VALN允许通过VLAN
IOU2Ethernet 0/0TrunkN/Aall
Ethernet 0/1AccessVLAN 10N/A
Ethernet 0/2AccessVLAN 20N/A
IOU1Ethernet 0/0TrunkN/Aall
设备接口/VLANIP地址默认网关
IOU1VLAN10192.168.1.1/24
VLAN20192.168.2.1/24
PC-1Ethernet 0192.168.1.2/24192.168.1.1/24
PC-2Ethernet 0192.168.2.2/24192.168.2.1/24

在这里插入图片描述
在这里插入图片描述

# 开启路由功能
IOU1(config)#ip routing

在这里插入图片描述

三层交换机和单臂路由之间的一些主要区别:

特性三层交换机单臂路由器
网络层支持支持
数据链路层支持不支持
物理层支持不支持
端口密度
路由协议支持有限支持
网络扩展性有限
成本
应用场景大型LAN和数据中心环境SMB和特定网络服务

❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

  • 10
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值