ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

以太网组网实战:从MAC地址学习到VLAN广播域隔离

以太网组网实战:从MAC地址学习到VLAN广播域隔离 简介计算机网络课程中的以太网组网实验完整报告doc格式面向高校计算机网络实验环节适合需要完成同类实验或复习局域网基础配置的本科学生。报告以福建农林大学计算机网络实验为背景系统记录了从查看主机TCP/IP协议参数、利用ping与tracert进行网络连通性测试到使用Packet Tracer模拟组网的完整过程。其中包含实验步骤、命令执行结果、思考题解答以及实验总结并对IP地址分类、子网掩码、默认网关、TTL值判断操作系统等知识点进行了具体说明。资源包仅含1个doc文件大小约364KB内容精炼、结构完整可直接作为实验报告模板或复习参考。目前已有118人学习适合需要快速理解以太网组网流程、掌握网络测试命令应用及撰写实验报告的初学者参考使用。1. 以太网组网实验不是把线插通而是把广播域玩明白很多人在做“计算机网络 实验一 以太网组网实验”时最容易犯的错就是把 ping 通当成全部目标。线插上、IP 配好、丢包率一测小于 1%报告写满三页就交差可被问到“交换机收到一个广播帧会怎么处理”或者“两个 VLAN 的 PC 为什么互 ping 不通”时却说不出所以然。这个实验的真正价值是在一台交换机、几根双绞线和几台 PC 之间把二层转发原理亲手“逼”出来观察 MAC 地址表怎么学习验证 ARP 怎么工作再用 VLAN 把广播域切一遍搞清“隔离”与“路由”各自的职责。新手可以照本文步骤走熟手可以重点看参数边界和排错思路这份经验对后续的路由实验和网络排错实验都通用。2. 组网前的准备拓扑、设备、线缆的选型逻辑2.1 先把拓扑图画对节点、链路、网段三条信息缺一不可很多学生动手前不做设计直接拿实验室现有设备和上一届同学留下的拓扑图就开始。这样做出来的实验不知道哪个接口对应哪个功能配 IP 时来回改出了问题全靠猜。我一般会先在纸上做这样几步把实验涉及的所有节点用方框列出PC、交换机、路由器各自标注型号和接口数把链路的物理类型直接写在线上——PC 到交换机是普通以太网直连交换机到交换机是级联路由器与交换机之间通常是直连线最后在拓扑空白处把规划好的网段写出来每台设备属于哪个子网、掩码多少、网关指到哪里。这三条信息都对上后边配 IP 时才不会来回折腾。画图时还应该把广播域的边界勾出来。如果所有 PC 在同一个二层广播域就画一个大虚线框把它们圈起来如果后面要拆 VLAN就提前在交换机上用不同颜色区分。这一步做了验证“隔离是否生效”时你直接能从图上说出预期结果而不是开着抓包工具瞎猜。顺手把每台 PC 的 MAC 地址后四位标在节点旁边做 ARP 验证时能对号入座省去临时进系统查 MAC 的动作。以最常见的课程实验为例三台 PC 接到一台交换机规划的地址可以这样分配PC1 是 192.168.10.11/24PC2 是 192.168.10.12/24PC3 是 192.168.20.11/24交换机管理地址是 192.168.10.10/24。注意 PC3 已经被规划到了另一个网段这是为了后面 VLAN 验证时能同时观察“二层隔离”和“三层不同网段”两个变量。拓扑图上把这个写清楚实验报告的第一章就立住了。2.2 集线器还是交换机决定你能“看到”什么集线器是物理层设备所有端口共享同一个冲突域交换机是数据链路层设备每个端口独立冲突域。但很多同学对二者的差别只停留在“上课听过”的层面。这个实验可以直接用现象区分在集线器组网中一台 PC 抓包能看到其他 PC 的广播帧甚至单播帧也会被复制到所有端口在交换机组网中除非你配了端口镜像否则只能看到自己的流量和广播帧。这种观察比背书深刻得多。现在实验室通常没有独立集线器了但可以在交换机上开启端口镜像来模拟集线器的广播行为这在讲“共享型介质”的冲突与重传时仍然能用。真正动手时我按实验目标来选型只做连通性验证用交换机少出幺蛾子要看冲突与重传用集线器或者交换机的镜像口要验证 MAC 地址学习与老化必须用交换机还要能查看 MAC 地址表。这个选择直接决定实验报告里“现象观察”那一部分的结论。集线器和交换机的另一个关键区别是带宽复用方式。集线器所有端口共享总线带宽8 口百兆集线器接满 8 台 PC理论分摊到每台只有 12.5Mbps 左右而且半双工下收发不能同时进行交换机每个端口独享带宽全双工下收发同时进行实测速率基本就是端口速率。这就是为什么你在集线器组网里同时 ping 三台 PC 时丢包率会明显高于交换机。报告中写出这组对比含金量立刻不一样。关于交换机自学习过程我建议做一个固定流程先在 PC1 上 ping PC2交换机从入端口学到 PC1 的源 MAC从出端口学到 PC2 的源 MAC然后趁表项还没老化再从 PC3 ping PC1最后查看 MAC 地址表把表项和物理端口对应起来等待老化时间后再看一次表项消失。这样就把“学习—转发—老化”三个阶段都验证到了。查看 MAC 表的命令思科设备是show mac address-table华为设备是display mac-address都是只读命令不影响网络运行。2.3 双绞线与接口线序、速率、距离别选错实验通常要求自己压制网线所以水晶头线序是基本功。EIA/TIA-568B 的线序是白橙、橙、白绿、蓝、白蓝、绿、白棕、棕。两端都做 568B 的线叫直通线一头 568A 一头 568B 的线叫交叉线。PC 到交换机用直通线PC 直连 PC 或交换机直连交换机用交叉线。早期设备没有自动翻转功能线序错了直接不通现在绝大多数网卡和交换机都支持 auto-MDIX能自动适配直通与交叉所以在新型设备上交叉线直连也能通。但实验报告要求你写出线序并说明为什么要用直通线这就要真懂 568A 和 568B 的区别。速率方面也容易踩坑。如果交换机端口只支持 1000BASE-T那八根线芯全部都要接通才算数有些实训用的旧线只接了四芯只能协商到 100M。压制水晶头时第 1、2、3、6 脚的位置最容易出错线序看起来对用测线仪测却是一通一断。压完后用测线仪逐芯检测是最稳妥的做法。距离参数同样要记牢IEEE 802.3 规定双绞线单段链路最大长度是 100 米。实验室里交换机放机柜、PC 放角落通常没问题但如果你把两台相距很远的设备通过交换机级联单段超过 100 米就必须中间再加交换机或用光纤否则信号衰减到接收端分不清 0 和 1表现就是 ping 丢包率忽高忽低。排查时先看端口协商速率看是否从 1G 降到 100M如果降了再查交换机端口的 CRC 错误计数。3. 从接线到连通搭出一台可互通的以太网3.1 接线与端口状态检查先确认物理层正常搭网的第一步不是配 IP而是把物理层确认好。把 PC 网口和交换机端口用直通线连好后先看两边指示灯。通常绿色常亮表示链路建立黄色或橙色表示协商速率较高闪烁表示有数据收发。但指示灯只能说明物理层通了不能说明数据层正常工作所以还要进入交换机系统确认端口协议状态是 up。华为设备查看端口状态的命令是system-view interface GigabitEthernet 0/0/1 display this quit display interface GigabitEthernet 0/0/1逻辑说明system-view是进入系统视图interface进入端口视图display this可以看到当前端口下已有的配置display interface能看到端口的物理状态、协议状态、协商速率和双工模式。这是排查“灯亮但 ping 不通”问题时的第一道检查。参数说明关注输出里PHY: Up和Protocol: Up两个字段前者表示物理层链路正常后者表示数据链路层协议未被动关闭。如果PHY是 Down问题在网线或两端设备如果只有Protocol是 Down多半是端口被手动 shutdown 或配置了不让端口的协议。在 Cisco Packet Tracer 或真实思科设备上等价命令是show ip interface brief看输出中端口状态是否为up/up。第一个 up 是物理层第二个 up 是协议层。只要有一个是 down后面配 IP 和 VLAN 都没有意义。这一步做完物理层才算真正验收。3.2 配静态 IP选择网段、掩码与网关的参数依据物理层正常后给每台 PC 配置静态 IP。Windows 下可以通过图形界面配也可以在命令行里用netsh操作。实验要求理解参数含义所以建议用命令行方式netsh interface ip set address name以太网 static 192.168.10.11 255.255.255.0 192.168.10.1逻辑说明这个命令把名为“以太网”的网卡设置为静态 IP 192.168.10.11掩码 255.255.255.0网关 192.168.10.1。如果实验拓扑中没有路由器网关可以不写但写上报错也不会影响同网段通信只是跨网段访问时没有出口。参数说明IP 地址必须和交换机管理地址在同一网段才方便管理所以这里 PC1 的 IP 是 192.168.10.11掩码 255.255.255.0 对应最多 254 个可用主机地址网关地址建议和交换机管理地址分开避免混淆设备角色。如果三台 PC 要互通前三位必须一致最后一位不能重复否则会产生 IP 冲突表现为网络时通时断。Linux 类的实验环境用ip命令也一样ip addr add 192.168.10.11/24 dev eth0 ip link set eth0 up逻辑说明ip addr add添加地址/24是掩码的 CIDR 写法dev eth0指定网卡ip link set up启用网卡。这个命令在 Ubuntu 等系统上重启后会被覆盖只适合临时测试。如果一个实验只需要验证二层通信建议把网关先空着不要凭记忆填一个不存在的地址否则后面排查时你会怀疑是网关没通还是物理链路有问题。验证配置是否生效用ipconfig /all或ifconfig查看。重点确认三件事IP 地址和预设一致、子网掩码一致、网卡状态没有显示“媒体已断开”。这三个字段有一个不对直接回头改配置不要急着 ping。3.3 用 ping 和 arp 验证连通不等于转发正确配置完成后第一件事是 ping 同网段的其他 PC。以 Windows 为例ping 192.168.10.12 -t逻辑说明-t参数让 ping 持续发送直到手动 CtrlC 停止方便观察丢包率变化。刚开始按 ping 时第一包往往是超时因为交换机 MAC 表还没有学习到目标地址ARP 也在解析中从第二包开始应该全部回复。如果一开始就不通先确认目标 PC 的防火墙是否放行 ICMPWindows 默认防火墙通常会拦截 ping 请求需要临时关闭或添加入站规则。ping 通之后再查 ARP 表验证 MAC 解析过程arp -a这个命令列出本机 ARP 缓存中的 IP 到 MAC 映射。如果 192.168.10.12 出现在列表里说明 ARP 已经成功解析二层帧交换是完整的。这时去交换机上执行display mac-address应该能看到对应 MAC 地址出现在正确端口下这就把 ARP 和 MAC 学习两件事串起来了。实验验证中TCP 连接使用了telnet或“Windows 网络邻居”并不能很好地隔离问题因为应用层还有很多变数。ping 和 arp 的组合是网络层加链路层的最小验证闭环不涉及传输层协议状态是最稳定的判断手段。做完这一步基础组网算是真正跑通。4. 让实验值回票价用 VLAN 把广播域切给你看4.1 广播域为什么要拆从“都通”变成“可控”基础组网跑通后三台 PC 在同一个二层广播域中PC1 发一个广播帧PC2 和 PC3 都会收到。这个现象用抓包工具能看到在 PC2 上抓包PC1 发起 ping 到未知地址时会先发 ARP 广播PC2 的抓包窗口里就会出现 ARP 请求。这样的组网虽然有通信便利但广播会消耗每一台 PC 的 CPU 和带宽。当网络规模变大广播风暴就成了最常见的网络事故原因。VLAN 的作用是在二层把端口分组交换机只把广播帧转发到同一 VLAN 的端口。PC1 和 PC2 分到 VLAN 10PC3 分到 VLAN 20那么 PC1 发广播时只有 PC2 能收到PC3 的网卡虽然还连着交换机但二层上看不到任何属于 VLAN 10 的广播帧。这就是广播域隔离。但要注意VLAN 隔离是二层隔离不是“物理断开”。PC1 和 PC3 的物理链路都连在交换机上端口灯都是亮的甚至网卡速率都正常但就是 ping 不通。这就是 VLAN 最常见的迷惑点物理层全是 up网络层却没有一个可行路径。实验报告里如果能写清楚“二层可见性是广播通信的前提”这一章的分数就到手了。那 VLAN 之间什么时候能通必须经过三层设备比如路由器或三层交换机。当 PC1 要访问 PC3 时发现目标 IP 不在本网段会把帧发给网关网关拿到帧后在路由表中找到出接口重新封装成 VLAN 20 的帧发给 PC3。整个过程是“二层隔离三层转发”。这个结论直接决定后续配置的拓扑结构。4.2 在交换机上划分 VLAN命令与参数设置最常见的 VLAN 划分方式是按端口划分把交换机的某个物理端口划到指定的 VLAN 里。以华为交换机为例配置过程如下system-view vlan 10 quit vlan 20 quit interface GigabitEthernet 0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet 0/0/2 port link-type access port default vlan 10 quit interface GigabitEthernet 0/0/3 port link-type access port default vlan 20 quit逻辑说明先创建 VLAN 10 和 VLAN 20然后把接 PC1 和 PC2 的端口划入 VLAN 10把接 PC3 的端口划入 VLAN 20。port link-type access表示该端口只承载一个 VLAN 的帧收到不带 VLAN 标签的帧时打上默认 VLAN 的标签转发出去前再把标签剥掉。对连接 PC 的口来说access 是最合适的工作模式。参数说明vlan编号的范围是 1 到 4094VLAN 1 是交换机默认 VLAN所有端口默认都在里面。实验中应该让数据 VLAN 从 10 开始编号避开默认 VLAN 的干扰。port default vlan 10设置的是端口的默认 VLAN也就是 PVID这个值和以后抓包看到的 VLAN 标签必须对应上否则抓包会显示“无标签”但交换机实际已经在转发了。如果在 Cisco Packet Tracer 上操作配置稍微不同configure terminal vlan 10 exit vlan 20 exit interface fastEthernet 0/1 switchport mode access switchport access vlan 10 exit interface fastEthernet 0/2 switchport mode access switchport access vlan 10 exit interface fastEthernet 0/3 switchport mode access switchport access vlan 20 exit逻辑说明这段命令完成同样的事思科用switchport mode access指定端口模式用switchport access vlan指定归属 VLAN。和华为命令对比可以发现命令风格虽然不同但参数逻辑完全一致先建 VLAN再改端口模式再指定端口所属 VLAN。理解这个顺序换设备就不会懵。4.3 配置后再 ping怎么判断隔离真的生效VLAN 配置完成后从 PC1 ping PC2应该还是通的从 PC1 ping PC3预期不通。验证时注意观察 ARP 解析过程PC1 ping PC3 时会先尝试 ARP 解析 PC3 的 MACARP 请求广播帧只会在 VLAN 10 内传播PC3 收不到所以 PC1 会一直显示“请求超时”。这正是广播域隔离的直接证据。在交换机上验证更客观display vlan这个命令显示当前所有 VLAN 和各 VLAN 包含的端口。确认 PC3 所在端口在 VLAN 20 里PC1 所在端口在 VLAN 10 里。再执行display mac-address vlan 20能看到 VLAN 20 下发过帧的设备 MAC 地址只有交换机连 PC3 的那个端口学到的条目——说明 VLAN 20 确实没有收到来自其他 VLAN 的流量。抓包验证时在 PC2 上开 Wireshark过滤条件设为arp然后从 PC1 发起 ping 一个不存在的地址比如 192.168.10.99。PC2 应该能看到 ARP 广播请求因为这个广播发生在 VLAN 10 内。然后再从 PC1 ping PC3PC2 上不会出现任何 ICMP 或 ARP 流量因为整个通信过程根本不会经过 VLAN 10 的广播域。实验报告里如果能截一张“同一个 VLAN 能看到广播、另一个 VLAN 看不到”的对比图这个 VLAN 实验就算做到位了。5. 组网避坑指南五类常见失败与逐条排查5.1 现象网卡提示“网络电缆被拔出”这是最常见的物理层翻车。现象是网卡图标直接显示红叉无论怎么配 IP 都没用。原因是水晶头的八根线没有完全压到位或者压线时 RJ45 弹片没有把线芯顶到金属触点。还有一种情况是实验桌下方的网线被椅子压到线芯折断。解决先把线拔下来用测线仪逐芯测试。测线仪 1 到 8 号灯依次亮起才算合格。如果某一芯不亮直接用压线钳重新压制水晶头。压制前把线芯顺序捋直插入水晶头时要顶到头从侧面观察金属触点是否压到了线芯。注意网络灯亮不代表线芯全通很多百兆网线只用 1、2、3、6 四芯也能亮灯但速率上不去。问题要在压制阶段解决不要事后推测。5.2 现象网卡显示连接正常但 ping 不通同网段 PC这是实验里最折磨人的情况。物理层灯亮、网卡显示已连接但 ping 就是不通。原因是端口被划到了非预期 VLAN或者 PC 的子网掩码填错。很多实验台是多人共用的上一组学生做了 VLAN 实验后没有清配置PC1 接到的是 VLAN 10 口PC2 接到的是 VLAN 20 口两个口不在同一个广播域自然不通。解决先看 PC 的ipconfig /all确认 IP 和掩码没问题再上交换机执行display vlan或show vlan看端口归属最后把 PC 的网线换到 VLAN 相同的端口或者把交换机端口全部 reset 回默认配置。华为设备清端口配置的命令是interface GigabitEthernet 0/0/1 undo port default vlan undo port link-type逻辑说明先取消端口默认 VLAN 归属再恢复端口链路类型为默认值。操作后端口回到 VLAN 1。如果不知道哪些端口被动过直接把交换机恢复出厂再重新配不过要注意分清交换机管理地址不会因此丢失。5.3 现象第一次 ping 通第二次超时循环反复现象非常具有迷惑性ping 目标地址时第一包通了第二包超时第三包又通丢包率在 50% 上下浮动。原因是 IP 地址冲突或 ARP 缓存抖动。如果两台 PC 的 IP 相同交换机会在两个端口之间反复学习 MAC 地址造成 MAC 表震荡数据帧一会儿送到 A一会儿送到 B。解决在每台 PC 上执行ipconfig /all确认局域网内没有重复 IP。然后用arp -d清除本机 ARP 缓存重新 ping 测试看是否恢复稳定。如果交换机支持查看日志多观察是否有 MAC 地址在两个端口间跳变的记录。华为交换机查询命令是display logbuffer | include MAC找到 MAC 跳动对应的端口把冲突设备的 IP 改掉即可。5.4 现象PC 能 ping 通交换机管理地址但 ping 不通另一台直连 PC这个现象卡住过很多人。PC1 能 ping 通交换机说明链路没问题PC2 也能 ping 通交换机说明链路也没问题但 PC1 ping PC2 就是不通。原因是两台 PC 的网段不一致或交换机的 VLAN 划分将两者隔开。多为子网掩码配置为 27 位或更大的网段导致 IP 虽在同一最大前缀但不在同一广播域ARP 无法完成解析。解决统一规划网段掩码固定为 255.255.255.0检查交换机的 VLAN 配置确认两台 PC 是否在同一个 VLAN 内。如果确认两台 PC 必须互通先查它们的子网是否一致再确认端口 VLAN 归属。配完后用arp -a看能否解析出对方 MAC——解析不出来就说明二层不通优先级高于丢包率问题。5.5 现象三台 PC 同时通信时网络吞吐骤降完成组网后做双向通信测试发现同时传文件时速度下降非常明显甚至出现卡顿。这和前几个排错不太一样涉及交换机或集线器的基本工作特性。原因是实验用到了集线器或在交换机上强制配置了半双工。集线器所有端口共享冲突域多台 PC 同时发送数据必然产生碰撞退避重传会占用大量带宽。交换机端口如果被强行设置为半双工发送和接收只能交替进行吞吐减半。解决把集线器换成交换机如果用的是交换机检查端口双工模式。华为配置为强制全双工的命令是interface GigabitEthernet 0/0/1 undo negotiation auto duplex full speed 100逻辑说明duplex full强制全双工speed 100固定速率。固定速率后可以避免 MDI 协商不稳定造成的丢包适合实验环境短距离链路。但在实际生产网络中不建议强制指定速度自动协商能够应对更复杂的链路状况。排过这些坑之后你会发现绝大部分组网失败不是原理不懂而是物理层或配置残留的问题。把这些检查项按顺序走一遍实验状态清零基本都能解决。6. 用一张验证清单把 MAC 地址表、ARP 表和抓包对上号组网完成后不要直接关实验去写报告。最后一步是系统化验证网络状态用一份清单把前面观察到的现象串起来这一步既能让实验报告更有依据也帮你建立排错的基本框架。我常用的验证清单如下验证项使用命令预期结果端口状态display interface brief端口 PHY 和 Protocol 都是 upVLAN 归属display vlanPC1/PC2 在 VLAN 10PC3 在 VLAN 20MAC 地址学习display mac-address每个端口学到一个对应 PC 的 MAC同 VLAN 互通ping 192.168.10.12通丢包率为 0跨 VLAN 隔离ping 192.168.20.11不通ARP 解析超时ARP 缓存arp -a能看到同网段 PC 的 MAC 映射广播域边界Wireshark 过滤arp广播只出现在本 VLAN 内最后一项值得展开在 PC2 上开 Wireshark过滤规则填arp然后在 PC1 上执行ping 192.168.10.99去 ping 一个不存在的地址。PC1 会连续发出 ARP 请求广播PC2 的 Wireshark 里应该能看到这些请求如果在 PC3 上开 Wireshark同样的操作却什么都看不到。这个现象能在抓包层面证明 VLAN 把广播域切开了一刀。很多人做验证时只看 ping 结果不看表格和抓包这是实验报告里最减分的部分。ping 只能告诉你“通还是不通”MAC 地址表告诉你“交换机往哪里转发”ARP 表告诉你“目标 MAC 是怎么解析到的”抓包告诉你“广播到底传播到了哪”。这三层证据都对上号你才是真正把实验做明白了。我在带实训时习惯在学生交报告之前做一次“破坏性验收”把测试 PC 的 IP 改一个字节然后观察他们的排查思路是直接改回去、还是能通过 ping 和 arp 反推出 IP 被改过。改回去做完了并不算通能把整个决策链路说出来才算过关。这个习惯建议你也保留——实验课的价值从来不在于那几条命令而在于网络不可用的时候你能不能靠已知信息找到问题出在哪一层。希望这些经验能帮到你。本文还有配套的精品资源点击获取
返回列表