ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

计算机网络实验手册:从VLAN划分到OSPF配置的排错实战指南

计算机网络实验手册:从VLAN划分到OSPF配置的排错实战指南 简介桂林航天工业学院软件工程专业学生的计算机网络实验报告适合正在学习网络原理、路由交换配置或准备相关课程设计的高校学生参考。报告围绕十个课程设计项目展开覆盖小型网络组建与常用命令、FTP服务器配置、VLAN划分、静态路由、RIPv2协议、WWW服务、单区域OSPF路由协议、协议数据包结构分析、子网划分及CRC计算等内容既包含基础知识讲解也有真实命令输出和配置过程记录。资源仅含1个PDF文件包体大小为5.62MB适合在电脑或移动端阅读。目前已有62人学习浏览对于希望系统梳理计算机网络实验要点、了解实验报告写法的读者来说是一份内容详实的参考资料。阅读后能够快速掌握网络设备配置流程、常用网络命令的使用方法以及故障诊断思路可用于复习备考或课程设计借鉴。1. 计算机网络实验报告一份能当排错手册用的实验合集在网络工程这行待久了会发现很多人调试网络靠的是经验堆出来的“玄学”而真正碰到底层协议细节时手里缺的往往是一份把命令、配置、现象串起来的参照物。这份《计算机网络实验报告》就是这样的存在它不是普通的学生作业而是用十个实验把常用命令、FTP与WWW服务搭建、VLAN划分、静态路由、RIPv2、OSPF、协议抓包分析、子网划分和CRC计算全部过了一遍的完整实践记录。对于正在复习备考的在校生、刚入行的网络运维新人甚至需要带新人的老工程师它都能直接拿来当操作手册和排错速查表用。尤其是报告里那些带真实输出结果的命令片段和路由表比单纯看教材直观得多。2. 小型网络组建与常用命令先把基础排查命令玩明白2.1 局域网设备与网络属性配置搞清楚路由器、交换机、服务器各管哪一层报告第一个实验就把问题提得很实在局域网里常见的网络设备有哪些答案落在电脑、服务器、路由器、交换机四类上。这里需要拎清楚它们的分工交换机工作在OSI第二层数据链路层负责根据MAC地址转发帧只能分割冲突域分割不了广播域路由器工作在第三层网络层负责在不同网段间选路和转发能分割广播域还充当网关服务器是被访问资源的提供方。很多新手在配置IP时会卡在一个点上——不知道网关应该填什么。其实网关就是离开本网段的第一个三层设备接口地址比如电脑的IP是192.168.1.66掩码255.255.255.0那它的网关通常就是同网段的路由器接口192.168.1.1。配置IP地址、子网掩码、网关这类网络信息时常见的做法是在操作系统的网络适配器属性里手动指定或者用命令行配置。Windows下可以用netsh interface ip set address 以太网 static 192.168.1.66 255.255.255.0 192.168.1.1来一次性配好地址、掩码和网关Linux下则用ip addr add 192.168.1.66/24 dev eth0加上ip route add default via 192.168.1.1。配完之后先别急着ping外网先按下面这套顺序自测。2.2 ping/ipconfig/tracert/netstat五条命令的排错姿势报告里给的排错顺序值得背下来我一般排查网络不通也会强制走这套流程。第一步是ping 127.0.0.1这是回环地址作用是验证本机的TCP/IP协议栈是否工作正常。如果这一步都不通说明协议栈安装有问题后面的排查都无从谈起如果通了说明TCP/IP协议正常。第二步是ping 本机IP验证网卡驱动和IP地址配置第三步是ping 网关验证本机和同一局域网内设备的连通性第四步再ping 远端IP验证跨网段路由是否可用。C:\Users\Administratorping 192.168.1.1 正在 Ping 192.168.1.1 具有 32 字节的数据: 来自 192.168.1.1 的回复: 字节32 时间1ms TTL128 来自 192.168.1.1 的回复: 字节32 时间1ms TTL128 来自 192.168.1.1 的回复: 字节32 时间1ms TTL128 来自 192.168.1.1 的回复: 字节32 时间1ms TTL128 Ping 统计信息: 数据包: 已发送 4已接收 4丢失 0 (0% 丢失)这里要会读TTL值ping返回的TTL能帮我们判断对端操作系统或设备类型。Windows默认TTL是128Linux系统是64Cisco设备通常是255经过一台路由器转发TTL会减1。如果ping一个远端地址返回的TTL是126那它大概率是经过了两跳的Windows主机。ping通且丢包率低网络基本没问题如果ping网关通、ping外网不通问题大多出在路由或缺省网关上。报告里还出现过一个现象第一次ping超时后面几个包都通了丢包率25%。这种情况十有八九是ARP缓存里还没有目标MAC地址第一个包触发ARP解析就丢了不代表网络有问题往下看第二次ping结果再下结论。PCping 192.168.2.2 Pinging 192.168.2.2 with 32 bytes of data: Request timed out. Reply from 192.168.2.2: bytes32 time1ms TTL126 Reply from 192.168.2.2: bytes32 time1ms TTL126 Reply from 192.168.2.2: bytes32 time1ms TTL126 Ping statistics for 192.168.2.2: Packets: Sent 4, Received 3, Lost 1 (25% loss)这段输出在Packet Tracer的PC命令行里很典型我看到第一行Request timed out反而会安心——后面的包全通说明链路本身没问题。这里还值得注意的是TTL从128变成了126说明跨了两台路由器也就是从PC0出发经过了两个三层设备才到192.168.2.2仔细看下一小节的tracert输出就能对上。ipconfig用来查看本机IP地址、子网掩码、默认网关。在Windows上,ipconfig /all还能看到DNS服务器和MAC地址排查DHCP分配异常时这个命令比图形界面好用太多。判断网关时有一个细节如果ipconfig输出的IP是169.254开头的说明没拿到DHCP地址网络配置一定有问题这个坑在后面的避坑章节会细说。tracert用来跟踪路由路径报告里的输出显示从192.168.1.1跳到192.168.4.2再到192.168.2.2这恰好对应了一个三台路由器组成的拓扑每一跳就是一个三层设备。netstat -a用来查看本机的TCP/UDP连接和监听端口比如某个服务启动后端口迟迟不生效用netstat -ano | findstr 8080一看便知是否在监听。nslookup则是测DNS解析不过在Packet Tracer里nslookup并不支持完整功能报告里出现的Unrecognized command不代表命令不存在只是模拟器没有实现这个命令真实环境中用nslookup www.baidu.com能直接看到解析结果。3. FTP与WWW服务搭建从文件传输到网站发布的一条龙3.1 FTP为什么需要两个端口控制连接和数据连接的机制报告里问了一个很多新手会懵的问题FTP为什么用两个端口答案是FTP把控制信息和数据分开传。控制连接走TCP 21端口负责传递用户名、密码、切换目录、上传下载指令这类命令数据连接走TCP 20端口专门传文件内容。这样设计的优势在于传输大文件的同时还能继续发命令比如传输到一半可以中止。理解这个机制后排错就有的放矢了主动模式Active: 客户端连接服务器21端口发指令服务器主动从20端口连回客户端的随机端口。 被动模式Passive: 客户端连接服务器21端口发指令服务器开放一个随机端口客户端主动去连这个端口。实际部署中主动模式经常被客户端防火墙挡掉因为服务器主动连回客户端的端口是不可预知的NAT环境下也常常不通。所以现在主流FTP服务器软件比如FileZilla Server默认都推荐被动模式。这个区分在报告里虽然没有明确写但“FTP为什么使用2个端口号”这个问题的答案核心就在这里。两端口机制还带来一个直接后果如果只放行了21端口没放行数据端口就会出现登录成功但列目录和下载文件卡死的情况。我遇到过不止一次看到这条记得去检查防火墙是否放行了数据传输使用的端口范围。3.2 用XAMPP和IIS搭FTP服务器关键设置清单报告用XAMPP和IIS分别搭建了FTP服务器。XAMPP里集成的是FileZilla FTP Server打开XAMPP控制面板启动Apache和MySQL然后点击FileZilla那一行的Admin按钮就能进入FileZilla Server的配置界面。这里有几个关键设置要盯住一是FTP服务器的监听端口默认21二是用户账号和密码三是用户可访问的目录路径四是权限至少要区分“读取”和“写入”。如果不给用户写入权限上传文件时就会提示550 Permission denied。IIS搭建FTP的过程是另一种思路在“服务器管理器”里添加角色和功能勾选FTP服务然后新建FTP站点指定物理路径和绑定地址。IIS的好处是和Windows账户体系打通可以复用本机用户作为FTP账号但配置起来比FileZilla要绕一些。客户端访问时直接在浏览器地址栏输入ftp://192.168.1.2会弹出登录框输入用户名密码。报告里给的LeapFTP是图形化客户端填上主机地址、端口、用户名、密码就能连上支持直接拖拽上传和下载。测试时优先用自己的内网IP测避免ftp://127.0.0.1通了别人却访问不了的误判。另外别忘了FTP服务器也要在Windows防火墙里放行相关端口不然局域网内其他机器连不进来。3.3 WWW服务配置从默认端口改成8080的完整过程WWW服务这一节报告建议用XAMPP构建并给出了用Discuz或PHPcms快速生成一个计算机网络技术论坛网站的思路。实际做法是把下载的建站程序解压放到XAMPP的htdocs目录下浏览器访问http://localhost/按引导完成安装安装过程中会要求创建数据库对应MySQL或MariaDB。需要注意虚拟主机配置默认的XAMPP和Apache只监听80端口安装完打开首页如果看到的是欢迎页而不是Discuz的安装界面通常是访问路径没写对需要带子目录访问或者改Apache的DocumentRoot指向你放程序的子目录。修改WWW服务默认监听端口为8080是必做的进阶操作。在Apache的配置文件httpd.conf里找到一行Listen 80改成Listen 8080有虚拟主机配置的话还需要同步改VirtualHost *:80为VirtualHost *:8080。改完保存重启Apache服务再用netstat -ano | findstr 8080确认端口已经监听。验证时浏览器输入http://服务器IP:8080访问而不是省略端口号直接敲IP。同样的道理改完端口后Windows防火墙要放行8080不然外面的人还是访问不到。报告里没有提到这点但这是我踩过多次的坑。4. VLAN划分与路由协议配置从隔离广播域到全网互通4.1 VLAN的Access端口和Trunk端口为什么同VLAN通、跨VLAN不通报告第三个实验提出了一个典型的网络场景两台PC划分在不同VLAN里互相ping不通。这正是VLAN的核心作用——隔离广播域。交换机默认所有端口都在VLAN 1里广播帧会转发到所有端口划了VLAN后广播只在本VLAN内传播。在Cisco Packet Tracer里配置命令很标准Switchenable Switch#configure terminal Switch(config)#vlan 10 Switch(config-vlan)#name IT Switch(config-vlan)#exit Switch(config)#interface fastEthernet 0/1 Switch(config-if)#switchport mode access Switch(config-if)#switchport access vlan 10 Switch(config-if)#exit这段配置的意思是创建一个VLAN 10然后把fastEthernet 0/1口设成access模式并划入VLAN 10。access口只能属于一个VLAN一般用来接PC。如果交换机之间需要传递多个VLAN的流量就要用trunk口Cisco设备上命令是switchport mode trunk。两个交换机之间的链路如果没有配trunk即使两边VLAN编号一样也通不了这是VLAN实验里最容易翻车的地方。报告的实验里PC1 ping PC5不通原因就是两台PC在不同VLAN里广播域被隔开二层无法通信。解决办法是加一台路由器用单臂路由的方式让VLAN间互通。配置路由器子接口Routerenable Router#configure terminal Router(config)#interface fastEthernet 0/0.10 Router(config-subif)#encapsulation dot1Q 10 Router(config-subif)#ip address 192.168.10.1 255.255.255.0 Router(config-subif)#exit Router(config)#interface fastEthernet 0/0.20 Router(config-subif)#encapsulation dot1Q 20 Router(config-subif)#ip address 192.168.20.1 255.255.255.0子接口是逻辑接口物理口fastEthernet 0/0要设成no shutdown打开。encapsulation dot1Q 10的意思是这个子接口处理打了VLAN 10标签的帧。配完把PC的默认网关分别指向192.168.10.1和192.168.20.1跨VLAN通信才能通。很多同学卡在这一步就是因为只配了子接口IP忘了写encapsulation dot1Q这条命令。4.2 静态路由配置ip route命令的参数与路由表判读静态路由适用于网络规模小、拓扑稳定、路由数量不多的场景。报告里给出了三台路由器的拓扑核心命令是ip route。在R1上要访问R3背后的网段就需要手动指定路径Router(config)#ip route 192.168.3.0 255.255.255.0 192.168.2.2命令的格式是ip route 目的网段 子网掩码 下一跳地址。这里的192.168.2.2是下一跳地址也就是R1要把去192.168.3.0/24的数据包交给谁。路由器收到数据包后查路由表找到匹配条目把包发给下一跳由下一跳继续转发。静态路由有个特点只告诉路由器“怎么走”不告诉它“路上是不是断了”。如果下一跳设备挂了这条路由不会自动撤销数据包发送会失败这也是静态路由不适合大型动态网络的直接原因。用show ip route查看路由表时要学会看几个符号。C表示直连网络S表示静态路由R表示RIP动态学到的路由O表示OSPF学到的路由。报告里的输出很有代表性C 192.168.1.0/24 is directly connected, Ethernet1/0 C 192.168.2.0/24 is directly connected, Serial0/0 S 192.168.3.0/24 [1/0] via 192.168.2.2这条S路由的意思很直接去192.168.3.0/24把包丢给192.168.2.2就行。后面的[1/0]里1是管理距离0是度量值静态路由管理距离是1优先级很高只有当这条路径不存在时路由器才会考虑其他协议学到的路由。调试时逐个路由器show ip route看到每台都有去目标网段的条目再ping远端验证连通性思路就清晰了。4.3 RIPv2基本配置跳数限制、UDP 520、更新机制RIPv2是距离矢量路由协议选路指标是跳数最大15跳16跳就视为不可达。配置RIPv2的步骤报告里写得很完整命令也标准Router(config)#router rip Router(config-router)#version 2 Router(config-router)#network 192.168.1.0 Router(config-router)#network 192.168.2.0 Router(config-router)#no auto-summary这里有一个关键点容易理解错network命令不是通告某个接口而是宣告这个网段参与的RIP进程让路由器把这个网段的路由信息广播给邻居。RIP更新报文采用UDP协议源端口和目的端口都是520。RIP的更新机制是周期性广播默认30秒发一次所以网络拓扑变化后要等一段时间才能收敛这是它和OSPF相比最大的短板。debug ip rip可以实时看到路由器发送和接收的RIP更新排查“为什么路由表里没有学到某个网段”时特别有用。报告里抓包看到三条RIP更新报文目的网络分别是192.168.3.0、192.168.4.0、192.168.5.0metric分别对应1、1、2这说明相邻路由器从不同下一跳学到了这些网段跳数在递增。RIP还有一个必须要提的坑被动接口。如果不想让某个接口发送RIP更新要在RIP进程里配置passive-interface default或指定接口否则RIP广播会穿透到不需要的网段引起路由信息和带宽浪费。这个在实际网络部署中很常见很多人在配置完RIP后发现路由一直震荡就是没处理被动接口。4.4 单区域OSPF配置Router ID、cost与邻居关系OSPF是链路状态路由协议和RIP完全不同的思路。它通过Hello报文发现邻居通过LSA泛洪交换链路状态信息每台路由器都用Dijkstra算法自己计算最短路径树度量值cost默认基于接口带宽。在Cisco设备上10M以太网cost是10100M是1Serial串行链路默认是64。配置单区域OSPF的标准过程是Router(config)#router ospf 1 Router(config-router)#router-id 1.1.1.1 Router(config-router)#network 192.168.1.0 0.0.0.255 area 0 Router(config-router)#network 192.168.2.0 0.0.0.255 area 0注意network命令后面的通配符掩码0.0.0.255这是反掩码规则255.255.255.0的正掩码对应0.0.0.255。写错了OSPF就不会宣告对应的网段。Router ID是整个OSPF区域的标识最好手工指定否则路由器会自己选一个接口IP作为Router ID可能会选到意想不到的地址给后续排错埋下隐患。调试OSPF状态两个命令必看。show ip ospf neighbor查看邻居状态正常应该是FULL状态如果卡在EXSTART或者EXCHANGE多半是MTU不匹配或区域ID不一致。show ip ospf interface查看接口在OSPF里的具体参数包括cost值和所属区域。OSPF要求所有非骨干区域必须直接连到area 0否则区域间路由学不全。报告里实验七是单区域OSPF所以这里只需要一个area 0。实际企业网络中多区域OSPF的配置逻辑也是这个基础把骨干区域area 0铺好其他区域像卫星一样挂在它上面。5. 协议分析、子网划分与CRC计算避坑与常见问题排查5.1 用Wireshark抓包从以太网帧头看到HTTP请求报告第八个实验是常用协议数据包结构分析。用Wireshark或Ethereal抓包是最直观的方式。抓包时要学会看分层结构以太网帧头总共14字节——目的MAC 6字节、源MAC 6字节、类型字段2字节紧接着是IP头最小20字节再往上是TCP头最小20字节。抓一个HTTP请求能看到完整的TCP三次握手过程SYN、SYNACK、ACK。用Wireshark的过滤表达式能快速定位目标包tcp.port 80 ip.addr 192.168.1.66 http.request这三个过滤器分别按TCP端口、IP地址、HTTP请求来筛选数据包。分析时重点看TCP窗口大小用于流控、序列号用于可靠传输、Flags字段标记握手状态。抓包时如果看到大量TCP重传或者Dup ACK说明网络存在丢包或延迟问题这两类包是判断链路质量的直接证据。5.2 子网划分的三步计算法子网划分是网络基础里最磨人的计算题也是笔试面试的高频考点。其实记住三个步骤就能应对大部分题目第一步确定需要借几位主机位第二步算新子网掩码第三步算子网地址范围。举个例子一个C类网段192.168.1.0/24要分成四个子网。2的2次方等于4所以借2位主机位掩码从255.255.255.0变成255.255.255.192二进制11000000对应192每个子网有2的6次方减2等于62个可用主机地址。四个子网分别是192.168.1.0/26、192.168.1.64/26、192.168.1.128/26、192.168.1.192/26。算完后要检查可用IP范围比如192.168.1.0/26的可用范围是.1到.62.0是网络地址.63是广播地址。真正配置设备时如果把这些保留地址配给了主机就会出现ipconfig看到IP正常但网络不通的怪现象。5.3 CRC校验模2除法与校验码生成CRC计算是第十个实验。在计算机网络中CRC用于检测数据在传输过程中是否发生了比特错误。核心是模2除法也就是二进制除法不进位不借位按位异或。生成多项式G(x)决定CRC的版本比如CRC-16常用多项式x^16x^15x^21对应的二进制是11000000000000101。计算校验码的步骤1. 假设原始数据是 1011001生成多项式是 11014位最高次幂n3 2. 原始数据左移n位后面补3个0变成 1011001000 3. 用多项式1101做模2除法每一步用异或运算 4. 得到的余数位数不足n位高位补0就是CRC校验码 5. 发送方把校验码附加在原始数据后面一起发送 6. 接收方用相同多项式除整个收到的数据余数为0则校验通过这个步骤里最容易错的是第3步。模2除法里当前余数首位是0就商0直接把除数下拉一位继续处理首位是1就商1异或一次。和普通除法的规则完全不同很多人在这里翻车。我在处理时有一个习惯先拿一个短数据在纸上把模2除法过程完整推一遍确认余数对了再去做长的数据避免从头错到尾。另外生成多项式写反也会导致结果完全不对做题前要看清给的G(x)是从高次到低次还是反过来。5.4 实验与解题过程中的五个常见坑第一个坑是ping 127.0.0.1通了、ping 本机IP通、ping 网关也通但ping 外网IP不通。现象是内网都能访问一出网关就掉线。原因多半是路由器上没有默认路由或静态路由不完整。解决方法是登录路由器执行show ip route看到有指向目标网段的条目没有就配置ip route 0.0.0.0 0.0.0.0 下一跳。第二个坑是VLAN配置后同VLAN能通、跨VLAN不通。现象是同一台交换机上不同VLAN的PC互相ping不通。原因通常是没有三层路由接口或者路由器子接口漏配了encapsulation dot1Q命令。解决方法是确认交换机上行口是trunk模式路由器子接口正确封装了对应VLAN的dot1Q标签并给子接口配上正确的网段地址。第三个坑是OSPF邻居卡在EXSTART或EXCHANGE状态。现象是show ip ospf neighbor长时间看不到FULL。原因有两种最常见一是两端接口的MTU不一致导致数据库描述包太大被丢弃二是两边network命令里的区域ID写错了。解决方法是把两端MTU改成一致在接口下用ip mtu 1500手动指定再重新核对area配置。第四个坑是修改WWW端口后本机能访问、远程不能访问。现象是浏览器在服务器本机访问http://localhost:8080正常但在其他机器访问http://服务器IP:8080超时。原因基本是防火墙拦截了8080端口。解决方法是放行Windows防火墙里添加“入站规则”选TCP和特定端口8080允许连接。第五个坑是子网划分后IP地址和掩码看不出毛病但网络不通。现象是网关能ping通但跨网段通信失败。原因很可能是把网关地址配成了子网地址或者广播地址。解决方法是回查分配表确认网关在可用主机范围内并且所有主机的掩码一致。6. 验证与进阶技巧把实验报告变成运维动手能力6.1 从实验到实战的四个转换思路读完这份实验报告最有价值的不是照着敲一遍命令而是理解每个实验背后的排查方法论。第一个转换是把“ping本机—ping网关—ping远端”的顺序内化成排错肌肉记忆这几乎能覆盖八成网络不通的场景。第二个转换是搭建FTP和WWW服务时强制自己记录三件事端口、目录、账户权限出问题时先看这三项。第三个转换是配置路由协议前先在纸上画一张拓扑图把每台设备的接口IP、网段、下一跳标出来再动手配。报告里静态路由和OSPF实验其实都在反复训练这件事。第四个转换是抓包分析不要停留在看的层面要学会用过滤器和统计功能量化判断——看到大量TCP重传就去查链路和带宽看到ARP请求反复出现就去查IP冲突。6.2 我整理成的一张故障复查清单我把这套实验报告的内容浓缩成了一张排查顺序清单每次网络出问题都按这个顺序过一遍。第一步ipconfig确认本机地址、掩码、网关排除169.254这类未获取到地址的情况。第二步ping 127.0.0.1判断协议栈。第三步ping 网关判断局域网。第四步ping 远端IP判断路由。第五步tracert 目标定位断点在第几跳。第六步netstat -ano检查服务端口监听状态。第七步如果涉及路由协议show ip route和show ip ospf neighbor确认路由表和邻居状态。这张对照表我贴在工作台边上带新人时也要求他们按这张表做而不是上来就抓包或者重装驱动。经验是从一次次反复踩坑里堆出来的。这份实验报告里的命令和配置我后来在真实网络环境里几乎原样用过一遍在路由器和交换机上敲show ip route排查丢包在服务器上改Apache端口放行防火墙在核心交换机上配trunk和VLANIF。唯一的变化是设备厂商从Cisco换成了华为、H3C配置命令略有差异但排查思路完全一致。从那以后我每次处理网络故障都会强制自己先走一遍这套验证流程再怀疑设备硬件问题。希望这份拆解能让你少走一些弯路把实验里学到的思路真正用到实处。本文还有配套的精品资源点击获取
返回列表