简介这是一份面向企业网络设计与仿真实验的网络拓扑配置文件文档适合网络工程专业学生、实验人员以及准备网络技术认证的工程师对照练习。文档以技术部接入交换机Jishubu-Switch为实例完整展示了从设备命名、加密口令与VTY登录安全设置、VTP客户端模式配置、管理VLAN地址分配到访问端口与Trunk主干道端口规划以及MAC地址端口绑定防ARP欺骗等关键操作步骤同时覆盖核心交换机Core-Switch1的VLAN划分与命名方法能够帮助读者在思科或类似模拟器中快速搭建企业内网环境。压缩包内包含1个docx文档体积约1.43MB内容结构清晰命令片段可直接复制用于实验验证。该资源目前已有2500人学习下载既可作为课程实验或毕业设计的配置参考也可作为企业级网络维护和交换机安全加固的速查手册。1. 企业网络拓扑配置文件一份能直接照着敲的思科仿真配置做网络方案最烦的不是画拓扑图而是图画完了设备配置却要从零开始一条条敲。这份配套网络拓扑配置文件把企业内网从接入层到核心层、再到边界路由器和 ISP 的完整配置都给你备好了技术部、人事部、财务部、市场部、服务器群、外网 DNS 和 Web全链路都有对应的配置命令。它解决的不是“看懂网络拓扑结构”而是“打开 Packet Tracer 就能复现一套能跑通的企业网”。适合正在做课程设计、毕业设计或者想快速搭一套练手环境的人。如果你只想看配置思路不想从交换机命名开始慢慢敲这份文件能帮你省掉一大半的翻车时间。2. 接入层交换机从命名到端口安全的完整命令链2.1 为什么接入层要单独做安全加固很多人在模拟器里做企业网接入层交换机往往只配个 VLAN 就完事。但这份配置里接入层单独走了六步命名、加密口令、VTP 客户端、管理地址、访问端口、Trunk 端口、端口安全。每一步都有明确目的。命名是为了维护时一眼认出设备归属enable secret防止普通用户进入特权模式line vty 0 4限制远程登录exec-timeout防止有人挂着终端不退出no ip domain-lookup避免误敲命令时交换机去查 DNS 卡住几秒。这些看起来是琐碎的小命令实际是网络设备上线前的基本卫生习惯。接入层还有一个容易被忽略的角色它是终端进入网络的唯一入口。所有 PC 的流量都从这里汇聚ARP 欺骗、非法 DHCP 服务器、私接路由器的风险也主要发生在这层。所以最后一步做 MAC 端口绑定本质上是把接入层的信任模型从“谁插上谁用”改成“指定设备才能用”。2.2 接入层完整配置对照下面这份配置以技术部接入交换机 Jishubu-Switch 为例其他部门接入交换机照抄改个名即可。Switchen Switch#config t Switch(config)#hostname Jishubu-Switch Jishubu-Switch(config)#enable secret cisco Jishubu-Switch(config)#line vty 0 4 Jishubu-Switch(config-line)#password cisco Jishubu-Switch(config-line)#login Jishubu-Switch(config-line)#exec-timeout 5 0 Jishubu-Switch(config)#no ip domain-lookup这里enable secret cisco存的是密文比enable password更安全配置文件里不会直接显示明文。line vty 0 4是同时允许 5 个远程终端会话生产环境建议改成只允许内网网段 Telnet 或 SSH但模拟器里按原配置走就行。exec-timeout 5 0表示 5 分钟零秒无操作就断开第二个参数是秒这里写 0 就是不额外加秒数。Jishubu-Switch#vlan database Jishubu-Switch(vlan)#vtp mode client Jishubu-Switch(config)#int vlan 7 Jishubu-Switch(config-if)#ip add 192.168.5.4 255.255.255.0 Jishubu-Switch(config-if)#no shutVTP 配置这里有个值得注意的细节接入层交换机用的是vtp mode client意思是它自己不创建 VLAN而是从核心交换机学。管理地址放在 VLAN 7也就是 manager 这个 VLAN所以网管主机的静态 IP 也在这个网段。no shut是必须的SVI 接口默认是 shutdown 状态不开的话管理地址不生效。Jishubu-Switch(config)#int range f0/2-3 Jishubu-Switch(config-if-range)#switchport mode access Jishubu-Switch(config-if-range)#switchport access vlan 6 Jishubu-Switch(config)#int range f0/23-24 Jishubu-Switch(config-if-range)#switchport mode access Jishubu-Switch(config-if-range)#switchport access vlan 7这段是把终端端口划进对应 VLAN。技术部终端在 VLAN 6管理终端在 VLAN 7。int range是批量接口配置能少敲好几条命令。注意switchport mode access要写在switchport access vlan前面因为接口默认可能是动态 desirable 模式直接指定 access VLAN 在某些 IOS 版本上会报错。Jishubu-Switch(config)#int f0/1 Jishubu-Switch(config-if)#switchport mode trunk Jishubu-Switch(config-if)#switchport trunk native vlan 7 Jishubu-Switch(config-if)#exit Jishubu-Switch(config)#int f0/4 Jishubu-Switch(config-if)#switchport mode trunk Jishubu-Switch(config-if)#switchport trunk native vlan 7f0/1 和 f0/4 分别上联 Core-Switch1 和 Core-Switch2做 Trunk 是为了让 VLAN 6、VLAN 7 的流量都能跨交换机传输。native vlan 7表示这个 Trunk 上不带 VLAN 标签的原生流量属于 VLAN 7好处是管理 VLAN 的控制报文可以不打标签直接走坏处是如果对端 native VLAN 不一致VLAN 会串这点在避坑章再展开。Jishubu-Switch(config)#int f0/23 Jishubu-Switch(config-if)#switchport port-security Jishubu-Switch(config-if)#switchport port-security mac-address 0002.1628.24B9这里只绑了一个 MAC 地址实际上port-security默认允许 1 个 MAC超了会触发违例。模拟器里效果就是其他设备插这个口直接进不了网。生产环境一般配合switchport port-security violation restrict或shutdown使用模拟器默认的 shutdown 行为反而能让你直观看到“这个口被锁了”。2.3 接入层配置的常见误用接入层最容易翻车的一点是端口安全和 Trunk 混用。如果你在 Trunk 口上配 port-security交换机可能直接报错因为 Trunk 口本身要处理多个 VLAN 的帧MAC 学习行为跟 access 口不一样。另一个常见问题是 VTP client 模式在真实网络里已经被很多团队弃用了因为 VTP 的修订号机制容易把整个网络的 VLAN 数据库清掉。但这是课程设计要求模拟器里用 VTP 没问题真机上如果网络规模不大我更建议每台交换机手写 VLAN。3. 核心层交换机VLAN 划分、VTP 与链路聚合的配合3.1 为什么核心层要放两台这份拓扑里核心层用了两台交换机Core-Switch1 和 Core-Switch2配置基本一样。理由很直白单台核心挂掉整个内网就瘫了。两台核心配合接入层双上联一台交换机故障时终端还能走另一条路径。另外两台核心之间做了以太网通道把 G0/1 和 G0/2 捆成一个逻辑口吞吐量翻倍单条链路断掉也不影响转发。核心交换机承担的角色比接入层重得多VLAN 划分和命名、VTP 服务端、DHCP 中继、三层路由。这些功能挤在一台设备上所以核心层配置的顺序很有讲究先 VLAN 再 VTP、先接口再路由。3.2 Core-Switch1 配置全流程switchen switch#config t switch#hostname Core-Switch1 Core-Switch1(config)#enable secret cisco Core-Switch1(config)#line vty 0 4 Core-Switch1(config-line)#password cisco Core-Switch1(config-line)#login Core-Switch1(config-line)#exec-timeout 5 0 Core-Switch1(config-line)#line con 0 Core-Switch1(config-line)#exec-timeout 5 0核心交换机的远程登录口令配置和接入层类似多了一个line con 0这是 console 口的超时设置。模拟器里配 console 超时意义不大真机上防止有人连着 console 线离开工位倒是挺实用。Core-Switch1(config)#vlan 2 Core-Switch1(config-vlan)#name servers Core-Switch1(config-vlan)#exit Core-Switch1(config)#vlan 3 Core-Switch1(config-vlan)#name shichang Core-Switch1(config-vlan)#exit Core-Switch1(config)#vlan 4 Core-Switch1(config-vlan)#name caiwu Core-Switch1(config-vlan)#exit Core-Switch1(config)#vlan 5 Core-Switch1(config-vlan)#name renshi Core-Switch1(config-vlan)#exit Core-Switch1(config)#vlan 6 Core-Switch1(config-vlan)#name jishu Core-Switch1(config-vlan)#exit Core-Switch1(config)#vlan 7 Core-Switch1(config-vlan)#name managerVLAN 划分以部门为单位VLAN 2 是服务器群VLAN 3 市场部VLAN 4 财务部VLAN 5 人事部VLAN 6 技术部VLAN 7 管理网段。给 VLAN 起名字这点很关键后期维护时show vlan brief一眼就能看出哪个 VLAN 属于哪个部门不用对着 IP 段猜。Core-Switch1#vlan database Core-Switch1(vlan)#vtp domain gongsi Core-Switch1(vlan)#vtp serverVTP 域名叫 gongsi模式是 server。接入层交换机的 VTP 客户端会自动学习这些 VLAN 信息前提是 VTP 域名一致、VTP 密码一致如果有的话、交换机能通过 Trunk 收到 VTP 通告。模拟器里 VTP 通告走 VLAN 1所以接入层和核心层之间的 Trunk 必须允许 VLAN 1 通过。Core-Switch1(config)#int range f0/2-7 Core-Switch1(config-if-range)#switchport mode trunk Core-Switch1(config-if-range)#switchport trunk native vlan 7f0/2 到 f0/7 是下行口接各接入层交换机。全部配成 Trunk 是为了让所有 VLAN 的流量都能上行到核心层。native vlan 7保持和接入层一致这样管理 VLAN 的流量不打标签直接通。Core-Switch1(config)#int range G0/1-2 Core-Switch1(config-if-range)#channel-group 1 mode on Core-Switch1(config-if-range)#exit Core-Switch1(config)#int port-channel 1 Core-Switch1(config-if)#switchport mode trunk Core-Switch1(config-if)#switchport trunk encapsulation dot1q这里是把 G0/1 和 G0/2 绑成 Port-channel 1。channel-group 1 mode on是强制模式不跑 PAgP 或 LACP 协商模拟器里图省事可以用真机上我会用mode activeLACP这样对端配置错误时至少能通过协商发现问题。switchport trunk encapsulation dot1q这个命令在模拟器里必须配因为默认封装可能是 ISL两边不一致就直接不通。3.3 DHCP 中继与三层路由的接线逻辑Core-Switch1(config)#int vlan 3 Core-Switch1(config-if)#ip helper-address 192.168.0.2 Core-Switch1(config-if)#int vlan 4 Core-Switch1(config-if)#ip helper-address 192.168.0.2 Core-Switch1(config-if)#int vlan 5 Core-Switch1(config-if)#ip helper-address 192.168.0.2 Core-Switch1(config-if)#int vlan 6 Core-Switch1(config-if)#ip helper-address 192.168.0.2这里值得展开讲一下。DHCP 服务器在 192.168.0.2也就是服务器群网段。各部门 PC 在不同的 VLAN 里广播域被隔离了DHCP Discover 广播包到不了服务器。ip helper-address的作用就是把 VLAN 3、4、5、6 的 DHCP 广播转成单播发给 192.168.0.2等于是三层设备在帮终端“代收”DHCP 报文。注意 VLAN 2 也就是服务器群所在 VLAN 没有配 helper-address因为服务器就在本网段不需要中继。没配这个命令各部门 PC 的 DHCP 获取 IP 会一直转圈这是模拟器里最常见的“玄学”问题之一。Core-Switch1(config)#ip routingip routing是打开三层交换机的路由功能。没有这条命令交换机就只能做二层转发VLAN 之间无法互通。打开之后各 VLAN 的 SVI 接口就成了网关终端跨部门访问才能通。整网路由配置放在后面第 4.3 节的位置核心层只负责内网 VLAN 间路由去外网的默认路由指向边界路由器的内网口 192.168.4.1。4. 服务器群与外网DHCP/DNS/DNS/Web/FTP/Email 与 NAT 三种转换4.1 服务器群的 IP 规划服务器群在 192.168.0.1/24 网段VLAN 2里面放了 DHCP 服务器、DNS 服务器、Web 服务器、FTP 服务器和 Email 服务器。模拟器里这些是配置 IP 和启用服务不涉及 Linux 或 Windows 的复杂部署。这里有个规划上的细节服务器群单独划一个 VLAN和各部门终端隔离好处是服务器流量不占用终端接入链路的带宽安全上也更容易控制访问策略。企业网仿真里服务器群最大的坑是 IP 地址冲突。模拟器里如果你给 DHCP 服务器配了 192.168.0.2然后又手动给某台 PC 配了 192.168.0.2整个网络中 DHCP 和其他服务都会出现间歇性“抽风”。这份配置里各部门 PC 都是 DHCP 自动获取只有网管主机用静态 IP避免了冲突但你也得注意别顺手加一台静态 IP 的 PC 撞了服务器地址。4.2 边界路由器的 NAT 配置拆解外网部分用了 Cisco 1841 路由器一台做边界路由器 Border-R一台做 ISP 路由器。边界路由器上最核心的是 NAT 的三种实现方式静态转换、动态转换、端口多路复用 Overload。Border-R(config)#ip nat inside source static 192.168.0.4 221.1.1.3 Border-R(config)#ip nat inside source static 192.168.0.5 221.1.1.4 Border-R(config)#ip nat inside source static 192.168.0.6 221.1.1.5静态 NAT 是把内网服务器的私有地址一对一映射到公网地址。这里 192.168.0.4 映射到 221.1.1.3对应外网 DNS 里 www.sxdthl.com 指向的地址。静态 NAT 必须手动指定因为外网用户要访问公司网站时DNS 返回的是公网地址 221.1.1.3边界路由器要把这个公网地址反向转换成内网服务器的私有地址这条映射不能动态变化。Border-R(config)#ip nat pool shichang 221.1.1.10 221.1.1.20 netmask 255.255.255.0 Border-R(config)#ip nat pool caiwu 221.1.1.21 221.1.1.30 netmask 255.255.255.0 Border-R(config)#ip nat pool renshi 221.1.1.31 221.1.1.40 netmask 255.255.255.0 Border-R(config)#ip nat pool jishu 221.1.1.41 221.1.1.50 netmask 255.255.255.0 Border-R(config)#access-list 1 permit 192.168.8.0 0.0.0.7.255 Border-R(config)#access-list 2 permit 192.168.1.0 0.0.0.255 Border-R(config)#access-list 3 permit 192.168.2.0 0.0.0.255 Border-R(config)#access-list 4 permit 192.168.3.0 0.0.0.255 Border-R(config)#ip nat inside source list 1 pool shichang overload Border-R(config)#ip nat inside source list 2 pool caiwu Border-R(config)#ip nat inside source list 3 pool renshi Border-R(config)#ip nat inside source list 4 pool jishu动态 NAT 是给市场部、财务部、人事部、技术部各分配了一个公网地址池。这里有个隐藏的坑access-list 1 写的是192.168.8.0 0.0.0.7.255这其实是192.168.8.0到192.168.15.255的一个汇总覆盖范围远大于其他三个部门的 ACL。如果市场部的终端 IP 实际是 192.168.1.0/24 网段这个 ACL 根本匹配不到流量NAT 就不会生效。这属于配置里明显的笔误但它在模拟器里不报错只能靠 ping 外网失败排查出来。另外四个部门里只有市场部加了overload关键字其他三个部门用的是普通动态 NAT也就是一个公网地址同时只能被一个内网主机使用。如果财务部有 20 台 PC 同时上网但地址池只有 10 个地址第 11 台 PC 就上不了网。生产环境的常规做法是全都加overload也就是端口多路复用让几千台终端共享几个公网地址。课程设计里这种差异可能是有意展示两种配置方式的区别但你得清楚两者的行为边界。Border-R(config)#int s0/0/0 Border-R(config-if)#ip nat outside Border-R(config-if)#int f0/0 Border-R(config-if)#ip nat inside指定 NAT 的内外接口是最后一步也是最容易漏的一步。很多人配完 NAT 规则发现不生效一看接口上根本没标 inside/outside。这里的逻辑是从 f0/0 进来、从 s0/0/0 出去的流量才做 NAT 转换方向反了或者漏标一个整个 NAT 就静默失效。4.3 ISP 路由器模拟公网的细节Router(config)#hostname ISP ISP(config)#int f0/0 ISP(config-if)#ip add 223.1.1.1 255.255.255.0 ISP(config-if)#no shut ISP(config-if)#int f0/1 ISP(config-if)#ip add 223.1.2.1 255.255.255.0 ISP(config-if)#no shut ISP(config-if)#int s0/0/0 ISP(config-if)#ip add 221.1.1.2 255.255.255.0 ISP(config-if)#clock rate 2000000 ISP(config-if)#no shutISP 路由器模拟的是运营商侧设备clock rate 2000000只在串行链路的 DCE 端配置用来提供时钟信号。模拟器里你必须在 ISP 这一端敲这条命令不然串口起不来。这也是 Serial 接口和以太网接口配置上最大的差异点忘了这条Border-R 的 s0/0/0 会一直显示 down。外网 DNS 配置里 www.google.com 对应的 223.1.2.3 是 ISP 路由器 f0/1 后面挂的那台 Web 服务器这就完成了从内网访问外网站点的完整链路。5. 避坑与排查这份配置最容易翻车的五个地方5.1 现象PC 用 DHCP 获取不到 IP 地址模拟器里 PC 的 IP 一直显示 0.0.0.0ipconfig刷了好几遍都没用。原因多半是三层交换机上没配ip helper-address或者配置的 DHCP 服务器地址不对。你先检查 Core-Switch1 上有没有int vlan 3到int vlan 6下配了ip helper-address 192.168.0.2然后确认 DHCP 服务器的 IP 确实是 192.168.0.2 并且服务处于开启状态。还有个隐藏条件PC 和 DHCP 服务器之间的路由要通也就是核心交换机的ip routing必须打开。5.2 现象跨 VLAN ping 不通同一个 VLAN 里 PC 能互相 ping 通但不同 VLAN 之间不通。最常见的原因是核心交换机没开ip routing或者 VLAN 的 SVI 接口没有no shut。另一个容易被忽略的点是接入层交换机必须能从 VTP 学到所有 VLAN 信息如果接入层还是vtp mode transparent或者 VTP 域名不一致它下面挂的 PC 即使配了 VLAN 6 的 access 口流量上行到核心层也会被丢弃。5.3 现象Trunk 口 native VLAN 不匹配导致 VLAN 串接入层和核心层之间 Trunk 都配了native vlan 7但两边如果不一致比如接入层是 native vlan 1、核心层是 native vlan 7那么接入层不带标签的流量到了核心层会被认为是 VLAN 7 的流量管理网段的报文就会串进业务 VLAN。解决方式是两边对照检查show interface trunk确认 native VLAN 一致。还有一点VTP 通告走 VLAN 1如果你在 Trunk 上把 VLAN 1 给修剪掉了VTP 客户端就永远学不到 VLAN 信息。5.4 现象内网能上 Web 服务器但外网 PC 打不开公司网站先确认外网 DNS 里 www.sxdthl.com 指向的是 221.1.1.3 而不是内网地址 192.168.0.4。然后检查边界路由器的静态 NAT 是否配置正确ip nat inside source static 192.168.0.4 221.1.1.3。最后确认 Web 服务器本身服务已启动模拟器里就是那个 HTTP 服务的开关要打开。还有一个容易忽略的点边界路由器到内网要有回程路由ip route 192.168.0.0 255.255.0.0 192.168.4.2这条不能少否则外网回来的流量到了路由器不知道该往哪转发。5.5 现象串行链路起不来Border-R 的 s0/0/0 显示 down模拟器里把两台路由器用 Serial 线连起来但接口一直是 down。原因是串行线缆的 DCE 端没有配时钟。解决方式是找到 DCE 那一端也就是 ISP 路由器的 s0/0/0敲clock rate 2000000然后两端都no shutdown。如果还起不来检查是不是线缆类型选错了Serial DCE 和 Serial DTE 要成对使用模拟器里一般自动识别但偶尔也会因为连线顺序问题出状况。这类问题在真实设备上不常见因为运营商链路通常由运营商侧提供时钟。6. 验证与进阶从 ping 通到把配置迁移到真机配置全部敲完验证顺序建议从底层往上层走。先show vlan brief确认 VLAN 已创建并能从接入层学到然后在接入层show interface trunk检查 Trunk 状态和 native VLAN再在核心层show ip route确认路由表里有直连路由和默认路由。终端 PC 验证就两条命令ipconfig看 IP 是否从 DHCP 拿到然后ping 192.168.4.1测网关、ping 221.1.1.3测 NAT 后的公网地址、ping 223.1.2.3测外网服务器。连通性测试通过后建议做一次完整的配置导出。把每台设备的配置用show running-config导出来存成文本文件和网络拓扑放在同一个目录里。这样以后要复现这套拓扑只需要按文件里的配置重敲一遍不用再对着拓扑图猜哪台配了什么。这份 docx 里的配置本身就是按设备整理的你按照接入层、核心层、服务器群、边界路由器的顺序逐个粘贴进 Packet Tracer 就能跑。真机移植时要改的地方不少。VTP 在真实企业网里建议关掉改成每台交换机静态配置 VLAN防止有人接入网络后 VTP 修订号超过现有服务器导致 VLAN 库被清空。VLAN 命名可以保留中文拼音命名在真实设备上也通行但接口描述建议用description To-Jishubu-Switch这种形式比 VLAN 名更直观。enable secret cisco这种弱口令只能用在模拟器里真机上至少换成 12 位以上的复杂密码并且启用 SSH 代替 Telnet。NAT 的地址池和 ACL 要按你实际申请到的公网地址重新规划模拟器里 221.1.1.x 这段随便用真机上这是运营商分配的公网 IP不能乱填。从那以后我每次做完这套企业网仿真都会先在命令行里把所有配置从头到尾过一遍再保存特别是 NAT 那几条 access-list 的匹配范围每次都要重新算一遍掩码。这个习惯帮我挡下了好几次“看起来配好了、实际上 NAT 没生效”的翻车。希望帮到你。本文还有配套的精品资源点击获取