企业局域网组建经典版:从VLAN规划到出口配置全解析
简介企业局域网组建是企业信息化建设中的经典课题一份以该主题为核心的PPT课件非常适合网络规划人员、企业IT维护人员及网络课程学习者参考。内容以某企业250余台计算机、计划扩展至300台的场景为案例系统讲解组网需求分析、C/S结构选型、按房间规划端口、Hub与交换机扩展等实用方法同时覆盖网卡、交换机、路由器、传输介质等关键设备的选型要点。压缩包内仅1个PPT演示文件大小约171KB重点内容浓缩于一册便于快速通读或培训展示。目前约有79人学习使用。读者可以从中了解企业局域网建设中的层次化规划原则、综合布线系统设计思路以及网络教学与传统教学的对比应用对独立承担中小企业组网方案设计具有较好的借鉴价值。1. 企业局域网组建经典版把拓扑想清楚再谈设备与配置企业局域网组建经典版核心不是某台设备有多高级而是一套经得起时间检验的规划和配置方法。常见做法是接入层连终端、汇聚层做网关和路由、核心层负责高速转发再配合 VLAN 隔离部门、DHCP 自动下发地址让几十到几百人的办公网络一次建好、长期运行少折腾。很多网络越用越乱根子在初期没规划部门混在一个大网段、设备管理地址和业务地址掺在一起、访客流量直接进内网。下面把完整路径走一遍从需求分析、拓扑与 VLAN 规划到交换机配置、互联网出口最后是验收和排错适合刚接手公司网络的工程师也适合想系统复盘规划的运维老人。2. 从需求到拓扑企业局域网的分层设计与 VLAN、IP 规划2.1 三层架构的分工与设备选型接入、汇聚、核心各管一段组建企业局域网最常见的做法是三层架构。接入层交换机直接面对终端把工位上的电脑、打印机、无线 AP 接进网络这一层的配置重点是端口 VLAN、端口隔离和广播风暴抑制。汇聚层把接入层上来的流量收拢负责终结各 VLAN 的网关也就是在 VLANIF 接口上配置 IP 地址同时运行 DHCP 给终端下发地址。核心层位于整个网络的上联出口承担各汇聚区之间的高速交换是流量的交汇点需要较大的交换容量和链路冗余。设备选型跟着职责走不要越级配置。几十人的公司可以把汇聚和核心合并用一台支持三层功能的企业交换机做网关两百人以上再严格分开物理位置分散的楼层或车间各放一台汇聚核心统一收拢。接入交换机不必追求高端但要支持 VLAN、端口镜像和风暴抑制核心设备重点看交换容量、端口密度以及是否支持静态路由和 LACP。把带三层功能的高端设备放在接入层是最常见也最浪费钱的误区。为什么不干脆全二层扁平组网因为一个跨多个交换机的超大广播域ARP 广播和异常数据包会逐层放大某一台终端故障可能拖慢整网。三层架构的另一个好处是故障边界清晰二层环路、广播风暴的影响面基本被限制在接入交换机以下汇聚和核心层的日志能直接告诉你故障区域。2.2 部门 VLAN 规划把广播域和访问边界用一张表定下来VLAN 存在的意义有两层缩小广播域、划分访问边界。组建企业局域网时通用做法是按部门或业务划分 VLAN设备管理地址单独起一个 VLAN不能和业务网段混用。下面这张表可以作为规划模板用途VLAN ID网段网关说明综合办公10192.168.10.0/24192.168.10.254普通工位终端财务等敏感部门20192.168.20.0/24192.168.20.254需配合汇聚层访问控制服务器区30192.168.30.0/24192.168.30.254与办公网横向隔离设备管理100192.168.100.0/24192.168.100.254交换机、无线控制器管理地址访客无线200172.16.200.0/24172.16.200.254只给互联网访问不接触内网表格里的网段可以换成自己的规划但有三个决策值得直接抄。第一设备管理 VLAN 单独开段后续远程维护不会和业务地址冲突接口误配时也容易识别。第二财务这类敏感部门单独划段准入控制在汇聚层或防火墙上做不靠终端自觉。第三访客网络用独立的网段DHCP 配置失误时不会污染办公网访客也默认无法访问内网资源。2.3 IP 地址规划三原则连续、汇总友好、留余量IP 规划建议遵守连续、汇总友好、留余量三条原则。办公网段尽量连续比如从 192.168.10.0/24 依次排开后续写汇总路由或安全策略时一条规则就能覆盖所有办公网段策略条目数明显减少。每个部门优先给一个独立的 /24即使当前只有二十台终端也不要几个人挤在一个网段里共享网段省了地址却让广播域变大部门间隔离只能靠 ACL排错时没有清晰的边界。像 192.168.10.0/25 和 192.168.10.128/25 这种把一个 /24 拆两半的做法适合临时两个小部门共用一段地址但终端数量增长后调整成本高经典方案宁愿一开始给每个部门一个 /24把剩余网段留到后面。地址分配还要有固定规律。常见做法是网关统一放在每个网段的 .254服务器、网络设备用 .1.20 的固定地址DHCP 地址池从 .100 开始.21.99 预留给打印机、IP 电话等手动指定地址的设备。这套规律本身没有技术门槛但排错时看到 IP 就能判断设备属于哪个区域、是静态还是自动分配效率差别很大。3. 交换机配置落地VLAN 创建、Trunk 放行与 VLANIF 网关3.1 接入交换机配置Access 口连终端Trunk 口只放行需要的 VLAN接入交换机是配置量最大的一层命令本身不复杂但原则要立住每台接入交换机只创建并放行实际用到的 VLAN不要无脑允许所有 VLAN 通过 Trunk。以华为 VRP 命令行举例# 接入交换机 Access-SW1 system-view sysname Access-SW1 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 interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 undo port trunk allow-pass vlan 1 quit说明分三块。第一连终端的口配成 accessport default vlan 决定这个口属于哪个 VLAN终端插上就自动进入对应网段。第二上联口配成 trunk用 port trunk allow-pass vlan 10 20 明确只放行两个办公 VLAN服务器和管理 VLAN 不经过这台交换机没必要放行。第三undo port trunk allow-pass vlan 1 把默认的 VLAN 1 从 trunk 上撤掉VLAN 1 是所有设备默认所在的广播域放行它等于让这台接入交换机可以与其他设备的默认配置互通存在被横向利用的风险。如果担心工位上有人私接无线路由还可以在接入端口上配置端口安全限制 MAC 学习数量发现违规设备直接关端口。提示终端网卡没起来时先看端口物理状态access 口对端接交换机、trunk 口对端接终端都会出现「能通一半」的怪现象。3.2 汇聚交换机配置VLANIF 网关地址与 VLAN 间路由汇聚交换机承担二三层转接二层层面收拢接入交换机的 Trunk三层层面给每个 VLAN 建一个 VLANIF 接口并配 IP这个地址就是该网段的网关。继续用华为命令# 汇聚交换机 Agg-SW system-view sysname Agg-SW vlan batch 10 20 30 100 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 interface Vlanif30 ip address 192.168.30.254 255.255.255.0 quit interface Vlanif100 ip address 192.168.100.254 255.255.255.0 quit interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 30 100 quit这里的关键是 VLANIF 与物理口分离。VLANIF 地址必须在规划表约定的网段内且全网保持一致比如统一用 .254 做网关。跨 VLAN 通信不需要额外配置路由协议VLANIF 本身具备三层能力汇聚交换机查路由表直接转发。终端 ping 不通其他部门时先确认两端的 VLANIF 是否 updisplay ip interface brief 比抓包更早给出结论。部署时还要注意 Trunk 两端都要放行对应 VLAN只在一端放行会出现同一个 VLAN 内终端之间 ping 不通的现象故障表现和端口没起来完全一样。3.3 核心上联用 Eth-Trunk两条物理链路合成一条逻辑链路汇聚层与核心层之间、核心层与出口设备之间最常见做法是用 Eth-Trunk 做链路聚合。两条千兆物理链路合成一条逻辑链路带宽翻倍单条物理链路故障时业务不中断。配置在两端各做一遍# 核心交换机 Core-SW与汇聚对接的示例 interface Eth-Trunk1 port link-type trunk port trunk allow-pass vlan 10 20 30 100 quit interface GigabitEthernet0/0/1 eth-trunk 1 quit interface GigabitEthernet0/0/2 eth-trunk 1 quit链路聚合有两个注意点。第一两端要配置同样的 Eth-Trunk 编号成员口速率和双工模式必须一致不同速率的口不能加入同一聚合组否则流量不均分反而出现链路拥塞。第二手工模式与 LACP 模式二选一时条件允许优先用 LACP协商过程能自动检测链路故障并把流量切换到存活成员口手工模式要求两端配置完全吻合错一条整个聚合组就起不来。配置完用 display eth-trunk 1 查看成员口状态全部 up 再继续往上调。4. DHCP 与互联网出口终端自动拿地址回包路由一条不能丢4.1 DHCP 接口地址池在 VLANIF 上直接下发地址组建企业局域网时DHCP 服务放哪一层直接决定命令写法。接入层不做汇聚层网关设备做最简单在 VLANIF 接口上启用 interface 模式的地址池地址池自动取接口所在网段不用单独定义地址范围出错概率最低。配置如下# 汇聚交换机开启 DHCP 并配置办公 VLAN 的地址池 system-view dhcp enable interface Vlanif10 dhcp select interface dhcp server dns-list 192.168.30.2 223.5.5.5 dhcp server excluded-ip-address 192.168.10.1 192.168.10.99 quit两个参数单独说明。dhcp server excluded-ip-address 把 .1.99 预留出来供服务器、打印机和 IT 用的静态设备避免自动分配和静态配置撞车。dhcp server dns-list 第一个写内网 DNS 或网关自己的地址第二个写公共 DNS 兜底如果公司有内网域名解析需求内部 DNS 必须放在第一位否则机器名解析时好时坏。终端开机后应自动拿到 192.168.10.100 起的地址。如果拿到的是 169.254.x.x说明 DHCP 包没到网关直接查接入交换机与汇聚之间的 Trunk 放行列表。默认租约一天对办公终端足够临时访客多的话把租约缩短地址回收更快。小型网络不想把 DHCP 放在交换机上也可以单独用一台内网服务器跑 DHCP 服务交换机上做 relay 指向它但多一台依赖设备故障域变大经典做法是让网关直接分发。4.2 出口设备的 NAT 与默认路由内部地址出公网的关键一步终端有了地址还要能访问互联网。出口设备常见做法是路由器或防火墙做 NAT 地址转换把内部私网地址转换成公网接口地址后再送出去。以一台 AR 路由器为例# 出口路由器配置 NAT 与默认路由 system-view acl number 2001 rule 5 permit source 192.168.0.0 0.0.255.255 rule 10 permit source 172.16.0.0 0.0.255.255 quit interface GigabitEthernet0/0/0 ip address 203.0.113.2 255.255.255.248 nat outbound 2001 quit interface GigabitEthernet0/0/1 ip address 192.168.0.1 255.255.255.252 quit ip route-static 0.0.0.0 0.0.0.0 203.0.113.1代码里用 203.0.113.0/24 文档专用地址替换成运营商分配的真实公网地址即可。ACL 2001 放行内网各私网段nat outbound 2001 挂在公网口上意思是匹配 ACL 的源地址在出接口统一转换成公网口地址。内网访问互联网的路径是交换机默认路由指向 192.168.0.1路由器再交给运营商网关。nat outbound 挂哪个接口很关键挂错会内网能发不能回访问互联网「假通」。4.3 去程与回程路由默认路由给出口明细路由回内网整个链路最后一步是路由双向打通。核心交换机到出口设备之间需要一个互联地址段这里用 192.168.0.0/30核心侧 192.168.0.2路由器侧 192.168.0.1。交换机要有一条默认路由把互联网流量交给路由器路由器则必须知道回内网各网段的路由两条方向缺一不可# 核心交换机三层互联口与默认路由 interface GigabitEthernet0/0/0 undo portswitch ip address 192.168.0.2 255.255.255.252 quit ip route-static 0.0.0.0 0.0.0.0 192.168.0.1# 出口路由器回程明细路由下一跳全部指向核心交换机 ip route-static 192.168.10.0 255.255.255.0 192.168.0.2 ip route-static 192.168.20.0 255.255.255.0 192.168.0.2 ip route-static 192.168.30.0 255.255.255.0 192.168.0.2 ip route-static 192.168.100.0 255.255.255.0 192.168.0.2 ip route-static 172.16.200.0 255.255.255.0 192.168.0.2NAT 只做源地址转换回包的目的地址仍是内网私网段路由器必须查表知道回哪里去。这里容易犯的错是只配了默认路由而漏掉回程明细路由现象是终端 ping 公网 IP 有去无回。之前规划办公段连续时可以把多段合并成一条但新增 VLAN 后回程路由仍要同步补上否则新网段就是单向通。配完在交换机上 ping 出口路由器内网口地址能通再从终端 ping 公网 IP 能通最后 ping 域名整个链路才算验收完。5. 验收与排错从分层 ping 到端口镜像抓包5.1 分层 ping 法按网关、跨段、出口、域名逐级定位网络验收和故障定位我都从分层 ping 开始而不是直接上抓包。顺序固定先 ping 127.0.0.1 验本机协议栈再 ping 本机 IP 验网卡ping 网关验二层ping 另一个 VLAN 的终端验三层路由ping 出口设备互联地址验跨设备ping 公网地址验 NAT最后 ping 域名验 DNS。每一步失败故障就在上一步到这一步之间范围被压缩成一段链路。批量验收时可以直接跑一段循环for ip in 192.168.10.254 192.168.20.254 192.168.0.1 223.5.5.5; do ping -c 2 -W 2 $ip echo $ip ok || echo $ip fail done第三个地址 192.168.0.1 是出口路由器内网口第四个是公共 DNS。第一批挂掉就说明二层有问题第二批挂掉多半在汇聚网关或路由配置后面挂掉则盯 NAT 和 DNS。5.2 常用 display 命令设备状态和路由表先确认设备管理 VLAN 配好之后远程维护主要靠几条 display 命令。下面是故障率最高的几个场景排查场景命令看什么端口是否起来display interface GigabitEthernet0/0/1Physical/Protocol 状态VLAN 是否创建display vlanVLAN 列表与端口归属网关是否生效display ip interface briefVLANIF 地址与 up/down路由表是否完整display ip routing-table默认路由与明细路由DHCP 是否分地址display dhcp server statistics请求数、成功数、冲突数5.3 端口镜像抓包查 DHCP 拿不到地址的最终手段display 命令都正常但终端仍拿不到地址时最后的可靠手段是端口镜像把真实报文引出来看。把疑似故障终端接到 Gi0/0/1笔记本接 Gi0/0/24 观察口observe-port 1 interface GigabitEthernet0/0/24 interface GigabitEthernet0/0/1 port-mirroring to observe-port 1 both quitobserve-port 指定镜像出口方向both 表示收发双向都镜像。抓包过滤条件写 bootp 或 udp.port 67重点看四条报文Discover 是否到达网关、Offer 是否发回、Request 是否发出、ACK 是否确认。只见到 Discover 没有 Offer问题在 DHCP 服务端或地址池耗尽Offer 发回但终端不回 Request怀疑终端网卡或地址冲突Request 有而 ACK 不回来多半是地址冲突检测。配合 display dhcp server statistics 一起看一次就能定到具体设备。本文还有配套的精品资源点击获取

