十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

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

华为eNSP实战:配置静态路由实现不同VLAN间通信

华为eNSP实战:配置静态路由实现不同VLAN间通信 先调整好心态再动手很多朋友刚学网络时都会碰到一个问题——同一个交换机下的电脑明明连在同一个设备上但 A 电脑就是 ping 不通 B 电脑。查了一圈发现两台电脑的 IP 地址不在同一个网段VLAN 也对不上于是开始怀疑交换机坏了、网线松了、电脑中毒了。其实问题往往没那么复杂这大概率是没做三层通信配置导致的。本文就围绕“配置静态路由实现不同 VLAN 不同网段之间的通信”这个主题展开。文章会先讲清楚 VLAN、网段、三层通信这些基础概念再用华为 eNSP 模拟器做一套完整的组网实战手把手教大家配置静态路由最后给出常见故障排查思路和工程实践建议。无论你是刚接触网络的在校学生还是刚入门的企业网络运维这篇文章都值得收藏。1. 背景与核心概念1.1 VLAN 隔离了广播域但同时也隔离了通信VLANVirtual Local Area Network虚拟局域网的核心作用是把一个物理局域网在逻辑上划分成多个互相隔离的广播域。默认情况下不同 VLAN 之间是二层隔离的也就是说——VLAN 10 的设备发出的广播帧、组播帧VLAN 20 的设备根本收不到。那 VLAN 10 和 VLAN 20 之间想通信怎么办这就必须引入三层设备比如路由器或三层交换机。VLAN 解决的是“隔离”问题三层路由解决的是“打通”问题。“不同 VLAN 不同网段”的典型场景如下终端所属 VLANIP 网段网关PC1VLAN 10192.168.10.0/24192.168.10.254PC2VLAN 20192.168.20.0/24192.168.20.254PC1 想访问 PC2首先要将数据包发给自己的网关192.168.10.254然后由网关设备根据路由表决定如何转发到 192.168.20.0/24 网段最终交给 PC2。这个过程中网关所在的三层设备必须有一条指向对端网段的路由否则数据包会被丢弃。1.2 什么是静态路由静态路由是由网络管理员手动配置的路由表条目它告诉路由器“去某个网段的数据包下一跳应该交给谁”。例如去 192.168.20.0/24 网段的数据包下一跳交给 192.168.30.2这就是一条最简单的静态路由。与动态路由如 OSPF、RIP相比静态路由有以下特点配置简单一条命令就能搞定不需要协议协商。不占用链路带宽动态路由会有协议报文交互静态路由没有。路径可控管理员可以精确指定数据包走哪条路便于故障排查。缺点网络拓扑变化时需要手动修改无法自动适应。1.3 三层通信的基本前提要让不同 VLAN 的网段互通至少满足以下条件终端设备配置了正确的 IP 地址和网关。二层路径可达交换机 VLAN 划分正确Trunk 放行对应 VLAN。三层设备上配置了各 VLAN 的网关地址接口 IP 或子接口 IP。三层设备路由表中存在到达目标网段的路由条目且下一跳可达。路径上所有中间设备都配置了正确的路由常见漏配是只配了去程路由没配回程路由。很多人静态路由配完了还是不通问题往往就出在“只配了去程没配回程”或者“网关设备接口 IP 与 PC 不在同一网段”。这些都是我们要重点排查的对象。2. 典型组网架构分析在动手配置之前先把组网思路理清楚。不同 VLAN 不同网段的三层互通常见的有三种方案。2.1 方案一单臂路由把一台路由器的物理接口通过子接口的方式划分成多个逻辑接口每个子接口对应一个 VLAN 的网关。拓扑示意PC1(VLAN10) --- 交换机 --- 路由器 子接口 G0/0/0.10 PC2(VLAN20) --- 交换机 --- 路由器 子接口 G0/0/0.20路由器和交换机之间只有一根物理链路通过 802.1Q Trunk 允许 VLAN 10、VLAN 20 通过。2.2 方案二三层交换机 VLANIF 接口在三层交换机上创建 VLANIF 接口分别配置 VLAN 10 和 VLAN 20 的网关 IP启用交换机的三层路由功能。拓扑示意PC1(VLAN10) --- 三层交换机 VLANIF10: 192.168.10.254 PC2(VLAN20) --- 三层交换机 VLANIF20: 192.168.20.254三层交换机本身就是三层设备可以同时作为两个 VLAN 的网关不同 VLAN 的流量可以直接在三层交换机内部路由。这种方式在园区网中非常常见。2.3 方案三多台路由器 静态路由如果两台终端不在同一个园区而是分布在不同地理位置分别接在不同的路由器下这时就需要在路由器之间配置静态路由逐跳打通。拓扑示意PC1(VLAN10) --- LSW1 --- AR1 --- 互联链路 --- AR2 --- LSW2 --- PC2(VLAN20)AR1 和 AR2 之间通过一个独立的互联网段例如 192.168.30.0/30相连AR1 要配置去往 192.168.20.0/24 的静态路由AR2 要配置去往 192.168.10.0/24 的静态路由。2.4 本文实战选择哪种方案为了把“静态路由”讲透本文选择方案三用两台路由器AR1、AR2、两台交换机LSW1、LSW2和两台 PC完整演示“不同 VLAN、不同网段、跨路由器”的通信过程。这个拓扑比单臂路由更贴近真实的企业分支互联场景也能把静态路由的作用展示得最清晰。整体拓扑如下PC1VLAN10192.168.10.1/24—— LSW1 —— AR1 ——互联网段 192.168.30.0/30—— AR2 —— LSW2 —— PC2VLAN20192.168.20.1/24各设备 IP 规划设备接口IP 地址说明PC1网卡192.168.10.1/24网关 192.168.10.254LSW1与 PC1 相连接口Access VLAN 10二层交换机LSW1与 AR1 相连接口Trunk放行 VLAN 10二层交换机AR1G0/0/0192.168.10.254/24VLAN10 网关AR1G0/0/1192.168.30.1/30与 AR2 互联AR2G0/0/0192.168.20.254/24VLAN20 网关AR2G0/0/1192.168.30.2/30与 AR1 互联LSW2与 PC2 相连接口Access VLAN 20二层交换机LSW2与 AR2 相连接口Trunk放行 VLAN 20二层交换机3. 环境准备与工具说明本文实验基于华为 eNSPEnterprise Network Simulation Platform模拟器。eNSP 是华为官方推出的图形化网络仿真工具使用起来比较方便尤其适合学习和验证华为设备的命令操作。3.1 需要用到的设备在 eNSP 中拖入以下设备2 台路由器使用 AR 系列设备。2 台二层交换机使用 S5700 系列支持 Trunk 和 VLAN 配置。2 台 PC。3.2 版本说明不同版本的 eNSP 在设备型号和命令支持上可能有细微差异本实验不依赖太高阶的特性只用到基础的接口 IP、VLAN、Trunk 和静态路由命令。实际项目中使用不同厂商设备时命令会有差异但设计思路是通用的先规划地址再配置二层再配置三层最后验证路由。如果你用的是真实设备强烈建议先在测试环境或模拟器上验证配置确认无误后再对生产设备做变更避免影响在线业务。4. 核心原理拆解4.1 VLAN 与 Trunk 的关系二层交换机默认情况下所有接口都属于 VLAN 1。我们需要手动把 PC 连接的接口划入指定 VLAN同时把交换机与路由器相连的接口配置为 Trunk并放行对应 VLAN。Access 接口通常连接终端设备只能属于一个 VLAN发出的帧不带 VLAN Tag。Trunk 接口通常连接交换机之间或交换机与路由器之间可以放行多个 VLAN发出的帧带有 VLAN Tag除了 Native VLAN。这里有一个概念容易被忽视在华为交换机上Trunk 接口的 PVID 默认是 VLAN 1。如果不小心把 Trunk 口的 PVID 设置成了某个业务 VLAN而该 VLAN 又没有放行就会出现“某些帧能通某些帧不通”的怪现象。4.2 路由器是怎么转发跨网段数据的当 PC1192.168.10.1访问 PC2192.168.20.1时PC1 发现目标 IP 与自己不在同一网段于是将数据帧的目的 MAC 地址写成网关192.168.10.254的 MAC 地址源 IP 是自己的 IP。数据帧到达 AR1 的 G0/0/0 接口AR1 解开二层帧头看到目的 IP 是 192.168.20.1。AR1 查询自己的路由表。如果 AR1 路由表中有“192.168.20.0/24 下一跳 192.168.30.2”这条路由AR1 就会把数据包重新封装下一跳指向 AR2192.168.30.2。AR2 收到数据包后查询路由表发现 192.168.20.0/24 是自己的直连网段于是交给 G0/0/0 接口再通过交换机 LSW2 转发给 PC2。反过来PC2 回复 PC1 时AR2 也必须知道“去 192.168.10.0/24 的下一跳是 192.168.30.1”。这就是前面提到的往返路由都要配置。4.3 静态路由命令详解华为设备配置静态路由的核心命令是ip route-static 目标网段 掩码 下一跳地址例如ip route-static 192.168.20.0 255.255.255.0 192.168.30.2参数含义192.168.20.0是目标网络地址。255.255.255.0表示子网掩码是 24 位。192.168.30.2是下一跳 IP 地址即数据包应该交给谁。如果不想一条一条地写也可以配置默认路由默认路由也叫缺省路由ip route-static 0.0.0.0 0.0.0.0 192.168.30.2默认路由的含义是路由表中没有明确匹配条目时一律交给 192.168.30.2。在真实项目中如果分支节点只有一条出口链路往往配置默认路由指向主出口网关如果内部有多个网段需要精确控制路径再配置明细静态路由。这两种方式可以同时存在路由器会优先匹配最长前缀的明细路由。5. 完整实战eNSP 配置静态路由实现 VLAN 间通信下面进入核心部分。打开 eNSP按照前面的拓扑图拖入设备并连接然后逐台设备进行配置。5.1 PC 与交换机之间的 VLAN 配置5.1.1 LSW1 配置先配置交换机 LSW1把连接 PC1 的接口划入 VLAN 10把连接 AR1 的接口配置为 Trunk 并放行 VLAN 10。system-view sysname LSW1 # 创建 VLAN 10 vlan 10 description VLAN10_Users quit # 连接 PC1 的接口假设是 GE0/0/1配置为 Access划入 VLAN 10 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit # 连接 AR1 的接口假设是 GE0/0/2配置为 Trunk放行 VLAN 10 interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10 quit说明port default vlan 10是把 Access 接口的 PVID 设置为 VLAN 10这样从该接口收到的无 Tag 帧会被打上 VLAN 10 的 Tag。port trunk allow-pass vlan 10是允许 Trunk 口转发 VLAN 10 的帧。5.1.2 LSW2 配置同理配置 LSW2把 PC2 划入 VLAN 20并放行 VLAN 20 到 AR2。system-view sysname LSW2 vlan 20 description VLAN20_Users quit interface GigabitEthernet0/0/1 port link-type access port default vlan 20 quit interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 20 quit如果网络里后续还要加 VLAN 30、VLAN 40只需要在 Trunk 允许列表中追加即可例如port trunk allow-pass vlan 20 30 40在 Huawei 设备上重复执行port trunk allow-pass vlan命令会覆盖之前的配置所以一般写在一行里。如果已经存在旧配置要仔细确认是否覆盖了原有 VLAN。5.2 路由器接口 IP 配置5.2.1 AR1 配置AR1 上需要配置两个接口G0/0/0 连接 LSW1作为 VLAN 10 的网关。G0/0/1 连接 AR2作为互联接口。system-view sysname AR1 # 配置 G0/0/0作为 VLAN10 网关 interface GigabitEthernet0/0/0 ip address 192.168.10.254 255.255.255.0 quit # 配置 G0/0/1连接 AR2 interface GigabitEthernet0/0/1 ip address 192.168.30.1 255.255.255.252 quit这里掩码选择 255.255.255.252也就是/30表示互联网段只有 4 个可用地址192.168.30.0、192.168.30.1、192.168.30.2、192.168.30.3。其中 192.168.30.0 是网络地址192.168.30.3 是广播地址实际可用的是 192.168.30.1 和 192.168.30.2。5.2.2 AR2 配置AR2 上配置 G0/0/0 作为 VLAN 20 的网关G0/0/1 连接 AR1。system-view sysname AR2 interface GigabitEthernet0/0/0 ip address 192.168.20.254 255.255.255.0 quit interface GigabitEthernet0/0/1 ip address 192.168.30.2 255.255.255.252 quit5.3 配置静态路由这是整个实验最关键的一步。5.3.1 AR1 上配置去往 VLAN 20 网段的静态路由AR1 直连网段是 192.168.10.0/24 和 192.168.30.0/30。它并不知道 192.168.20.0/24“住在哪里”所以需要管理员告诉它去 192.168.20.0/24下一跳是 192.168.30.2。ip route-static 192.168.20.0 255.255.255.0 192.168.30.25.3.2 AR2 上配置去往 VLAN 10 网段的静态路由AR2 同样不知道 192.168.10.0/24 的路。配置一条反向路由ip route-static 192.168.10.0 255.255.255.0 192.168.30.1两条静态路由配置完成后可以查看路由表确认路由是否生效display ip routing-table在 AR1 上输出中应该能看到Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.20.0/24 Static 60 0 RD 192.168.30.2 GigabitEthernet0/0/1在 AR2 上同理能看到 192.168.10.0/24 的 Static 路由。5.4 PC 配置在 eNSP 中双击 PC1配置IP 地址192.168.10.1子网掩码255.255.255.0网关192.168.10.254PC2 配置IP 地址192.168.20.1子网掩码255.255.255.0网关192.168.20.254注意PC 的网关地址必须与路由器上对应接口的 IP 保持一致。网关配错了数据包连第一跳都出不去。5.5 运行与验证配置完成后在 PC1 上执行 ping 192.168.20.1预期结果是能够 ping 通。在真实环境中第一次 ping 可能会因为 ARP 解析等操作有 1-2 个丢包但只要后续能通就没问题。eNSP 模拟器上也经常出现“首包超时、后续包正常”的情况这属于正常现象。如果 PC1 能 ping 通 PC2说明整个二三层链路、VLAN 放行、静态路由配置都是正确的。为了更彻底地验证还可以在 PC2 上反向 ping 192.168.10.1检查反向路由是否也没问题。5.6 三层交换机的扩展说明如果你使用的是三层交换机而不是路由器加二层交换机的组合那么配置思路会略有不同。三层交换机直接创建 VLANIF 接口来充当网关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在华为三层交换机上创建 VLANIF 后会自动生成直连路由所以两个 VLAN 之间的通信不需要再配置静态路由直接通过交换机三层转发即可。但如果三层交换机需要和其他路由器跨设备通信那就仍然需要配置静态路由指向对端设备的下一跳地址。这也是不少新手容易误解的地方——三层交换机内部 VLAN 间路由是自动的跨设备跨网段仍然需要路由协议或静态路由。6. 常见问题与排查思路以下是在配置“不同 VLAN 不同网段通信”时最容易遇到的几类问题。按照优先级从高到低排列。6.1 PC 无法 ping 通网关问题现象常见原因解决思路PC ping 不通自己的网关PC 的 IP 或网关配置错误检查 PC 的 IP 地址、子网掩码、网关是否和路由器接口 IP 在同一网段PC ping 不通网关交换机接口 VLAN 划错用display vlan查看交换机上各 VLAN 的接口成员PC ping 不通网关接口物理状态 down检查网线、接口是否开启用display interface brief查看接口状态在华为交换机上可以使用以下命令查看接口状态display interface brief如果某个接口显示为 DOWN说明物理链路没通。6.2 VLAN 配置正确但仍不通问题现象常见原因解决思路跨交换机 VLAN 不通Trunk 口没有放行对应 VLAN用display port vlan查看 Trunk 口的 VLAN 许可列表Trunk 口放行了但还是不通PVID 设置异常检查 Trunk 口 PVID如果业务 VLAN 需要无 Tag 转发要调整 PVID二层通了三层不通路由器没有配置静态路由或路由错误在路由器上用display ip routing-table查看路由表这里特别强调Trunk 口有两类关键属性一类是“哪些 VLAN 被允许通过”另一类是“这个接口默认属于哪个 VLANPVID”。很多人只关注了 allow-pass却忽略了 PVID。在华为设备上查看 Trunk 口配置的命令display interface GigabitEthernet0/0/2输出信息中会包含Port Trunk allow-pass vlan和Port PVID两行。6.33 静态路由配置了但 ping 不通问题现象常见原因解决思路路由表里有路由但数据不通下一跳地址不可达先 ping 一下下一跳地址确认链路正常去程通回程不通只配了单向路由没配反向路由两台路由器都要配置静态路由路由不生效掩码写错或目标网段写错仔细核对目标网段和掩码数据包被丢弃中间设备 ACL 或防火墙拦截检查是否有 ACL 策略、防火墙安全策略提供一组常用排查命令# 查看路由器接口 IP display ip interface brief # 查看路由表 display ip routing-table # 测试到下一跳的连通性 ping 192.168.30.2 # 查看 VLAN 配置 display vlan # 查看 Trunk 口配置 display interface GigabitEthernet0/0/26.43 Windows 电脑和打印机不在同一网段如何排查最近看到不少热搜场景是“Windows 电脑 IP 和打印机 IP 不在一个网段搜索不到打印机”。其实原理和本文完全一致打印机的 IP 在 192.168.20.0/24电脑的 IP 在 192.168.10.0/24。两个设备如果都在同一个二层交换机下但 VLAN 不同那么默认是二层隔离的。如果两台设备之间的网关设备路由器/三层交换机配置了正确的路由理论上它们是可以互通的。但是很多打印机软件使用组播/广播协议去自动发现设备广播域被 VLAN 隔离后自动搜索就会失败。解决思路要么把电脑和打印机划到同一个 VLAN 同一个网段要么在路由器上配置跨网段路由后手动添加打印机 IP 进行访问要么配置基于 IP 子网的 VLAN让特定网段自动映射到对应 VLAN。对于后一种方式华为交换机上支持基于 IP 子网划分 VLAN命令类似vlan 20 ip-subnet-vlan 1 ip 192.168.20.0 255.255.255.0但这种方式只影响二层 VLAN 的划分策略三层互通仍然需要网关路由。6.5 是否所有华为交换机划 VLAN 的方法都一样很多新手在学完华为交换机后会问“是不是所有华为交换机划 VLAN 都一样”。答案是不完全一样。盒式接入交换机如 S5700 早期系列和框式交换机如 S7700、S9700 系列在 VLAN 创建、接口加入方式上有一定相似度但框式设备的接口编号通常是“槽位号/板卡号/端口号”配置时需要留意。部分交换机在默认情况下开启的是“VLAN 1 即为全部接口”的模式需要额外确认。高端框式交换机还可能涉及“VLAN 池”、“Super VLAN”、“MUX VLAN”等高级特性这些不是标配命令需要根据具体设备型号查阅资料确认。所以稳妥的做法是实验环境先用模拟器验证生产环境以设备官方文档为准。7. 最佳实践与工程建议7.1 地址规划要统一规范不要随手分配 IP。建议 IP 地址规划遵循以下原则每个 VLAN 对应一个独立的 /24 网段便于记忆和管理。网关地址统一使用网段内的最后一个可用地址例如 .254这样在所有设备上保持一致排查问题时“看网关”一眼就能判断对错。互联网段单独规划一个段例如 192.168.30.0/30、192.168.31.0/30不要和业务网段混在一起。记录一份 IP 地址规划表标注设备、接口、VLAN、IP、用途后续排障会轻松很多。7.2 静态路由命名和注释习惯华为设备支持给静态路由配置描述信息方便后续维护ip route-static 192.168.20.0 255.255.255.0 192.168.30.2 description TO_VLAN20虽然很多人并不习惯写 description但在生产环境中面对几十条静态路由时没有描述信息基本靠猜。建议对于重要静态路由都加上描述信息说明这条路由是“去哪个网段走哪个下一跳”。7.3 注意往返路由对称性静态路由的经典问题就是单向通。去程路由配了回程没有配就会导致 ping 请求能过去但 ping 回复回不来。在排查时不要只盯着一台路由器看要沿着数据包的转发路径逐跳分析。从 PC1 发起 ping每一步的源 IP、目的 IP、源 MAC、目的 MAC 是怎么变化的梳理清楚之后就知道问题出在哪一跳。7.4 安全管理与最小权限原则在配置路由和 VLAN 时还应该考虑安全边界不同部门、不同安全等级的业务尽量划分在不同 VLAN并通过 ACL 或防火墙策略控制互访范围而不是无脑把所有网段全部打通。生产设备配置修改前先备份当前配置可以用display current-configuration查看当前配置也可以用 FTP/TFTP 方式备份配置文件。如果必须清空某段静态路由使用undo ip route-static命令时要确保不会影响其他业务流量。示例命令undo ip route-static 192.168.20.0 255.255.255.0 192.168.30.27.5 静态路由与动态路由如何选择文章写到这里多聊一句生产环境选型。如果网络规模很小只有几条静态路由手动配置完全够用。但如果网络规模较大、链路存在冗余备份、拓扑经常变化建议使用动态路由协议例如 OSPF。动态路由能自动感知拓扑变化、自动收敛运维成本更低。静态路由比较适合小型办公网络。分支节点只有一条出口链路。需要精确控制业务流向的场景。网络拓扑固定、长期不变的环境。动态路由更适合中大型园区网络。多链路负载均衡和冗余备份。经常增加网络节点、调整链路的环境。需要快速收敛排除单点故障的场景。7.6 浮动静态路由实现冗余在多出口场景下还可以利用浮动静态路由实现主备切换。核心思路是给同一条目的网段配置两条静态路由但主路由优先级Preference更低备路由优先级更高主链路故障后自动切换到备用链路。华为设备默认静态路由优先级是 60可以通过preference参数修改# 主路由默认优先级 60 ip route-static 192.168.20.0 255.255.255.0 192.168.30.2 # 备用路由优先级 70优先级值越大越不优先 ip route-static 192.168.20.0 255.255.255.0 192.168.40.2 preference 70当主链路正常时路由器优先使用 192.168.30.2 作为下一跳当主链路故障后会自动切换到 192.168.40.2。这种方式部署简单、效果直接是小规模网络里很实用的冗余方案。8. 总结与学习路线通过本文的实验你已经完整实践了“配置静态路由实现不同 VLAN 不同网段之间的通信”的全流程。回顾一下关键点VLAN 是二层隔离技术跨 VLAN 通信必须经过三层设备。静态路由的核心是手动告诉路由器“目标网段往哪个下一跳走”。往返路由都要配置这是排障时最容易忽略的点。二层故障查 VLAN、Trunk、PVID三层故障查接口 IP、路由表。华为 eNSP 模拟器适合练手真实设备操作时一定要先备份、再变更、后验证。下一步你可以继续学习以下内容单臂路由子接口 802.1Q 封装的配置。三层交换机 VLANIF 接口的原理与配置。OSPF 动态路由协议的基本配置。基于 IP 子网的 VLAN 自动划分。ACL 访问控制列表控制 VLAN 之间的互访权限。网络这个东西命令记不住很正常关键在于把“数据包转发路径”这个思维模型建立起来。遇到问题别急着乱配先画拓扑标好 IP 和 VLAN再从二层到三层逐层排查绝大多数问题都能定位出来。希望这篇文章对你有帮助建议收藏备用。如果你在配置过程中有其他报错也欢迎在评论区交流大家一起把问题弄清楚。
返回列表