☰
eNSP实战:三层网络架构实验详解,从VLAN规划到OSPF全网互通
2026/10/19 8:54:23 网站建设 项目流程

1. 三层网络架构实验:从一张拓扑到一套园区网

先说明一件事:标题里那个“三层架络”应该是“三层架构”的笔误,不过不影响理解。我带着不少网络方向的新人做过这个实验,也见过太多人卡在“配置命令都会敲,但整张网就是不通”的状态。原因通常不是命令背得不够熟,而是压根没搞明白——三层架构为什么要分三层?每层到底在干什么?VLAN、Trunk、路由协议这些概念在真实数据流里是怎么串起来的?

这次我拿一套标准的eNSP三层网络架构实验,从头到尾拆给你看。学完你不仅能照着重现一张完整的园区网,还能搞清楚每一行配置背后的逻辑。eNSP是华为官方的网络仿真平台,用它模拟三层架构(接入层、汇聚层、核心层),是目前学习园区网络设计最稳妥、最省钱、也最能贴近真实工程的方式。

适合谁?刚学完HCIA理论、打算动手做一套完整实验的网络初学者,或者准备面试前想快速把“二层+三层”知识串一遍的求职者。我会把从零搭拓扑、规划VLAN与IP、到核心设备路由打通、最后验证全网互通的全过程都过一遍,尽量把踩过的坑也一并交代。

2. 三层架构的设计思路:为什么不能一张交换机干到底

做这个实验前,先把设计层面的“为什么”想明白,否则后面配置就是机械抄命令。

2.1 接入层、汇聚层、核心层到底各干什么

一台交换机把所有设备接在一起,小办公室够用,但放到一栋办公楼、一个园区,立刻暴露问题:广播域太大、故障影响面广、扩展性差、关键设备没有冗余。

三层架构的意义就是把网络按职责切成三块:

  • 接入层:离用户最近的设备,负责把终端(电脑、打印机、无线AP)接进网络。核心诉求是端口密度、PoE供电(给AP和摄像头)、简单的VLAN划分和端口安全。性能要求不高,但端口要多、成本要压得低。
  • 汇聚层:接入层和核心层之间的“缓冲带”,负责VLAN间路由(网关所在地)、流量汇聚、策略控制(ACL、QoS),还承担着隔离故障域的作用——某台接入交换机挂了,影响范围只限于那一片区域,不会拖垮全网。
  • 核心层:整张网的“骨干”,只做一件事:高速转发。核心层不应该有复杂的策略,不做端口层面的VLAN终结,更不该接终端。它要的是快、稳、冗余。一旦在核心层卡了策略或处理不过来,全网一起遭殃。

一句话总结:接入层管接入,汇聚层管策略与网关,核心层管高速转发。各司其职,互不越权。

2.2 三层架构相对扁平网络的核心优势

有人会问:既然汇聚层做了VLAN间路由,核心层好像只是“透传”,是不是多余?

不是。三层架构的核心优势在于“模块化”与“边界清晰”。每一层出了问题都有对应的替换策略——接入交换机坏了换接入交换机,汇聚坏了换汇聚,不用动全局配置。而且汇聚层把广播域切小了,VLAN间的流量必须先经过网关,安全策略有了落脚点,网络规模大了之后管理边界依然清晰。

做实验时,如果你用的是真机或eNSP,拓扑规模不需要搞得多大,关键在于结构齐全。拿三台三层交换机和两台二层交换机来搭,已经能够还原真实工程里最常见的设计形态。等这套实验吃透了,再扩展到双核心、双链路的冗余架构,就是顺着同一套思路往上叠加。

3. 环境准备与地址规划:动手前的三个细节

3.1 eNSP环境的关键设置

eNSP版本推荐用最新的V1.3系列,开局先把“工具→选项→设备”里的虚拟化类型确认一下,我常用的设备型号是:

设备角色eNSP设备型号说明
核心层S5700(三层交换机)支持OSPF、VLANIF、链路聚合
汇聚层S5700(三层交换机)同上
接入层S3700(二层交换机)只做VLAN和Trunk,不配IP
终端PC、Server模拟用户和服务器

eNSP对电脑性能有要求,如果开了三台以上三层交换机就出现卡顿,优先把设备间的连线重新检查一下,再关掉多余的图形动画效果。启动设备时建议逐台启动,别一次性全选——设备同时加载容易导致内存直接爆掉。

3.2 VLAN与IP地址规划的工程化思路

地址规划是很多新手最容易轻视的部分。我在这个实验里用一套非常典型的园区网规划方式,目的就是让数据流路径清晰可查。

  • VLAN 10:办公区,网段 192.168.10.0/24,网关 192.168.10.254(放在汇聚交换机上)
  • VLAN 20:办公区,网段 192.168.20.0/24,网关 192.168.20.254(放在汇聚交换机上)
  • VLAN 30:服务器区,网段 192.168.30.0/24,网关 192.168.30.254(放在核心交换机上)
  • 核心层与汇聚层之间的互联:网段 10.0.10.0/30 和 10.0.20.0/30

注意,网关放在哪里这个决策很关键:终端网关放汇聚层,服务器网关放核心层,是实际工程里两种最常见的部署习惯,原因后面在路由配置部分展开。

3.3 核心层与汇聚层的互联规划

汇聚层有两台(汇聚A、汇聚B),核心层有一台,每台汇聚分别和核心建立一条三层互联。为了实验清晰,我直接采用三层接口互联的方式,不给互联链路做VLANIF。两条互联分别占用30位掩码地址段:

  • 核心→汇聚A:10.0.10.0/30,核心侧10.0.10.1,汇聚A侧10.0.10.2
  • 核心→汇聚B:10.0.20.0/30,核心侧10.0.20.1,汇聚B侧10.0.20.2

/30这种互联寻址方式是真实网络里最常用的,两个IP地址刚好够用,不会浪费地址空间,也能避免广播地址带来的歧义。如果你在公司里看到两个设备互联的接口地址长得像“10.0.1.0/30”这种,就是同一类习惯。

3.4 拓扑搭建的操作要点

在eNSP里搭拓扑的时候,我强烈建议大家养成给设备改名字、给接口贴标签的习惯。设备名建议直接改成LSW1、LSW2、LSW3这种功能命名,或者在设备上标注好“核心”“汇聚A”,方便后续配置不搞混。

连线时需要注意,接入层的交换机上联汇聚层,用两条链路分别连到两台汇聚,形成冗余通道。这个拓扑看着跟真实工程非常接近——一台核心、两台汇聚、四台接入、若干终端,麻雀虽小五脏俱全。

4. 汇聚层与接入层的配置:网关和VLAN的落地

4.1 接入层交换机的基础配置

打开接入层交换机LSW1的CLI,第一步是改名、建VLAN、把下行接口划分到对应VLAN中。命令如下:

system-view sysname LSW1 vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type access port default vlan 20 quit

这里插一句:接入交换机的下行接口接终端,用access模式没问题。但如果你接的是AP或者以后可能要接支持多VLAN的设备,就得思考trunk模式怎么配置。实际项目中接入交换机经常下行也配trunk,为的是让一个接口可以同时承载多个VLAN的业务。

4.2 接入层与汇聚层的Trunk链路配置

接入层交换机LSW1需要分别和汇聚A、汇聚B建立Trunk链路。先配置LSW1的上行接口:

interface GigabitEthernet0/0/3 port link-type trunk port trunk allow-pass vlan 10 20 quit interface GigabitEthernet0/0/4 port link-type trunk port trunk allow-pass vlan 10 20 quit

注意一个细节:华为交换机的trunk口默认只放行VLAN 1,所以必须用port trunk allow-pass vlan指定放行哪些VLAN。很多新手漏了这一步,结果终端能link起来但业务不通,排查半天才发现是trunk放行列表里没有对应VLAN。