相关新闻

ik_llama.cpp 在 ARM CPU 上输出乱码的排查实录:从 `-DGGML_SVE=ON` 到 `GGML_ARCH_FLAGS` 的 CPU 特性配置指南

ik_llama.cpp 在 ARM CPU 上输出乱码的排查实录:从 `-DGGML_SVE=ON` 到 `GGML_ARCH_FLAGS` 的 CPU 特性配置指南

ik_llama.cpp 在 ARM CPU 上输出乱码的排查实录:从 -DGGML_SVEON 到 GGML_ARCH_FLAGS 的 CPU 特性配置指南 【免费下载链接】ik_llama.cpp llama.cpp fork with additional SOTA quants and improved performance 项目地址: https://gitcode.com/GitHub_Trending/…

2026/9/19 5:25:25 阅读更多 →
前端开发者如何快速补齐后端与部署能力:选型与实战路径

前端开发者如何快速补齐后端与部署能力:选型与实战路径

1. 前端开发者为什么绕不开后端与部署这道坎做了五年前端,我越来越强烈地感觉到一个事实:只会写页面、调接口的前端,职业天花板来得比想象中快得多。你可能把 Vue3 的响应式原理背得滚瓜烂熟,Element Plus 的大屏自适应方案也手到…

2026/9/19 5:25:25 阅读更多 →
MindSpore与PyTorch数据准备全流程迁移实战指南

