ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

华为eNSP交换机端口配置实战:VLAN、Trunk、链路聚合与排障

华为eNSP交换机端口配置实战:VLAN、Trunk、链路聚合与排障 做交换机的端口配置我更喜欢用华为eNSP原因很简单它够真实命令练熟了真机上几乎能无缝切换。很多朋友搭好拓扑后PC之间ping不通第一反应是IP地址配错了但查来查去问题常常出在交换机端口上——端口类型不对、PVID不一致、Trunk没放行VLAN这些小细节最难排查也最容易忽略。这篇实验记录把交换机的端口配置与管理完整走一遍从端口基础参数开始到VLAN端口类型、端口安全、链路聚合、远程管理再到常见的排障思路新手可以直接照着练已经在做运维的朋友也可以当一份速查笔记。内容围绕eNSP模拟器展开但所有命令和思路在华为S5700、S3700等真实设备上同样适用。1. 实验环境准备设备选型与拓扑搭建1.1 在eNSP里选对设备型号eNSP自带的交换机主要有S3700和S5700两个系列S3700偏二层常用来模拟接入层交换机S5700支持VLANIF接口和路由功能适合模拟汇聚层、核心层设备。我这次实验用两台S5700做互联再挂几台PC和一台AR路由器既能测二层VLAN通信也能顺便把三层管理地址和远程登录验证一遍。设备清单如下SW1、SW2S5700交换机负责VLAN划分、Trunk互联、端口安全和链路聚合PC1、PC2接SW1分别划分到不同VLANPC3、PC4接SW2用于验证跨交换机VLAN通信AR1在SSH远程管理实验里充当客户端关键点在于模拟器里的设备型号决定了功能上限。如果你用S3700去配置VLANIF接口会发现接口能创建但无法达到up状态因为二层交换芯片不支持三层转发。所以搭建实验前先想清楚这个实验要不要跨VLAN路由要的话就选S5700别在设备选型上省事。1.2 拓扑连接与接口编号识别eNSP里连线很简单直接用鼠标从设备端口拖到另一台设备端口即可。但连完线要养成看接口编号的习惯华为交换机的接口编号格式是“槽位号/子卡号/端口号”例如GigabitEthernet0/0/1表示0号槽位、0号子卡、第1个端口。模拟器里通常显示为GE0/0/1速率为千兆。我这次规划的连接关系如下PC1 → SW1的GigabitEthernet0/0/1PC2 → SW1的GigabitEthernet0/0/2SW1的GigabitEthernet0/0/24 → SW2的GigabitEthernet0/0/24Trunk互联PC3 → SW2的GigabitEthernet0/0/1PC4 → SW2的GigabitEthernet0/0/2AR1 → SW1的GigabitEthernet0/0/3管理测试用连完线后可以在设备上执行display interface brief查看端口状态。看到端口状态为up、协议状态为up说明物理链路正常。如果端口显示down不用急着查配置先检查连线是否接对、对端设备是否开启很多所谓“配置问题”其实只是拓扑没连好。2. 端口基础配置先把端口调到可用状态2.1 进入端口视图与常用查看命令交换机的端口配置都在接口视图下完成入口很固定先进入系统视图再进入指定接口Huaweisystem-view [Huawei]interface GigabitEthernet0/0/1 [Huawei-GigabitEthernet0/0/1]每次配置前我习惯先执行两条查看命令确认当前端口状态display interface brief查看所有接口的物理状态、协议状态、收发流量display this查看当前端口下的已有配置这两条命令能帮你快速判断问题是出在端口本身还是上层VLAN配置。比如端口显示administratively down说明被shutdown过显示down说明物理链路有问题显示up但PC不通那就要往下查VLAN了。顺便说一下华为设备的接口视图提示符是[Huawei-GigabitEthernet0/0/1]注意视图名和设备名连在一起很多人配着配着忘了自己在哪个视图结果把命令敲错位置。如果发现命令敲下去报错先看一眼提示符大概率是视图没对。2.2 速率、双工、描述与端口开关端口的基础参数主要有四个速率、双工模式、描述信息、端口的开启关闭状态。命令如下[Huawei-GigabitEthernet0/0/1]description To-PC1 [Huawei-GigabitEthernet0/0/1]speed 100 [Huawei-GigabitEthernet0/0/1]duplex full [Huawei-GigabitEthernet0/0/1]undo shutdowndescription是端口描述相当于给端口贴标签后续维护时一看就知道这条线接到哪台设备。speed设置端口速率可选10、100、1000、autoduplex设置双工模式full是全双工half是半双工auto是自动协商。生产环境中大部分场景直接保持auto即可手动指定速率反而容易出问题比如一端是auto、一端是speed 100协商结果可能不稳定。关于shutdown和undo shutdown这里有个实操经验有时端口下配置冲突或者需要临时断掉某个终端直接执行shutdown即可恢复时再执行undo shutdown。但要注意端口安全触发的error-down状态光执行undo shutdown不一定能恢复具体后面讲端口安全时细说。2.3 批量配置多端口一台交换机几十个端口一个个进去敲命令太慢了。华为提供了端口组功能可以把多个端口聚到一个组里统一配置[Huawei]port-group 1 [Huawei-port-group-1]group-member GigabitEthernet0/0/1 to GigabitEthernet0/0/10 [Huawei-port-group-1]port link-type access [Huawei-port-group-1]port default vlan 10上面这段配置会将GE0/0/1到GE0/0/10共10个端口统一设置为Access端口并划入VLAN10。端口组里的配置命令和普通端口视图下完全一样区别只是批量生效。这里提醒一句端口组适合批量配置相同属性如果端口属性各不相同别硬塞进一个组里。比如有些端口要接PC、有些端口要接服务器、有些端口要做Trunk分组时要按用途拆开而不是按端口顺序偷懒。3. VLAN与端口类型跨交换机通信的关键3.1 为什么要划分VLANVLAN虚拟局域网解决的核心问题是广播域隔离。一个二层网络如果不做任何隔离任何一台设备发广播全网都能收到设备越多广播流量越大网络性能急剧下降。VLAN把一台物理交换机逻辑上拆成多个独立交换机不同VLAN之间默认不能直接二层通信既不互相干扰也提升了安全性。对于端口配置来说VLAN的意义就是决定端口把哪些设备放进哪个隔离域。华为交换机端口有三种类型Access、Trunk、Hybrid理解三者的区别是端口配置的核心。端口类型典型用途特点默认VLAN行为Access连接终端设备PC、打印机只能属于一个VLANPVID为所属VLAN出帧不带TagTrunk交换机之间互联可承载多个VLAN帧带Tag默认只放行VLAN1Hybrid灵活场景华为特有可自定义Tagged和Untagged默认PVID为VLAN1Untagged为VLAN13.2 Access端口给终端设备接入用Access端口最常用在连接PC、服务器、摄像头这类终端设备特点是端口只能属于一个VLAN。配置分两步先创建VLAN再设置端口类型和默认VLAN。[Huawei]vlan batch 10 20 [Huawei]interface GigabitEthernet0/0/1 [Huawei-GigabitEthernet0/0/1]port link-type access [Huawei-GigabitEthernet0/0/1]port default vlan 10vlan batch 10 20表示一次性创建VLAN10和VLAN20。port link-type access把端口类型改成Accessport default vlan 10把端口的PVID默认VLAN设置为10。Access端口发出的数据帧不带VLAN Tag因为终端设备网卡不识别802.1Q标签收到带Tag的帧时如果Tag与PVID不一致会直接丢弃。这些细节初学时不注意后面排查就会一头雾水。配置后可以用display port vlan验证输出里能看到端口类型、PVID、允许通过的VLAN等信息。我每次配完端口必须看一眼这条命令的结果确认端口类型和PVID都没写错。3.3 Trunk端口交换机之间的高速通道两台交换机互联时如果希望多个VLAN跨交换机通信就需要Trunk端口。Trunk链路就像一条管道上面跑了多个VLAN的流量帧会打上VLAN Tag来区分属于哪个VLAN。SW1和SW2互联配置如下[Huawei]interface GigabitEthernet0/0/24 [Huawei-GigabitEthernet0/0/24]port link-type trunk [Huawei-GigabitEthernet0/0/24]port trunk allow-pass vlan 10 20两台交换机的互联端口都要配置成Trunk并且allow-pass的VLAN列表要一致否则VLAN10的流量到SW2就可能被丢弃。这里有个很常见的坑华为Trunk端口默认只放行VLAN1如果配置了trunk但没有加allow-pass vlan 10 20那么VLAN10的帧在互联链路上根本传不过去PC3和PC1即使划分在同一个VLAN也无法互通。很多人排查半天问题就是allow-pass漏配了。还有一个知识点是PVID。Trunk端口的PVID默认是VLAN1如果接收的帧不带Tag就会被归入PVID对应的VLAN。一般建议Trunk端口的PVID保持默认VLAN1不要随意改动除非你明确知道自己在做什么。3.4 Hybrid端口华为端口模式的精髓Hybrid是华为私有端口模式也是华为交换机端口的默认模式。它比Access和Trunk更灵活既可以让某些VLAN的帧带Tag通过也可以让某些VLAN的帧去掉Tag发送。换句话说Hybrid能同时实现Access和Trunk的功能。举个实际场景一台交换机要同时连接普通PC需要Untagged帧和另一台交换机需要Tagged帧用Hybrid就能在一个端口上完成。[Huawei]interface GigabitEthernet0/0/1 [Huawei-GigabitEthernet0/0/1]port link-type hybrid [Huawei-GigabitEthernet0/0/1]port hybrid pvid vlan 10 [Huawei-GigabitEthernet0/0/1]port hybrid untagged vlan 10上面的配置把端口PVID设置为VLAN10并指定VLAN10的帧以Untagged方式发送连接PC时效果和Access端口一样。如果这个端口要连接另一台交换机需要传VLAN20和VLAN30配置就变成[Huawei-GigabitEthernet0/0/1]port hybrid tagged vlan 20 30原本默认所有端口都是Hybrid且Untagged VLAN1很多初学者不知道这一点配置时忘了修改link-type结果VLAN隔离效果完全不对。我的习惯是只要是接终端就明确改成access只要接交换机就明确改成trunk只有特殊需求才用Hybrid。这样配置清晰也方便后人维护。4. 端口安全与可靠性别只配通就不管了4.1 端口安全与MAC地址绑定生产网络中交换机的接入端口经常面临私接设备、MAC地址泛洪攻击等风险。端口安全功能可以通过限制端口学习的MAC地址数量、绑定特定MAC地址来应对。华为S5700的端口安全配置示例如下[Huawei]interface GigabitEthernet0/0/1 [Huawei-GigabitEthernet0/0/1]port-security enable [Huawei-GigabitEthernet0/0/1]port-security max-mac-num 5 [Huawei-GigabitEthernet0/0/1]port-security mac-address sticky [Huawei-GigabitEthernet0/0/1]port-security protect-action shutdownport-security enable开启端口安全port-security max-mac-num 5限制端口最大学习5个MAC地址超过即触发保护动作port-security mac-address sticky把学习到的MAC地址转换为“粘滞”MAC重启后不丢失相当于自动绑定port-security protect-action shutdown违规时关闭端口端口进入error-down状态我建议把保护动作配成shutdown这样一旦有异常设备接入端口直接断掉能第一时间暴露出来。restrict动作只是丢弃报文并告警攻击源可能还在持续尝试不利于发现。触发shutdown后端口会显示error-down恢复命令是[Huawei-GigabitEthernet0/0/1]undo shutdown注意光执行undo shutdown还不够必须先找到违规原因不然下次接入同样会再次触发保护。如果端口反复shutdown建议先用display port-security检查端口绑定的MAC数量再用display mac-address查看端口学习到的MAC列表。4.2 风暴抑制与流量控制二层网络最怕广播风暴一旦出现环路或异常流量广播帧会指数级增长耗尽带宽和CPU。端口下的风暴抑制功能可以给单播、广播、组播流量设置上限超过阈值直接丢弃。命令如下[Huawei]interface GigabitEthernet0/0/1 [Huawei-GigabitEthernet0/0/1]broadcast-suppression 20 [Huawei-GigabitEthernet0/0/1]multicast-suppression 20 [Huawei-GigabitEthernet0/0/1]unicast-suppression 20这里的数字单位是百分比表示该端口允许此类流量占端口带宽的最大比例。设置为20表示广播流量超过端口带宽的20%时超出的部分会被丢弃。模拟器里风暴抑制的效果不好直观验证但真机上很实用。特别是在接入层端口上把广播和组播抑制设到20%左右能有效降低异常流量对其他业务的影响。我不建议把这个数字设得太小比如1%因为正常的ARP广播、组播协议报文也可能被误伤导致业务异常。真机上线前最好结合现网流量峰值做个评估。4.3 Eth-Trunk链路聚合配置两台交换机之间如果只有一条链路带宽受限且存在单点故障。Eth-Trunk可以把多条物理链路捆成一条逻辑链路既增加带宽又实现链路冗余。笔者的建议是生产环境交换机互联至少两条物理链路做聚合这算是最基础的可靠性设计。在eNSP里用S5700做Eth-Trunk配置如下[Huawei]interface Eth-Trunk 1 [Huawei-Eth-Trunk1]mode lacp-static [Huawei-Eth-Trunk1]trunkport GigabitEthernet0/0/23 [Huawei-Eth-Trunk1]trunkport GigabitEthernet0/0/24 [Huawei-Eth-Trunk1]port link-type trunk [Huawei-Eth-Trunk1]port trunk allow-pass vlan 10 20先创建Eth-Trunk 1模式设为lacp-static然后把GE0/0/23和GE0/0/24加入。成员端口加入后VLAN相关配置直接在Eth-Trunk接口上做就行。这里要注意几点成员口的速率、双工模式必须一致否则链路可能无法聚合成员口不能单独配置port link-type要在Eth-Trunk接口上统一配置两端设备的聚合模式要一致一边手工模式、一边LACP模式是聚不起来的加入聚合组前成员口会清空原有配置所以建议先配置Eth-Trunk再加成员口配置完成后用display eth-trunk 1查看成员端口状态看到端口状态为Selected说明聚合成功。如果只有部分端口up优先检查成员口的速率双工模式是否一致。5. 远程管理配置让交换机可以被安全运维5.1 配置管理地址交换机配置完业务后总不能每次都搬台电脑到机柜前插Console线远程管理是日常运维的基本要求。二层交换机要能远程访问得先给管理VLAN配置IP地址这个IP就是VLANIF接口的地址。在S5700上配置管理地址[Huawei]interface Vlanif 10 [Huawei-Vlanif10]ip address 192.168.10.254 24配置时要注意VLANIF接口的IP必须和终端设备在同一网段且管理终端能路由到达这个地址。如果交换机上有多个VLAN建议单独划分一个管理VLAN不要让管理流量和业务流量混在一起更安全也更清晰。管理VLAN划分好之后还要确保接入管理VLAN的端口是up状态VLANIF接口才会up。如果VLANIF显示down多数原因是这个VLAN下没有处于up状态的物理端口。5.2 配置SSH远程登录老设备常用Telnet做远程管理但Telnet的密码和流量都是明文传输生产环境基本不推荐。现在更安全的做法是启用SSH华为设备上叫STelnet。配置SSH服务端需要三步生成密钥、开启服务、创建登录用户。[Huawei]rsa local-key-pair create [Huawei]stelnet server enable [Huawei]ssh user admin authentication-type password [Huawei]ssh authentication-type default password上面第一条命令是生成RSA密钥对执行时会交互询问直接回车使用默认位数即可。后两条是开启SSH服务并设置认证方式为密码认证。然后创建本地用户并授权[Huawei]aaa [Huawei-aaa]local-user admin password cipher Huawei123 [Huawei-aaa]local-user admin service-type ssh [Huawei-aaa]local-user admin privilege level 15 [Huawei-aaa]quitlocal-user admin privilege level 15表示给该用户最高权限能进入系统视图修改配置。日常运维账号不建议全部给15级权限建议分权管理普通查询账号给1级或2级就够了。5.3 验证远程管理配置完成后我在AR1上用SSH客户端验证一下AR1stelnet 192.168.10.254如果一切正常会提示输入用户名和密码输入admin和设置的密码就能登录SW1。这一步有几点要注意如果提示连接失败先用ping测试AR1到192.168.10.254的连通性如果ping通但SSH连不上检查stelnet server enable是否执行以及aaa下的用户是否配置了service-type sshSSH版本建议使用V2华为设备默认生成的RSA密钥通常支持V2生产环境中建议把超时时间调短防止运维人员离开终端后会话一直挂着[Huawei]user-interface vty 0 4 [Huawei-ui-vty0-4]authentication-mode aaa [Huawei-ui-vty0-4]protocol inbound ssh [Huawei-ui-vty0-4]idle-timeout 10这里把VTY用户界面认证方式改为AAA并限制只允许SSH接入空闲10分钟自动断开。这种细节配置平时没人提但真机上线后非常实用。6. 常见问题与排查技巧实录6.1 eNSP环境类问题eNSP使用中最大的困扰就是设备启动失败最常见的是启动AR或交换机时报“错误40”。这个问题我在多个版本上都遇到过原因通常不在配置而是环境VirtualBox版本不兼容建议安装eNSP官方配套版本eNSP安装路径包含中文字符会导致设备启动异常主机的防火墙或安全软件拦截了eNSP创建虚拟网卡的请求系统Winsock异常需要重置网络服务排查思路是先以管理员身份运行eNSP修改安装路径为全英文检查VirtualBox版本关闭Windows防火墙。如果都不行再考虑卸载重装。另外一个高频小问题是拓扑启动后设备接口一直down但连线明明没错。这种情况下先进入设备执行display interface brief如果端口下没有物理up可能是eNSP的虚拟网卡被其他程序占用了重启eNSP或者重启电脑往往能解决。6.2 端口与VLAN配置类问题端口配置类问题占了实验排障的一大半。我整理了最容易踩的几个坑第一个坑配置了VLAN但PC仍然ping不通。先看两边的Access端口是否都在同一个VLAN再看Trunk是否放行了对应VLAN。如果两端VLAN一致还是不通用display port vlan分别在两台交换机上查看重点核对Trunk端口的allow-pass列表。第二个坑Trunk链路建了但只有VLAN1能通。很多新手在配置Trunk时只敲了port link-type trunk没有敲port trunk allow-pass vlan而华为Trunk端口默认只放行VLAN1其他VLAN自然不通。第三个坑端口状态显示up但PC获取不到IP或通信时通时断。这种问题多半在端口协商上比如双工模式一端是full一端是half或者速率不一致导致大量冲突和重传。排查时看端口计数器里的CRC错误和冲突计数用display interface检查是否有大量错误包。第四个坑误操作shutdown后端口一直起不来。执行undo shutdown后先用display interface brief看端口状态如果还是down检查设备是否配置了端口安全并触发了error-down此时需要先处理违规问题再undo shutdown。6.3 远程管理与链路聚合问题速查表问题现象可能原因排查命令SSH连接被拒绝SSH服务未开启或协议类型错误display ssh server statusSSH登录后没权限用户权限等级太低display local-user管理IP ping不通VLANIF接口没有up或网段错误display ip interface briefEth-Trunk链路未聚合成员口配置不一致display eth-trunk 1端口反复error-down端口安全触发违规display port-security链路聚合的问题我在模拟器里踩过一次比较典型的坑两台交换机Eth-Trunk配置看起来完全一样但成员口始终是Unselected后来发现是两台交换机的物理端口速率不一致——SW1的GE0/0/23设置了speed 100SW2那边是auto结果协商后实际速率不同聚合失败。把速率都恢复成auto后聚合立刻成功。写在后面的几点体会这一套端口配置与管理实验做完最大的收获是理解了“端口”在交换机体系里的基础地位。VLAN隔离、链路聚合、端口安全、远程管理最终都要落到端口配置上命令本身不难难的是理解每条命令背后的设计逻辑。我自己实际操作中养成了几个习惯分享出来供参考配置前先用display interface brief扫一遍端口状态配置中每敲完一段命令就用display this确认配置后一定用display port vlan和display vlan核对VLAN关系。华为设备的Hybrid默认模式是个容易踩的坑所以我的原则是接终端显式改成access接交换机显式改成trunk避免依赖默认值。如果你在练习过程中也遇到奇怪的问题不妨把端口状态、VLAN列表、Trunk放行、链路聚合这四类信息来回对比90%以上的二层故障都能从中找到答案。
返回列表