汇聚侧也要做同样的操作,把下行接口设置成trunk并放行VLAN 10和20。这个过程在汇聚A和汇聚B上都要做,而且要保证两边的VLAN列表一致,否则两边VLAN对不上,数据帧会被直接丢弃。

4.3 汇聚层VLANIF的配置与二层排障命令

汇聚层是终端网关的所在地。在汇聚A上创建两个VLANIF接口,分别绑定IP地址:

system-view sysname LSW3-A vlan batch 10 20 interface Vlanif10 ip address 192.168.10.254 255.255.255.0 quit interface Vlanif20 ip address 192.168.20.254 255.255.255.0 quit

到这里,二层链路就通了。验证方法很简单,在任意一台PC上ping自己的网关地址,例如PC1配了IP 192.168.10.1,网关设为192.168.10.254,ping通说明VLAN、Trunk、VLANIF三层IP配置全部正确。

如果不通,优先排查顺序是:

  1. PC的IP和网关是否填对
  2. 交换机上VLAN是否创建
  3. Trunk链路是否放行对应VLAN
  4. VLANIF接口是否配置了正确网段的IP
  5. 用display vlan和display port vlan查看端口状态

这里体现了一个基本原则:自下而上,逐层排查。先确保物理层和链路层没问题,再往上查IP和路由。

5. 核心层打通与全网路由:OSPF让所有网段可见

5.1 核心层的基础配置与接口互联

核心交换机LSW2要承担服务器网段的网关,同时作为OSPF骨干区域的一部分。基础配置如下:

system-view sysname LSW2-Core vlan batch 30 interface Vlanif30 ip address 192.168.30.254 255.255.255.0 quit interface GigabitEthernet0/0/1 port link-type access port default vlan 30 quit interface GigabitEthernet0/0/10 ip address 10.0.10.1 255.255.255.252 quit interface GigabitEthernet0/0/20 ip address 10.0.20.1 255.255.255.252 quit

把服务器Server1的IP配成192.168.30.1,网关192.168.30.254,这样服务器与核心层的二层链路就通了。

5.2 OSPF动态路由的配置与区域划分

汇聚层已经有了直连路由(VLANIF的网段),核心层也有了直连路由,但双方还不知道对方的网段。要让全网路由互通,最直接的方法是在核心和汇聚上都跑OSPF。

核心交换机配置:

ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 10.0.10.0 0.0.0.3 network 10.0.20.0 0.0.0.3 network 192.168.30.0 0.0.0.255 quit

汇聚A配置:

ospf 1 router-id 3.3.3.3 area 0.0.0.0 network 10.0.10.0 0.0.0.3 network 192.168.10.0 0.0.0.255 network 192.168.20.0 0.0.0.255 quit

为什么都用区域0?因为实际工程里,核心和汇聚之间跑OSPF,一般会先放在同一个骨干区域里,结构简单、排障容易。当网络规模变大、汇聚数量增多,再考虑分区域(比如area 1、area 2)来减少LSA洪泛。

5.3 路由验证与常见的OSPF故障点

配置完OSPF,在核心上敲display ip routing-table,应该能看到192.168.10.0/24和192.168.20.0/24这两条OSPF路由。在汇聚A上也应该看到192.168.30.0/24的路由。如果看不到,排查优先级是:

  1. 互联接口的IP是否在同一网段
  2. 接口是否down(UP状态确认)
  3. network命令宣告的网段是否正确,注意必须写反掩码
  4. router-id是否冲突
  5. 用display ospf peer查看邻居关系是否达到了Full状态

OSPF邻居关系起不来,这是做实验时最常遇到的故障。我见过太多人把network命令里的反掩码写错,比如把0.0.0.255写成255.255.255.0,结果OSPF直接无法建立邻接。记住:OSPF里宣告网段用的是反掩码,255.255.255.0的反掩码是0.0.0.255。

5.4 默认路由与互联网出口模拟

如果实验还要模拟上网(比如PC去ping外部网络的IP),一般在核心交换机上加一条默认路由,指向模拟出口的下一跳。这里我在核心上再加一个接口连到一台路由器或其他网段,配置默认路由:

ip route-static 0.0.0.0 0.0.0.0 10.0.30.2

然后通过OSPF把默认路由通告到全网。命令是:

ospf 1 default-route-advertise quit

这样汇聚层就能学习到默认路由,PC访问外网的流量就能沿“接入→汇聚→核心→出口”的路径转发。如果没有真实出口设备,这步可以省略,但思路要懂——默认路由加OSPF重分发,在生产网里是一种很常见的做法。

6. 全网联调与测试:让数据包替你说话

6.1 PC端IP配置与网关验证

配置好网络后,把所有PC的IP、掩码、网关填好。以PC1为例:

  • IP:192.168.10.1
  • 掩码:255.255.255.0
  • 网关:192.168.10.254

PC2可以放在192.168.20.1,网关192.168.20.254。PC3放在服务器网段,或者就用Server1的192.168.30.1来测试。

第一步测试,PC1 ping自己的网关192.168.10.254。通了,说明二层链路+VLANIF正常工作。不通就回到第4部分的排查流程。

第二步测试,PC1 ping PC2(跨VLAN通信),通了,说明汇聚层的VLAN间路由生效。如果通了但很慢,检查一下是不是有环路或者广播风暴——不过eNSP里基本不会有性能层面的问题,更可能是PC的网卡配置问题。

第三步测试,PC1 ping Server1(跨汇聚、跨OSPF区域),通了,说明OSPF全网路由打通。到了这一步,整个三层架构的核心目标已经实现。

6.2 抓包验证:从Wireshark视角看三层通信

eNSP有一个很好用的功能,就是直接在接口上抓包。想看跨VLAN通信时数据包的流转,我强烈建议在核心和汇聚相连的GigabitEthernet0/0/1口上开启抓包。

你会看到PC1发往Server1的流量路径是这样的:PC1发出数据帧,源MAC是PC1,目的MAC是网关192.168.10.254所在VLANIF的MAC地址。汇聚A收到后,解封装二层帧头,查路由表,找到去往192.168.30.0/24的出接口,重新封装新的二层帧头——源MAC变成出接口的MAC,目的MAC变成下一跳(核心的接口MAC)的MAC。这也是三层交换的核心本质:路由转发时改MAC,不改IP。

抓包看到的现象会是:在汇聚A连接核心的接口上,源MAC和目的MAC跟PC1发出的帧完全不一样,但源IP和目的IP保持不变。这个细节如果你能亲手验证一次,对“二层交换和三层路由的区别”会有非常直观的理解。

6.3 连通性测试的完整记录

按我的习惯,测试完会把结果简单记录一下,方便排障和复现。参考记录:

测试项源目的预期结果实际结果
网关可达PC1192.168.10.254通通
跨VLAN通信PC1192.168.20.1通通
跨设备通信PC1192.168.30.1通通
双向通信Server1192.168.10.1通通

这套表虽然简单,但能帮你把“全网互通”从一句口头承诺变成可验证的结果。你在公司里做网络割接或者调整,同样要有这种记录习惯,避免改完配置说不清到底哪段网络受影响。

7. 常见问题与排查技巧:六个高频坑一次讲完

7.1 接口物理UP但业务不通

这类问题的本质是“链路通但没有放行对应VLAN”,或者“VLANID对不上”。最常见的就是Trunk端口配置了trunk,但忘记allow-pass vlan,或者allow的列表里漏掉了某个VLAN。

排查命令:

display port vlan display trunkbrief

重点看每个接口的VLAN列表是否同时包含VLAN 10和20。在汇聚侧和接入侧分别执行,两边对比,能快速发现问题。

7.2 VLANIF能建但不能ping通

VLANIF通不通,跟交换机的“三层能力”直接相关。S3700这种二层交换机即使配置了VLANIF,也无法配置IP地址来路由。这个问题在eNSP里很常见——很多新手用S3700做汇聚,命令敲下去没有报错,但ping不通,换S5700后立刻好了。