MindSpore与PyTorch数据准备全流程迁移实战指南

我在实际接触昇思MindSpore之前,一直觉得它和PyTorch之间隔着一道不小的门槛,尤其是数据准备这块,API风格差异大,稍不注意就会在踩坑上浪费一整天。后来因为项目需要,要把几个开源的小模型从PyTorch迁到MindSpore上跑&…

2026/9/19 5:25:25 阅读更多 →

最新新闻

Fleet 仓库中的 OpenSpec spec-driven 变更工作流:从 explore 到 archive 的完整指南

Fleet 仓库中的 OpenSpec spec-driven 变更工作流:从 explore 到 archive 的完整指南

Fleet 仓库中的 OpenSpec spec-driven 变更工作流:从 explore 到 archive 的完整指南 【免费下载链接】fleet Open device management 项目地址: https://gitcode.com/GitHub_Trending/fl/fleet OpenSpec 是一套"先写规范、再写代码"(s…

2026/9/20 8:52:54 阅读更多 →
Codex 会话堆积导致启动卡顿?删除与批量清理历史聊天记录实操指南

Codex 会话堆积导致启动卡顿?删除与批量清理历史聊天记录实操指南

1. 从卡顿说起:Codex 会话堆积到底有多要命用 Codex 有一段时间的朋友,大概率都经历过这样一个过程:刚开始装好、登录、跑第一个任务,丝滑得不行;用了两三周,某天早上打开客户端,光标转圈转了半…

