简介:这份重庆邮电大学计算机网络实验报告PDF,面向高校计算机、通信等专业学生及网络初学者,用于完成课程实验、撰写实验日志或复习网络基础操作。报告完整覆盖四个实验模块:网络命令与使用、网络服务器建立与使用、网络协议分析、网络设备与VLAN配置,每个实验均包含实验目的、要求、主要步骤、结果与总结,并附有心得体会。资源包共1个PDF文件,大小约8.77MB,内容排版清晰,便于直接查阅或打印。目前已有198人学习下载。读者可从中获得ipconfig、ping、arp、ftp等常用命令的实操记录,IIS与Serv-U服务器的配置流程,Ethereal抓包分析Ping与FTP协议的工作过程,以及交换机管理、Port VLAN、Tag VLAN和路由器实现VLAN间通信的完整配置示例与测试结果,适合作为实验参考模板和期末复习资料。
1. 重邮计算机网络实验报告:四个实验的命令行复现与排错记录
如果你正在搜「计算机网络实验报告」,大概率是两种情况:要么实验课要求交一份能跑通的报告,要么自学网络时想找一份带真实命令和结果的参考。这份重邮的《计算机网络实验报告》覆盖了四个实验——网络命令与使用、网络服务器建立与使用、网络协议分析、网络设备与 VLAN 配置。它不是纯理论文档,每个实验都有具体的命令、配置步骤和结果记录,适合照着在虚拟机或实验室环境里复现。我把它拆开看了一遍,发现真正有价值的是那些命令背后的参数含义和容易翻车的地方,下面按实验顺序把可复现的部分整理出来。
2. 网络命令与使用:ipconfig、ping、arp、ftp 四个命令的参数拆解
这个实验看起来最简单,但 ping 那条命令的参数设置和 ftp 的登录流程,新手很容易卡住。先把四个命令拆开说清楚每个参数在干什么。
2.1 ipconfig /all 的输出字段怎么读
ipconfig /all和ipconfig的区别在于前者会显示完整信息,包括物理地址、DHCP 状态、DNS 服务器等。实验要求里明确要显示物理地址、IP 地址、子网掩码和默认网关,所以必须加/all。
# Windows 命令行下执行,查看所有网络适配器的完整配置 ipconfig /all # 如果只想看某个适配器,可以先列出适配器名称 ipconfig /all | findstr "适配器"执行后重点看这几行:物理地址对应 MAC 地址,IPv4 地址是主机 IP,子网掩码决定网段范围,默认网关是出口路由地址。如果 IPv4 地址显示为 169.254 开头,说明 DHCP 没拿到地址,这是常见翻车点,不是命令的问题,是网络环境的问题。
参数说明:/all是显示完整配置,不加只显示 IP 地址、子网掩码和默认网关。/release和/renew用于释放和重新获取 DHCP 地址,实验里没要求但排错时常用。
2.2 ping 大包加无限发送:-l 和 -t 的组合
实验要求向一台电脑无限制发送 60000 字节的数据包,命令是ping 172.16.38.31 -l 60000 -t。这里有两个参数需要说清楚。
# -l 指定发送缓冲区大小,单位是字节 # -t 表示持续发送直到手动中断(Ctrl+C) ping 172.16.38.31 -l 60000 -t # 如果只想发 4 个包测试连通性,去掉 -t 即可 ping 172.16.38.31 -l 60000 -n 4-l 60000的意思是每个 ICMP 包的载荷是 60000 字节。默认 ping 只发 32 字节,改成 60000 后包会被分片,因为以太网 MTU 通常是 1500 字节。如果中间设备禁止分片,会返回「需要分片但设置了 DF 标志」的错误。-t是持续发送,不加的话 Windows 默认发 4 个就停。实验里写「无限制发送」就是靠-t实现的。
注意:60000 字节的包在部分网络设备上会被丢弃,如果 ping 不通但小包能通,先检查中间链路是否允许分片。另外-t模式下按 Ctrl+C 才会停止,Ctrl+Break 可以查看当前统计。
2.3 arp 缓存的查看方式:本地和远程的区别
实验要求查看本地和另一台计算机的 ARP 缓存,命令分别是arp -a和arp 172.16.38.31 -a。这两个命令的差别在于作用范围。
# 查看本地计算机的 ARP 缓存表 arp -a # 查看指定 IP 的 ARP 缓存(需要目标主机可达) arp 172.16.38.31 -a # 清空本地 ARP 缓存(排错时用) arp -d *arp -a显示的是本机 ARP 表里所有已解析的 IP 和 MAC 对应关系。arp 172.16.38.31 -a是查看指定接口或指定 IP 的缓存,实际使用中如果目标主机不在同一网段,这个命令可能返回空。ARP 缓存是动态的,默认几分钟过期,所以刚 ping 过的 IP 才会出现在表里。
常见坑:如果 ARP 表里出现两个相同 MAC 对应不同 IP,可能是 ARP 欺骗,实验室环境一般不会遇到,但真实网络里要留意。
2.4 ftp 下载文件的完整交互流程
实验里的 ftp 命令序列是ftp open @s172.16.38.100、ls、lcd d:\test、get wrar501sc.exe。这里@s可能是实验环境里的特殊标记,标准 ftp 命令不需要这个前缀。
# 进入 ftp 交互模式 ftp # 连接服务器(标准写法,不需要 @s 前缀) open 172.16.38.100 # 输入用户名和密码后,列出服务器当前目录文件 ls # 切换本地下载目录到 d:\test lcd d:\test # 下载指定文件到本地当前目录 get wrar501sc.exe # 退出 ftp byeopen后面跟服务器 IP 或域名,回车后会提示输入用户名和密码。ls是列出远程目录,lcd是切换本地目录(local change directory),get是下载单个文件。如果下载多个文件用mget,上传用put。
参数说明:lcd不切换的话文件会下载到当前工作目录,容易找不到。get下载前确认本地目录有写入权限,否则会报「权限拒绝」。如果 ftp 服务器被动模式有问题,可以试试passive命令切换主动/被动模式。
3. 网络服务器搭建:IIS Web 站点与 Serv-U FTP 的配置路径
这个实验的核心是 IIS 和 Serv-U 两个服务器的配置。IIS 是 Windows 自带的,Serv-U 是第三方工具。配置过程中最容易出问题的是目录权限和端口占用。
3.1 IIS Web 服务器:主目录和默认文档的设置逻辑
IIS 配置的入口在「控制面板 → 管理工具 → Internet 信息服务管理器」。实验要求里提到创建 Web 站点、设置 IP 地址、设置网页所在目录、设置起始页。这几个步骤里,主目录和默认文档是关键。
# 如果 IIS 没安装,可以通过命令行启用(需要管理员权限) dism /online /enable-feature /featurename:IIS-WebServerRole /all # 检查 80 端口是否被占用 netstat -ano | findstr :80 # 如果被占用,找到 PID 后可以在任务管理器里结束对应进程 tasklist | findstr "PID"配置步骤:右键「网站」→ 新建网站 → 输入站点说明 → 设置 IP 地址和端口(默认 80)→ 指定主目录路径 → 设置默认文档(如 index.html 或 default.htm)。主目录是网页文件存放的位置,默认文档是访问站点时自动加载的页面。
常见坑:如果访问站点返回 403 错误,检查主目录的 NTFS 权限是否给了 IIS_IUSRS 读取权限。如果返回 404,检查默认文档是否在列表里,或者文件名是否拼写正确。端口 80 被占用的话可以换成 8080,访问时加端口号。
3.2 Serv-U FTP 服务器:用户绑定目录与权限设定
Serv-U 的配置流程是安装后创建域、创建用户、绑定发布目录、设定权限。实验里提到「创建用户,绑定发布目录,设定目录权限」,这三步的顺序不能乱。
# Serv-U 安装后通过管理控制台操作,没有纯命令行方式 # 但可以通过检查端口确认服务是否启动 netstat -ano | findstr :21 # 测试 FTP 是否可连接(在另一台机器上执行) ftp 172.16.38.100配置要点:创建域时绑定本机 IP,创建用户时设置用户名和密码,然后给用户绑定一个目录作为 FTP 根目录。权限设定里,「读取」和「写入」要分开控制,实验只要求下载所以给读取权限即可。如果允许匿名访问,需要额外开启匿名账户。
常见坑:Serv-U 默认端口是 21,如果被其他 FTP 服务占用会启动失败。目录权限里如果只给了「列出」没给「读取」,登录后能看到文件但下载会失败。另外 Windows 防火墙可能拦截 21 端口,需要在入站规则里放行。
3.3 用不同方式访问 FTP 服务器的验证方法
实验要求「用不同方式访问 ftp 服务器」,常见的有三种:命令行 ftp、浏览器 ftp://、资源管理器地址栏。
# 方式一:命令行 ftp 172.16.38.100 # 输入用户名密码后执行 ls 和 get # 方式二:浏览器地址栏输入 # ftp://172.16.38.100 # 方式三:Windows 资源管理器地址栏输入 # ftp://172.16.38.100三种方式的区别:命令行适合脚本化操作,浏览器和资源管理器适合手动浏览。如果浏览器访问失败但命令行能连上,通常是浏览器不支持被动模式或 FTP 协议被禁用。资源管理器访问时如果弹出登录框,输入 Serv-U 里创建的用户名和密码即可。
4. 协议分析抓包:Ethereal 过滤 ICMP、TCP、HTTP 的实操
实验三用 Ethereal(现在叫 Wireshark)抓包分析 Ping、FTP 和 HTTP 的工作过程。抓包本身不难,难的是从一堆数据包里过滤出需要的那几条。
4.1 Ethereal 安装与网卡选择
Ethereal 是 Wireshark 的旧名称,安装时需要注意 WinPcap 驱动。现在直接用 Wireshark 也可以,操作逻辑一样。
# 安装后打开,选择要抓包的网卡 # 如果看不到网卡,检查 WinPcap 或 Npcap 是否安装 # 抓包前先设置过滤器,避免抓到无关流量安装步骤:下载安装包 → 一路下一步 → 安装 WinPcap → 重启。打开后界面会列出所有网卡,选择正在使用的那个(通常是有流量波动的)。如果列表为空,说明驱动没装好,重新安装 WinPcap 即可。
注意:抓包时网卡要选对,选错网卡会什么都抓不到。实验室环境通常是有线网卡,笔记本可能同时有无线和有线,选正在通信的那个。
4.2 ICMP 抓包:分析 Ping 的请求与应答
抓 Ping 包时,过滤器设为icmp,然后在命令行执行 ping 命令。
# 在 Wireshark 过滤栏输入 icmp # 然后在命令行执行 ping 172.16.38.100 # 抓到的包会显示 Echo request 和 Echo reply 成对出现每个 Ping 过程包含一个 ICMP Echo request 和一个 Echo reply。展开包详情可以看到 Type 字段:8 表示请求,0 表示应答。如果只看到请求没看到应答,说明目标不可达或防火墙拦截了 ICMP 回应。
参数说明:过滤器icmp只显示 ICMP 协议包,不加过滤器会混入大量 TCP 流量。如果想看特定 IP 的包,用icmp and ip.addr == 172.16.38.100。
4.3 TCP 抓包:FTP 登录与下载的握手过程
FTP 基于 TCP,抓包过滤器设为tcp and ip.addr == 172.16.38.100,然后执行 ftp 登录和下载操作。
# Wireshark 过滤栏输入 tcp and ip.addr == 172.16.38.100 # 命令行执行 ftp 操作 ftp 172.16.38.100 # 输入用户名密码 ls get 实验日志模板.doc抓到的包会显示 TCP 三次握手(SYN、SYN-ACK、ACK),然后是 FTP 的命令和响应。FTP 的控制连接用 21 端口,数据连接用 20 或其他随机端口。如果只看到控制连接没有数据连接,可能是被动模式没协商成功。
常见坑:FTP 密码是明文传输的,抓包能看到 USER 和 PASS 命令。这也是实验心得里提到「信息安全重要性」的原因。如果抓不到数据包,检查是否选对了网卡,或者 FTP 是否走了加密通道。
4.4 HTTP 抓包:浏览网页的请求响应分析
HTTP 抓包过滤器设为http,然后浏览器访问mail.cqupt.edu.cn。
# Wireshark 过滤栏输入 http # 浏览器访问 # http://mail.cqupt.edu.cn # 抓到的包会显示 GET 请求和 200 OK 响应HTTP 请求包能看到请求方法(GET/POST)、Host 头、User-Agent 等。响应包能看到状态码(200 表示成功,404 表示未找到)和返回内容类型。如果访问的是 HTTPS 站点,抓到的包是加密的,看不到具体内容。
参数说明:过滤器http只显示 HTTP 协议,HTTPS 需要用ssl或tls过滤但内容加密。如果想看特定域名的请求,用http.host contains "cqupt"。
5. VLAN 配置避坑:交换机端口隔离、跨交换机 Tag VLAN 与路由器互通
实验四的 VLAN 配置是四个实验里最容易翻车的,因为涉及多台交换机、路由器和个人 PC 的配合。下面按实验顺序把配置逻辑和常见问题说清楚。
5.1 交换机基本操作与 TFTP 备份配置
实验第一步是把交换机配置备份到 TFTP 服务器。这需要先配置交换机管理 IP,然后在 PC 上开 TFTP 服务。
# 交换机上配置管理 IP Switch> enable Switch# configure terminal Switch(config)# interface vlan 1 Switch(config-if)# ip address 192.168.1.254 255.255.255.0 Switch(config-if)# no shutdown Switch(config-if)# exit # 保存配置到 TFTP 服务器 Switch# copy running-config tftp: # 输入 TFTP 服务器 IP 和文件名 config.txtPC 上需要运行 TFTP 服务器软件(如 Tftpd32),目录设为可写入。交换机执行copy running-config tftp:后按提示输入服务器 IP 和目标文件名。如果备份失败,检查 PC 防火墙是否放行了 TFTP 的 69 端口。
常见坑:交换机管理 IP 和 PC 的 IP 要在同一网段,否则连不通。TFTP 服务器目录权限要允许写入,否则会报「访问被拒绝」。
5.2 Port VLAN 端口隔离:同一交换机内划分 VLAN
Port VLAN 是把交换机的不同端口划分到不同 VLAN,实现端口隔离。
# 创建 VLAN 10 和 VLAN 20 Switch(config)# vlan 10 Switch(config-vlan)# exit Switch(config)# vlan 20 Switch(config-vlan)# exit # 把端口 1-5 划入 VLAN 10 Switch(config)# interface range fastEthernet 0/1-5 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 10 Switch(config-if-range)# exit # 把端口 6-10 划入 VLAN 20 Switch(config)# interface range fastEthernet 0/6-10 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 20 Switch(config-if-range)# exit # 查看 VLAN 配置 Switch# show vlan配置完成后,同一 VLAN 的 PC 能互通,不同 VLAN 的 PC 不能互通。show vlan能看到端口和 VLAN 的对应关系。如果 PC 之间 ping 不通但 VLAN 配置正确,检查 PC 的 IP 是否在同一网段。
参数说明:switchport mode access表示端口是接入模式,用于连接终端设备。switchport access vlan 10把端口划入 VLAN 10。如果端口之前是 trunk 模式,需要先改回 access。
5.3 跨交换机 Tag VLAN:Trunk 链路的配置要点
跨交换机 VLAN 需要在交换机之间的链路上配置 Trunk,并允许相应 VLAN 通过。
# 交换机 S1 的 Trunk 口配置 S1(config)# interface fastEthernet 0/24 S1(config-if)# switchport mode trunk S1(config-if)# switchport trunk allowed vlan 10,20 S1(config-if)# exit # 交换机 S2 的 Trunk 口配置 S2(config)# interface fastEthernet 0/24 S2(config-if)# switchport mode trunk S2(config-if)# switchport trunk allowed vlan 10,20 S2(config-if)# exitTrunk 链路会打 VLAN 标签(Tag),所以叫 Tag VLAN。两端交换机的 Trunk 口都要允许相同的 VLAN 通过,否则 VLAN 流量会被丢弃。如果跨交换机同 VLAN 的 PC 不通,先检查 Trunk 口是否 up,再检查 allowed vlan 列表是否包含目标 VLAN。
常见坑:Trunk 口默认允许所有 VLAN,但有些型号需要手动指定。如果一端配了 allowed vlan 10,20,另一端没配,可能导致 VLAN 20 不通。另外 PC 连接的端口必须是 access 模式,不能是 trunk。
5.4 路由器实现 VLAN 间通信:单臂路由与网关配置
实验最后一步是用路由器实现不同 VLAN 之间的通信。常见做法是单臂路由(Router-on-a-Stick),在路由器的一个物理口上配多个子接口。
# 路由器配置子接口 Router(config)# interface fastEthernet 0/0 Router(config-if)# no shutdown Router(config-if)# exit # 子接口对应 VLAN 10 Router(config)# interface fastEthernet 0/0.10 Router(config-subif)# encapsulation dot1Q 10 Router(config-subif)# ip address 192.168.1.254 255.255.255.0 Router(config-subif)# exit # 子接口对应 VLAN 20 Router(config)# interface fastEthernet 0/0.20 Router(config-subif)# encapsulation dot1Q 20 Router(config-subif)# ip address 192.168.2.254 255.255.255.0 Router(config-subif)# exit交换机连接路由器的端口要配成 Trunk,允许 VLAN 10 和 20 通过。PC 的网关分别指向对应子接口的 IP。配置完成后,VLAN 10 的 PC 能 ping 通 VLAN 20 的 PC。
参数说明:encapsulation dot1Q 10表示子接口处理 VLAN 10 的带标签流量。子接口的 IP 就是对应 VLAN 的网关。如果 PC 网关配错,跨 VLAN 通信会失败。路由器物理口不需要配 IP,子接口配即可。
6. 从实验报告到真实排错:三个验证习惯和一条命令
这份实验报告的价值不在于四个实验本身,而在于它覆盖了网络排错的基本功。我做完这几个实验后养成了三个习惯,分享出来。
第一个习惯:任何连通性问题先分层查。物理层看网线灯,数据链路层看 ARP,网络层看 ping,应用层看端口。实验一里的ipconfig /all、arp -a、ping就是按这个顺序来的。如果 ping 不通,先看 ARP 有没有解析到 MAC,再看路由表有没有目标网段。
第二个习惯:抓包之前先想好过滤器。实验三里如果不用icmp、tcp、http过滤,抓到的包根本没法看。真实排错时也是,先确定协议再抓包,不然数据量太大。我一般会先用ip.addr == 目标IP缩小范围,再加协议过滤。
第三个习惯:配置变更前先备份。实验四里交换机配置备份到 TFTP 就是干这个的。真实环境里改 VLAN 或 Trunk 之前,先copy running-config startup-config或者备份到 TFTP,改错了还能回滚。没有后悔药的时候,备份就是后悔药。
最后一条命令,是我每次配完 VLAN 都会执行的:
# 查看 VLAN 和端口对应关系 show vlan brief # 查看 Trunk 口状态和允许的 VLAN show interfaces trunk # 查看 MAC 地址表,确认 PC 学到了正确的端口 show mac address-table这三条命令能覆盖 VLAN 配置的大部分验证需求。show vlan brief看端口划分,show interfaces trunk看 Trunk 协商,show mac address-table看数据转发路径。如果 MAC 地址表里没学到 PC 的 MAC,说明链路或 VLAN 配置有问题。
从那以后我每次配完 VLAN 都强制走一遍这三条命令,确认端口、Trunk、MAC 表都对得上再收工。希望帮到你。
本文还有配套的精品资源,点击获取