BUAA-计算机网络实验-Exp3
本系列是北航计算机学院于 2024 年春季学期开设的核心专业课《计算机网络实验》课程的实验报告记录,实验形式为两人组队实验。由于学习过程中掌握并不牢靠,如有错误请读者不吝赐教!
数据链路层 & 网络层实验 - 2
前半部分为实验的实际操作环节,后半为实验报告内容的填写。
实验内容
- VLAN TRUNK 实验
- VLAN TAG 实验
- VLAN 间通信综合实验
- 子网划分设计型实验(含预习部分)
- 网络风暴与端口聚合实验
- 端口镜像实验
VLAN TRUNK 实验
实验说明
实验内容
- 不完全按照图示进行组网,注意要将 PCB 通过集线器(HUB)接在 S1 和 S2 之间,也即 S1、S2、PCB 共同接入集线器,这样 PCB 即可截获在 S1 和 S2 之间发送的报文信息
- 配置 VLAN 号与端口范围
VLAN 2 |
经过这样的简单配置后,连接在不同交换机上、处于相同 VLAN 的主机间仍然不能通信,因为 S1 与 S2 间的链路无法转发这些数据报
- 配置两台交换机 TRUNK 端口,允许 VLAN 2 和 VLAN 3 的数据报进行转发
interface G 1/0/13 |
截获 PCA、PCB、PCC 的报文,并执行 PCA ping PCC,根据第一条 ICMP echo Request 报文的二层转发过程填入实验报告第 6 题表中
查看交换机 S1 的 MAC 地址表,填写实验报告第 7 题
display mac-address |
VLAN TAG 实验
实验说明
实验内容
- 维持 VLAN TRUNK 实验的组网结构基本不变,据实验报告要求应该把 PCA 接入集线器,将 PCB 接在 S1 上,如图所示
- 将两个交换机原本的 TRUNK 接口转为 HYBRID 类型,并进行进一步配置(VLAN2 tagged、VLAN3 untagged、PVID = 1)
undo port link-type |
- 执行 PCB ping PCD,观察能否 ping 通,并填写实验报告第 8 题
- 修改交换机 G 1/0/13 的配置,再次配置使得 PCB 和 PCD 能 ping 通,截获报文将第一条 ICMP echo Request 报文的二层转发过程填写在实验报告第 8 题表中
- 分析报文截获,完成实验报告第 9 题
VLAN 间通信综合实验
实验说明
实验过程
- 恢复实验组网与 VLAN TRUNK 实验一致,注意调整四台 PC 的 IP 与网关
- 配置交换机 S1 的 VLAN 接口 IP 地址,均配置为子网的网关地址
interface VLAN 2 |
- 清空交换机 MAC 地址表、arp 缓存以及各 PC 的 ARP 缓存
/* in S1/S2 view */ |
- 执行 PCC ping PCD,对所有报文的转发过程进行分析,完成实验报告第 8 题
子网划分设计型实验
实验说明
实验过程
如图,某公司要建设公司网络,从网络服务商处租用了一个 C 类地址 202.108.100.*/24,接网络服务商路由器的地址如图所示,请给出设计方案,满足如下要求:
- 网络划分子网数越多越好,但每个子网的主机数大于 15 台;
- 所有用户都能上网,即要求所有主机都能 ping 通网络服务商路由器的 E0 口。
提示:如图所示,划分好子网后,在路由器和三层交换机上要配置静态路由。
在实际操作中,我们以 R1 作为网络服务商路由器、 S1 作为三层交换机、S2 和集线器 HUB 分别作为两个二层交换机,每个二层交换机下配置两台 PC 作为演示
设计方案与具体设置操作见实验报告内容
网络风暴与端口聚合实验
实验说明
实验内容
- 按照下图进行组网,若按顺序完成实验,可以先清除上面实验的 VLAN 和接口配置
其余操作可见上次线上的实验报告
端口镜像实验
实验说明
实验内容
- 按照下图进行组网,Device 可使用交换机 S1 进行配置
- 配置本地镜像组、设置镜像端口、关闭生成树协议
# 创建本地镜像组 1。 |
- 执行 PCA ping PCB,检测 PCC 所截获的报文信息,实际上应为所有 PCA 和 PCB 的报文信息
数据链路层实验报告
广播风暴 & 端口聚合
观察了广播风暴后,在两台交换机上都配置启用生成树协议。请问是否还能观察到广播风暴?为什么?
不能再观测到广播风暴。
因为生成树协议阻断了网络中的环路,限制数据在部分活跃端口上传输。
广播风暴 & 端口聚合
配置了端口聚合后,请问是否还能观察到广播风暴?为什么?
不能再观测到广播风暴。
配置端口聚合后,两交换机之间现仅存在一条多个端口合并后的聚合链路,不会再产生广播风暴。
广播风暴 & 端口聚合
模拟链路故障,将连接两台交换机的一根网线拔掉或者将被聚合的某个端口 shutdown,检查网络两端是否仍能联通,并解释为什么?体会其链路备份的作用。
仍能联通。
生成树协议会暂时禁用多余链路。当现有链路产生变化影响网络联通性时,生成树协议会重启这些链路。
VLAN TRUNK
根据跨交换机VLAN的实验中的报文截获结果填写下表
转发过程 | 源 MAC 地址 | 目的 MAC 地址 | 源 IP 地址 | 目的 IP 地址 | VLAN ID |
---|---|---|---|---|---|
PCA -> S1 | MAC_PCA | MAC_PCC | 192.168.2.10 | 192.168.2.11 | 不含 TAG 字段 |
S1 -> S2 | MAC_PCA | MAC_PCC | 192.168.2.10 | 192.168.2.11 | 2 |
S2 -> PCC | MAC_PCA | MAC_PCC | 192.168.2.10 | 192.168.2.11 | 不含 TAG 字段 |
VLAN TRUNK
请查看交换机 S1 的 MAC 地址表,填写下表,并进一步体会交换机 MAC 地址表的学习和转发
MAC 地址 | 对应的主机 | VLAN ID | State | 端口号 | AGING TIME |
---|---|---|---|---|---|
MAC_PCA | PCA | 2 | Learned | G 1/0/1 | Y |
MAC_PCB | PCB | 1 | Learned | G 1/0/13 | Y |
MAC_PCC | PCC | 2 | Learned | G 1/0/13 | Y |
MAC_PCD | PCD | 3 | Learned | G 1/0/13 | Y |
对应 MAC | S2 的 G 1/0/13 接口 | 1 | Learned | G 1/0/13 | Y |
VLAN TAG
继续前面的实验,如图 2-12,对两台交换机的 E0/13 端口进行设置;执行 PCB ping PCD,观察能否 ping 通,为什么?
PCB ping PCD 并不能 ping 通。
因为 hybrid 类型接口会将 PCB 发送的数据先打上 VLAN3 标签,检测为 untagged 后再去掉其标签。
S2 接受到来自 G1/0/13 的无 tag 数据,自动封装了其默认的 pvid 的 tag,即 pvid = 1;S2 内部无其他可发送的 VLAN 1 主机,无法抵达处于 VLAN 3 的 PCD。
修改两个交换机的 E 1/0/13 端口的配置,使 PCB 能够 ping 通 PCD,结合各计算机截获报文综合分析,结果填入下表。
转发过程 | 源 MAC 地址 | 目的 MAC 地址 | 源 IP 地址 | 目的 IP 地址 | VLAN ID |
---|---|---|---|---|---|
PCB -> S1 | MAC_PCB | MAC_PCD | 192.168.2.12 | 192.168.2.13 | 不含 TAG 字段 |
S1 -> S2 | MAC_PCB | MAC_PCD | 192.168.2.12 | 192.168.2.13 | 不含 TAG 字段 |
S2 -> PCD | MAC_PCB | MAC_PCD | 192.168.2.12 | 192.168.2.13 | 不含 TAG 字段 |
VLAN TAG
与步骤八比较,截获的报文有何不同?请结合 VLAN 端口分类和 PVID 的作用,解释这种情况下,报文转发的过程。
与步骤八比较,截获报文的主要区别在于从 S1 向 S2 发送的报文上,后者报文不包含 PVID 和 TAG 字段。
这种情况下,S1 接收到自 PCB 的报文,按照 VLAN 分配追加 VLAN ID = 3 的 TAG,在经由 G 1/0/13 转发时,因为 VLAN 3 为 UNTAGGED,故去掉其 TAG 后再进行发送;S2 经 G 1/0/13 转发时,因报文不带 TAG,故应该按照端口 PVID 添加 VLAN ID = 3 的 TAG,S2 发现同属 VLAN 3 的 G 1/0/24(PCD),向其发送去掉的 TAG 后的报文。
故所捕获的报文均不带 VLAN ID 与 TAG 字段。
网络层实验报告
VLAN 间通信综合实验
根据跨交换机VLAN间路由实验(PCC ping PCD)所截获报文,对整个网络层和数据链路层的报文转发过程进行分析。
约定如下:数据帧中的 MAC 地址对:(目的 MAC 地址,源MAC地址)
数据报中的 IP 地址对:(目的 IP 地址,源 IP 地址)
MAC_VLAN2 指的是 S1 交换机中 interface VLAN 2 所用的接口 MAC 地址,MAC_VLAN3 同理,display interface VLAN 2
加粗内容为实验报告填空内容
STEP 1
PCC 发送的第一个报文类型是什么?为什么?
ARP Request 报文。因为 PCC 发送的目标 IP 不位于自身所在的网段内,故现象默认网关发送报文,尝试进行间接交付。
包含该报文数据帧中的 VLAN id、MAC 和 IP 地址对是:
VLAN id= 不含 TAG 字段
MAC:(ff.ff.ff.ff.ff.ff ,MAC_PCC)
IP:(192.168.2.1,192.168.2.11)
STEP 2
S2 收到数据帧后,对其 MAC 地址表的操作是:
添加 PCC 所属 MAC 和 IP 的地址表表项。
S2 根据接收数据帧的端口所属 VLAN,在其中插 VLAN id = 2 的标签,并向除接收端口外的所有 VLAN2 端口转发这个数据帧。
STEP 3
S1 收到数据帧后,对其 MAC 地址表的操作是:
添加 MAC_PCC 对应的地址表表项
S1 将 ARP 报文交付给网络层,S1 对其 arp 表的操作是:
添加 PCC 的 ARP 表项
S1 发送的包含 ARP Reply 报文的数据帧中:
MAC:(MAC_PCC, MAC_ VLAN 2)
IP:(192.168.2.11,192.168.2.1)
VLAN id = 2
STEP 4
S2收到数据帧后,对其MAC地址表的操作是:
添加交换机 S1_MAC_VLAN2 的 MAC 地址表项
S2收到的数据帧后,根据VLAN标签和 MAC 地址 表,决定向端口 G 1/0/1 转发该数据帧;
S2根据端口 G 1/0/1 是 ACCESS 类型端口,去掉 VLAN 标签,从端口 G 1/0/1 转发该帧。
STEP 5
PCC收到ARP Reply报文,更新其ARP缓存,显示ARP缓存的命令:
arp -a
显示的内容:
IP 地址 MAC 地址 192.168.2.1 54: 2b: de: 28: ac: 21 192.168.2.255 ff: ff: ff: ff: ff: ff
PCC 发送的包含 ICMP Echo Request 报文的数据帧中:
VLAN id = 无 TAG 字段
MAC:(MAC_VLAN2,MAC_PCC)
IP:(192.168.3.11,192.168.2.11)
STEP 6
S2 收到数据帧,根据其接收端口,添加 VLAN2 标签;根据目的 MAC,查找 MAC 地址表;将数据帧由 G 1/0/13 端口转发给 S1。
S2转发的数据帧中:VLAN id = 2
MAC:(MAC_VLAN2,MAC_PCC)
IP:(192.168.2.11,192.168.3.11)
STEP 7
S1 收到 S2 转发的数据帧,交付网络层,根据目的 IP 地址,查路由表,将报文路由到 int vlan 3,准备通过数据链路层交付给 PCD;
但没有查到PCD的MAC地址,就要发送包含ARP Request报文的数据帧;
VLAN id = 3
MAC:(Broadcast,MAC_VLAN3)
IP:(192.168.3.11,192.168.3.1)
STEP 8
S2 收到 S1 转发的数据帧,根据其 VLAN id = 3,向除接收端口外的所有属于 VLAN 3 的端口转发该数据帧;
S2 根据端口 G 1/0/24 是 ACCESS 类型端口,去掉 VLAN 标签,从端口 G 1/0/24 转发该帧。
STEP 9
PCD 收到 S2 转发的数据帧,更新其 ARP 缓存,其 ARP 缓存的内容是:
IP 地址 MAC 地址 192.168.3.1 54: 2b: de: 28: ac: 22 192.168.3.255 ff: ff: ff: ff: ff: ff
PCD 发送包含 ARP reply 报文的数据帧中;
VLAN id = 无 TAG 字段
MAC:(MAC_VLAN3,MAC_PCD)
IP:(192.168.3.1,192.168.3.11)
STEP 10
S2 收到数据帧,根据其接收端口,添加 VLAN 3 的标签;根据目的 MAC,查找 MAC 地址表;将数据帧由 G 1/0/13 端口转发给 S1。
S2 转发的数据帧中:
VLAN id = 3
MAC:(MAC_VLAN3,MAC_PCD)
IP:(192.168.3.1,192.168.3.11)
STEP 11
S1 收到数据帧,提交到网络层,更新其 ARP 表;
S1 对包含 ICMP Echo Request 报文的数据帧的 VLAN 标签进行替换,由 VLAN id = 2 变为VLAN id = 3。封装的数据帧中:
VLAN id = 3
MAC:(MAC_PCD,MAC_VLAN3)
IP:(192.168.3.11,192.168.2.11)
查找 MAC 地址表,由 G 1/0/13 端口发送
STEP 12
S2 收到 S1 转发的数据帧,根据其 VLAN id 和目的 MAC 地址,向 G 1/0/24 端口转发该数据帧;
同时,S2 根据端口 G 1/0/24 是 ACCESS 类型端口,去掉 VLAN 标签,从端口 G 1/0/24 转发该帧。
STEP 13
PCD 收到包含 ICMP Echo Request 报文的数据帧,发送包含 ICMP Echo Reply 报文的数据帧:
VLAN id = 无 TAG 字段
MAC:(MAC_VLAN3,MAC_PCD)
IP:(192.168.2.11,192.168.3.11)
STEP 14
S2 收到数据帧,根据其接收端口,添加 VLAN 3 的标签;根据目的 MAC,查找 MAC 地址表;将数据帧由 G 1/0/13 端口转发给 S1。
S2 转发的数据帧中:
VLAN id = 3
MAC:(MAC_VLAN3,MAC_PCD)
IP:(192.168.2.11,192.168.3.11)
STEP 15
S1 收到 S2 转发的数据帧,交付网络层,根据目的IP地址,查路由表,将报文路由到 int vlan2,准备通过数据链路层交付给 PCC;
查找 PCC 的 MAC 地址,替换 VLAN 标签,封装并发送数据帧;
VLAN id = 2
MAC:(MAC_PCC,MAC_VLAN2)
IP:(192.168.2.11,192.168.3.11)
STEP 16
S2 收到 S1 转发的数据帧,根据其 VLAN id 和目的 MAC 地址,向 G 1/0/1 端口转发该数据帧;
同时,S2 根据端口 G 1/0/1 是 ACCESS 类型端口,去掉 VLAN 标签,从端口 G 1/0/1 转发该帧。
这样,PCC 收到 S2 转发的包含 ICMP Echo Reply 报文的数据帧。第一轮 ICMP 询问和应答过程结束。
子网划分设计型实验
题目不再重述,组网细节可从对题目的初步分析中得出。下附实验组网细节,老师的红笔批注共两处,第一处仅作讲解时用,第二处意为缺少详细配置指令,已经补在下面形成了完成的步骤。