2026/9/20 8:52:54 阅读更多 →
AI对话系统核心技术解析:从语义理解到生成策略

AI对话系统核心技术解析:从语义理解到生成策略

1. 项目概述:当AI学会"接话"时发生了什么上周调试对话系统时,我盯着日志里那句"这个问题很有趣,让我想想..."突然意识到:用户看到的只是对话框里的文字,而背后实际运行着十余个协同工作的技术模块…

2026/9/20 8:52:54 阅读更多 →
文言编程语言(wenyan-lang)入门与实战指南:语法、CLI 编译与古书 SVG 渲染

文言编程语言(wenyan-lang)入门与实战指南:语法、CLI 编译与古书 SVG 渲染

文言编程语言(wenyan-lang)入门与实战指南:语法、CLI 编译与古书 SVG 渲染 【免费下载链接】wenyan 文言文編程語言 A programming language for the ancient Chinese. 项目地址: https://gitcode.com/gh_mirrors/we/wenyan wenyan-lan…

2026/9/20 8:52:54 阅读更多 →
Eclipse下载安装全攻略:版本选择、JDK配置与高频报错排查

Eclipse下载安装全攻略:版本选择、JDK配置与高频报错排查

下载Eclipse这件事,说大不大,说小也不小。很多人觉得“不就是下个压缩包、解压、双击exe嘛”,可真上手就会发现,版本选错、JDK对不上、镜像站慢成蜗牛、装完启动报错,每一关都能卡一批人。我这些年陆陆续续帮不少人排查…

2026/9/20 8:52:54 阅读更多 →
Python gRPC实战:超时重试与接口兼容策略

Python gRPC实战:超时重试与接口兼容策略

1. 项目概述在分布式系统架构中,微服务间的可靠通信是保证系统稳定性的关键。gRPC作为高性能的RPC框架,其默认配置往往无法满足生产环境对服务健壮性的要求。本文将基于Python实现场景,深入探讨三种核心治理策略:超时控制、请求重…

2026/9/20 8:51:54 阅读更多 →

日新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →