一.实验目的
1
、区别
LAN
、
VLAN
、
IP
网段
2
、掌握基于端口的
VLAN
划分方法
3
、明确
VLAN
中继作用
4
、熟悉
VLAN
标记帧的结构
5
、熟悉路由器子接口创建方法
6
、掌握
VLAN
路由配置方法
二.实验环境
- 头歌基于Linux的虚拟机桌面系统
- 组网仿真工具GNS3
- 网络报文分析工具 wireshark
三.相关原理或知识点
1
、广泛存在的
LAN
我们日常接触的机房内的网络、整个部门的网络、整个单位(单一园区)的网络大多数都是
LAN
。用户众多、单一地域的校园网、企业网等,可以称之为大中型园区网络。
2
、交换式网络
单个交换机的端口数是有限的,常见有
16
口、
24
口。
交换机之间用网线连接起来,称之为
“
级联
”
,通过级联可以扩充整个
LAN
的端口,以接纳更多的用户主机。
全部由交换机作为互联设备互联而成的网络,我们称之为交换式网络。
目前大多数
LAN
,大多数的园区网络的主体部分,都设计成交换式网络。
网络中的交换机分核心层、汇聚层、接入层三个层次。汇聚层交换机属于部门级交换机;接入层交换机的作用是连接用户主机,一般是二层交换机。核心层、汇聚层交换机必须是三层交换机。
3
、较大的
LAN
在设计时必须划分成若干
VLAN
主要目的是限制广播域。
每个
VLAN
都要定义一个
ID
,用来标识和区别不同的
VLAN
,这个
ID
取值范围是
1-4095
。
4
、从技术的角度看,
VLAN
划分方法
(
1
)按端口划分
(
2
)按
MAC
地址划分
(
3
)按
IP
地址划分
(
4
)按协议划分
本次实验采用的是第一种方法,也是最常用的方法。
5
、从用途角度看,
VLAN
划分方法
(
1
)根据用户业务
(
2
)根据网络管理
(
3
)根据互联需要
本次实验采用的是第一种方法,也是最常用的方法。
6
、交换机端口与
VLAN
相关的属性
(
1
)
Type(
类型
)
主要分
Access
(接入)、
Trunk
(中继)类型,其中
Trunk
根据所支持的通信协议,右进一步分成
Dot1q
、
Qinq
两种。
Access
类型端口只支持以太网帧的发送或接收,不支持
VLAN
协议帧。
Trunk
类型端口既支持以太网帧的发送或接收,又支持
VLAN
协议帧。
标准的
VLAN
协议的标准号是
IEEE802.1Q
,协议名称简称为
Dot1q
。
Qinq
协议是含有两层
Dot1q
报头的隧道协议。
(
2
)
VLAN(VLAN ID)
VLAN
编号,数值类型。当当前端口是
Access
类型时,表示该端口是对应的
VLAN
的成员端口;当当前端口是
Trunk(Dot1q
或
Qinq)
类型时,表示所有进出该端口的不含
Dot1q
或
Qinq
协议的以太网帧,都隶属于对应的
VLAN
。
以太网交换机针对
VLAN
的出厂默认设置是,全部的端口都是
ACCESS
类型,都是
VLAN ID
为
1
的
vlan
成员。
7
、
VLAN
中继
连接两个交换机的链路叫级联链路,两端的端口叫级联口。可以把这两端的端口类型更改为
Trunk(Dot1q
或
Qinq)
类型,这时端口就变成
VLAN
中继端口,链路就变成了
VLAN
中继链路。
VLAN
中继端口或中继链路允许不同
VLAN
的报文通过,这些报文(并非全部)中自动嵌入一个
Dot1q
或
Qinq
协议头(含
4
个字段,其中
1
个记录的是对应的
VLAN ID
)。
8
、
VLAN
数据帧格式
要使交换机能够分辨不同
VLAN
的报文,需要在报文中添加标识
VLAN
信息的字段。
IEEE 802.1Q
协议规定,在以太网数据帧的目的
MAC
地址和源
MAC
地址字段之后、协议类型字段之前加入
4
个字节的
VLAN
标签(又称
VLAN Tag
,简称
Tag
),用于标识数据帧所属的
VLAN
。
VLAN
标签在
VLAN
数据帧中的位置如图所示:
在一个
VLAN
交换网络中,以太网帧主要有以下两种形式:
(
1
)有标记帧(
Tagged
帧):加入了
4
字节
VLAN
标签的帧。
(
2
)无标记帧(
Untagged
帧):原始的、未加入
4
字节
VLAN
标签的帧。
以太网链路包括接入链路(
Access Link
)和干道链路(
Trunk Link
)。接入链路用于连接交换机和用户终端(如用户主机、服务器、傻瓜交换机等),只可以承载
1
个
VLAN
的数据帧。干道链路用于交换机间互连或连接交换机与路由器,可以承载多个不同
VLAN
的数据帧。在接入链路上传输的帧都是
Untagged
帧,在干道链路上传输的数据帧都是
Tagged
帧。
交换机内部处理的数据帧一律都是
Tagged
帧。从用户终端接收无标记帧后,交换机会为无标记帧添加
VLAN
标签,重新计算帧校验序列
(FCS)
,然后通过干道链路发送帧;向用户终端发送帧前,交换机会去除
VLAN
标签,并通过接入链路向终端发送无标记帧。
VLAN
标签包含
4
个字段,各字段含义如下表所示:
字段 | 长度 | 含义 | 取值 |
TPID | 2Byte | Tag Protocol Identifier(标签协议标识符),表示数据帧类型。 | 取值为0x8100时表示IEEE 802.1Q的VLAN数据帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。 各设备厂商可以自定义该字段的值。当邻居设备将TPID值配置为非0x8100时, 为了能够识别这样的报文,实现互通,必须在本设备上修改TPID值,确保和邻居设备的TPID值配置一致。 |
PRI | 3bit | Priority,表示数据帧的802.1p优先级。 | 取值范围为0~7,值越大优先级越高。当网络阻塞时,交换机优先发送优先级高的数据帧。 |
CFI | 1bit | Canonical Format Indicator(标准格式指示位),表示MAC地址在不同的传输介质中是否以标准格式进行封装,用于兼容以太网和令牌环网。 | CFI取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装。在以太网中,CFI的值为0。 |
VID | 12bit | VLAN ID,表示该数据帧所属VLAN的编号。 | VLAN ID取值范围是0~4095。由于0和4095为协议保留取值,所以VLAN ID的有效取值范围是1~4094。 |
因为
IEEE 802.1Q
中定义的
VLAN Tag
域只有
12
个比特,仅能表示
4096
个
VLAN
,无法满足城域以太网中标识大量用户的需求,于是产生了
QinQ
技术,拓展
VLAN
的数量空间。
QinQ
在原有的
802.1Q
报文的基础上增加一层
802.1Q
标签,使得
VLAN
数量增加到
4094×4094
。
9
、
VLAN
路由
VLAN
是建立在物理网络基础上的一种逻辑子网,因此建立
VLAN
需要相应的支持
VLAN
技术的网络设备。不同
VLAN
间的节点在链路层是彼此隔离不能直接通信的,当网络中的不同
VLAN
间需要相互通信时,就得必须采用具有路由功能的互联设备在网络层进行互联。有两种互联设备支持
VLAN
之间的路由:
路由器
三层交换机
10
、路由器的子接口与单臂路由技术
依托路由器的一个物理接口,可以创建若干个子接口,每个子接口都可以独立作为一个网关。这样在形式上借助一个物理路由接口可以实现对多个
IP
网段进行路由,这在组网上称之为单臂路由技术。这些子接口都是逻辑接口,可以创建可以删除。
CISCO
(思科)路由器的子接口,需要先配置封装协议后,才允许配置
IP
地址。路由器的子接口的命名方法是:对应的物理接口名,加
‘.’
,再加一个编号(数值),例如:子接口
f0/0.10
。
四.实验任务
编辑如下网络拓扑
结合网络拓扑图和下表,分析该网络的
vlan
划分和
IP
规划的思路,并写在实验报告中。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
为各主机节点设置
IP
地址、子网掩码、网关
IP
在交换机
S1
上,进行划分
VLAN
,设置
e1
、
e2
、
e3
三个端口相关属性。
在交换机
S2
上,进行划分
VLAN
,设置
e1
、
e2
两个端口相关属性。
使用
Ping
命令测试
pc2
、
pc3
之间的连通性
;使用
Ping
命令测试
pc2
、
pc5
之间的连通性
。
配置
VLAN
中继。
- 使用Ping命令测试pc2、pc5之间的连通性。
- 在路由器R1上配置单臂路由。
- 保存配置、查看配置代码、查看路由表。
- 进行路由测试,使用wireshark跟踪通信过程,并进行分析。
五.网络规划与设计
1
、
网络拓扑
2
、
网络的vlan划分和IP规划
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
六.LAN划分与VLAN中继
1、PC 配置
在PC1命令行窗口中输入:ip 10.1.1.1/24 10.1.1.254/24
IP 地址设置为10.1.1.1,子网掩码设置为 24,网关设置为 10.1.1.254
在PC2命令行窗口中输入:ip 10.1.2.1/24 10.1.2.254/24
IP 地址设置为10.1.2.1,子网掩码设置为24,网关设置为10.1.2.254
在PC3命令行窗口中输入:ip 10.1.2.2/24 10.1.2.254/24
IP 地址设置为10.1.2.2,子网掩码设置为24,网关设置为10.1.2.254
在PC4命令行窗口中输入:ip 10.1.1.2/24 10.1.1.254/24
IP 地址设置为10.1.1.2,子网掩码设置为24,网关设置为10.1.1.254
在PC5命令行窗口中输入:ip 10.1.2.3/24 10.1.2.254/24
IP 地址设置为10.1.2.3,子网掩码设置为24,网关设置为10.1.2.254
2、交换机VLAN 划分
在交换机S1上,进行划分VLAN,设置e1端口VLAN ID为10,e2、e3端口VLAN ID为20
在交换机S2上,进行划分VLAN,设置e1端口VLAN ID为10,e2端口VLAN ID为20
使用Ping命令测试PC2、PC3之间的连通性
在PC2命令行窗口中输入:ping 10.1.2.2
结果显示PC2与PC3之间是连通的
VLAN ID为20的不同设备之间可以相互通信
使用Ping命令测试PC2、PC5之间的连通性
在PC2命令行窗口中输入:ping 10.1.2.3
结果显示PC2与PC5之间是不通的
VLAN ID为10的节点不能与VLAN ID为20的节点相互通信
3、配置VLAN中继
在
S1
交换机上将
e0
、
e4
端口设置成中继接口
在
S2
交换机上将
e0
端口设置成中继接口
使用Ping命令测试PC2、PC5之间的连通性
在PC2命令行窗口中输入:ping 10.1.2.3
结果显示,在配置完VLAN中继后,PC2与PC5之间是连通的
VLAN ID为10的节点可以与VLAN ID为20的节点相互通信
七.VLAN路由
1
、在路由器
R1
上
配置单臂路由
启动路由器R1后,打开命令行窗口
在“R1#”提示符下(特权模式):
进入终端配置模式:config t
创建子接口:interface FastEthernet0/0.1
对当前子接口指定封装协议Dot1q,指定所属VLAN:
encapsulation dot1Q 10
对当前子接口设置IP地址、子网掩码:
ip address 10.1.1.254 255.255.255.0
创建子接口:interface FastEthernet0/0.2
对当前子接口指定封装协议Dot1q,指定所属VLAN:
encapsulation dot1Q 20
对当前子接口设置IP地址、子网掩码:
ip address 10.1.2.254 255.255.255.0
激活对应的物理接口
Interface f0/0
no shutdown
保存配置、查看配置代码、查看路由表
- 返回到特权模式:end
- 保存配置:write
- 查看配置代码:show run
查看路由表:show ip route
2
、
路由测试
使用wireshark跟踪通信过程,并进行分析
选择PC1、PC5
在路由接口f0/0在的链路上,启动wireshark抓取报文
移动鼠标指针指向路由接口f0/0所在的链路上(变成红色),单击鼠标右键,在弹出菜单中选择菜单项“start capture”
在主机PC1的命令窗口中输入:ping 10.1.2.3
在wireshark窗口中,单击停止按钮
选择其中一个ICMP报文,在对应的解码窗口中,将ethernet II、802.1q、IP协议头部字段分别展开,然后截图放到实验报告中进行验证分析。
八.拓展实验(选做)
1
、网络拓扑
2
、
网络的VLAN划分和IP规划
通信 节点 | VLAN ID | 所连 交换机 | 所连 端口 | IP/MASK | 网关IP |
PC1 | 10 | S1 | 1 | ||
PC2 | 10 | S1 | 2 | 10.0.1.2/24 | 10.0.1.254/24 |
PC3 | 10 | S1 | 3 | 10.0.1.3/24 | 10.0.1.254/24 |
PC4 | 20 | S2 | 1 | 10.0.2.1/24 | 10.0.2.254/24 |
PC5 | 20 | S2 | 2 | 10.0.2.2/24 | 10.0.2.254/24 |
PC6 | 30 | S3 | 1 | 10.0.3.1/24 | 10.0.3.254/24 |
F0/0.1 | 10 | S0 | 0 | 10.0.1.254/24 | |
F0/0.2 | 20 | S0 | 0 | 10.0.2.254/24 | |
F0/0.3 | 30 | S0 | 0 | 10.0.3.254/24 |
3
、
PC 配置
在PC1命令行窗口中输入:ip 10.0.1.1/24 10.0.1.254/24
IP 地址设置为10.0.1.1,子网掩码设置为24,网关设置为10.0.1.254
在PC2命令行窗口中输入:ip 10.0.1.2/24 10.0.1.254/24
IP 地址设置为10.0.1.2,子网掩码设置为24,网关设置为10.0.1.254
在PC3命令行窗口中输入:ip 10.0.1.3/24 10.0.1.254/24
IP 地址设置为10.0.1.3,子网掩码设置为24,网关设置为10.0.1.254
在PC4命令行窗口中输入:ip 10.0.2.1/24 10.0.2.254/24
IP 地址设置为10.0.2.1,子网掩码设置为24,网关设置为10.0.2.254
在PC5命令行窗口中输入:ip 10.0.2.2/24 10.0.2.254/24
IP 地址设置为10.0.2.2,子网掩码设置为24,网关设置为10.0.2.254
在PC6命令行窗口中输入:ip 10.0.3.1/24 10.0.3.254/24
IP 地址设置为10.0.3.1,子网掩码设置为24,网关设置为10.0.3.254
4
、
交换机VLAN 划分和VLAN中继
在
S0
交换机上将
e0
、
e1
、
e2
、
e3
端口设置成中继接口
在
S1交换机上
进行划分VLAN,设置e1、e2、e3端口VLAN ID为10
将
e0端口设置成中继接口
在
S2交换机上
进行划分VLAN,设置e1、e2端口VLAN ID为20
将
e0端口设置成中继接口
在
S3交换机上
进行划分VLAN,设置e1端口VLAN ID为30
将
e0端口设置成中继接口
5
、
VLAN路由
在路由器
R1
上
配置单臂路由
启动路由器R1后,打开命令行窗口
在“R1#”提示符下(特权模式):
进入终端配置模式:config t
创建子接口:interface FastEthernet0/0.1
对当前子接口指定封装协议Dot1q,指定所属VLAN:
encapsulation dot1Q 10
对当前子接口设置IP地址、子网掩码:
ip address 10.0.1.254 255.255.255.0
创建子接口:interface FastEthernet0/0.2
对当前子接口指定封装协议Dot1q,指定所属VLAN:
encapsulation dot1Q 20
对当前子接口设置IP地址、子网掩码:
ip address 10.0.2.254 255.255.255.0
创建子接口:interface FastEthernet0/0.3
对当前子接口指定封装协议Dot1q,指定所属VLAN:
encapsulation dot1Q 30
对当前子接口设置IP地址、子网掩码:
ip address 10.0.3.254 255.255.255.0
激活对应的物理接口
Interface f0/0
no shutdown
保存配置、查看配置代码、查看路由表
- 返回到特权模式:end
- 保存配置:write
- 查看配置代码:show run
查看路由表:show ip route
6
、
网络连通测试
使用Ping命令测试PC1、PC4之间的连通性
在PC1命令行窗口中输入:ping 10.0.2.1
结果显示PC1与PC4之间是连通的,VLAN ID为10的节点可以与VLAN ID为20的节点相互通信
使用Ping命令测试PC1、PC6之间的连通性
在PC1命令行窗口中输入:ping 10.0.3.1
结果显示PC1与PC6之间是连通的,VLAN ID为10的节点可以与VLAN ID为30的节点相互通信
使用Ping命令测试PC4、PC6之间的连通性
在PC4命令行窗口中输入:ping 10.0.3.1
结果显示PC4与PC6之间是连通的,VLAN ID为20的节点可以与VLAN ID为30的节点相互通信
九.实验总结
在本次计算机网络实验中,我们致力于深入了解和实践虚拟局域网(VLAN)的划分、路由配置以及相关概念。以下是实验的重点内容和取得的成果总结:
1. 区别LAN、VLAN、IP网段
在实验开始之初,我们首先对局域网(LAN)、虚拟局域网(VLAN)和IP网段进行了明确的区分。LAN是指物理连接的局域网络,而VLAN是在逻辑上划分出的虚拟网络,通过交换机等设备实现。每个VLAN可以拥有独立的IP网段,使得不同VLAN间的通信需要经过路由器进行。
2. 基于端口的VLAN划分方法
我们深入了解了基于端口的VLAN划分方法,通过交换机配置实现了将不同端口划分到不同的VLAN中。这有助于实现物理上相连的设备在逻辑上的隔离,提高网络的灵活性和安全性。
3. VLAN中继作用
我们配置了VLAN中继,确保不同交换机之间的VLAN信息传递。VLAN中继的作用在于实现VLAN信息的跨交换机传递,使得整个网络中的VLAN配置能够同步,从而确保通信的正常进行。
4. VLAN标记帧的结构
在深入学习了VLAN标记帧的结构后,我们理解了如何通过在数据帧中添加VLAN标签来实现对不同VLAN的区分。这是实现VLAN隔离的重要机制,确保数据在网络中正确地被路由到相应的VLAN。
5. 路由器子接口创建方法
为了实现不同VLAN间的通信,我们学习并成功配置了路由器子接口。通过为每个VLAN创建独立的子接口,路由器能够正确地转发数据包,实现了不同VLAN之间的网络互通。
6. VLAN路由配置方法
我们掌握了VLAN路由的配置方法,确保在路由器上正确配置了VLAN间的路由规则。这使得不同VLAN内的设备能够通过路由器进行通信,实现了逻辑上的隔离和物理上的互通。
通过本次实验,我们成功实现了在链路层上彼此隔离的不同VLAN间的节点相互通信。我们深刻理解了VLAN的概念、划分方法以及与路由器的结合应用,提高了对计算机网络中复杂概念的理解和应用能力。此外,我们对网络连通性进行了全面的测试,验证了实验的有效性和可行性。
总体而言,这次实验不仅丰富了我们在计算机网络领域的实际操作经验,也为我们理解和掌握更高级网络配置打下了坚实基础。我们对于VLAN的应用和路由配置有了更深刻的理解,这对于今后的网络工程和管理工作将具有重要的指导意义。