所以做三层架构实验,汇聚和核心一定要选三层交换机,S5700起步。

7.3 OSPF邻居邻居状态卡在ExStart或Exchange

这类问题根因通常出在接口MTU不一致上。eNSP默认情况下一般不会遇到,但如果你手动改过接口MTU,就有可能触发这种故障。

在接口下查看MTU值,两边必须一致。如果不一样,统一改掉,比如都改成1500。OSPF在建邻过程中会协商MTU,不一致就没法进入Full状态。

7.4 配置正确但PC就是不能上网

如果你的实验里加了一条到外网出口的默认路由,并且通过OSPF通告了出去,此时PC还是不能ping通外网地址,查看一下核心是否有方向性的ACL。很多模拟题会故意在核心或汇聚上加一条拒绝某网段的ACL,配置了traffic-filter后在接口上应用,就会出现这种诡异现象。

用display current-configuration查看接口下有没有traffic-filter inbound或traffic-filter outbound这样的配置,发现ACL直接unlock或者改放行策略就行。

7.5 链路聚合:链路冗余的必备技能

不少三层架构实验会要求接入层和汇聚层之间跑链路聚合(Eth-Trunk),把两条物理链路聚合成一条逻辑链路。这样做的好处是带宽翻倍、可靠性提升。配置方法很简单:

接入侧:

interface Eth-Trunk1 port link-type trunk port trunk allow-pass vlan 10 20 quit interface GigabitEthernet0/0/3 eth-trunk 1 quit interface GigabitEthernet0/0/4 eth-trunk 1 quit

汇聚侧在对应接口上做同样的Eth-Trunk配置。链路聚合做完后,用display eth-trunk 1查看成员接口状态,两个都应该是Selected。

注意:链路聚合两端的物理接口速率和双工模式要保持一致,否则成员端口可能起不来。用eNSP模拟时基本没有这种问题,真机上就需要注意了。

7.6 默认路由和OSPF的“边缘”冲突

如果你的实验同时配置了静态默认路由和OSPF,并且OSPF通告了默认路由,建议用display ip routing-table看一下默认路由是从哪个协议学来的。如果OSPF学到的默认路由的优先级高于静态路由,可能会导致流量走到预期之外的路径。

解决方式是在OSPF里配置默认路由的优先级,或者通过preference调整,保证符合你的预期路径设计。

8. 扩展与总结:从基础实验到生产级架构

做完这个核心实验,你可以继续往下扩展的方向有这么几个:一是在汇聚层增加ACL,实现VLAN间的访问控制——比如办公网不允许访问服务器区、只允许访问指定的业务端口;二是在两台核心之间加堆叠或链路聚合,做成双核心冗余架构,配置VRRP实现网关冗余切换;三是在接入层增加DHCP Snooping、风暴控制这类安全特性。

这些扩展方向本身又对应着新的完整实验,但基础都是同一个三层架构,只要你把“接入层负责二层接入、汇聚层做网关和策略、核心层做高速转发”这个思路真正内化了,往上叠加任何功能都只是配置层面的增加。

我在实际带新人做这套实验时,发现一个普遍规律:能快速做完并且网络全通的,通常不是命令敲得最快的人,而是对数据流转路径最清楚的人。他们知道一个包从PC出发,经过一次Trunk、一次VLANIF路由、一次OSPF路由查找,最后抵达服务器,中间每一步都是可预判的。如果你做完这个实验后也能在纸上画出完整的数据转发路径,那才算真正学会,而不只是“命令敲通了”。

最后分享一个我自己的小习惯:每完成一个阶段(比如二层通了、OSPF邻居起来、全网互通),都会用save保存一份配置,然后在eNSP里用“导出配置”功能留一份txt。这样做的好处是,后续改坏了配置随时能对比差异,回退也方便。这种习惯放到生产环境里更加重要——做任何网络变更前先保存基线配置,变更后还能对照差异审查,避免小改动引发大故障。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询