广东省建设工程交易中心网站,上海网站建设公司指南,html静态网站开发实验报告,如何给自己的公司建网站1. 链路聚合#xff1a;不只是“把线捆起来” 很多刚接触企业网络的朋友#xff0c;一听到“链路聚合”#xff0c;第一反应可能就是“哦#xff0c;就是把几根网线绑在一起用#xff0c;让网速变快”。这个理解对#xff0c;但也不全对。增加带宽确实是链路聚合最直观的…1. 链路聚合不只是“把线捆起来”很多刚接触企业网络的朋友一听到“链路聚合”第一反应可能就是“哦就是把几根网线绑在一起用让网速变快”。这个理解对但也不全对。增加带宽确实是链路聚合最直观的好处但它的核心价值远不止于此。我干了这么多年网络见过太多因为一根上行链路故障导致整个部门甚至整个楼层断网的糟心事儿。链路聚合解决的恰恰就是这种“单点故障”的致命问题。你可以把链路聚合想象成一座多车道的大桥。如果只有一条车道单条物理链路一旦发生事故链路故障所有车辆数据流量就全堵死了。而链路聚合就是同时开通了多条车道车辆可以分散行驶。更妙的是当其中一条车道临时封闭维修时车辆可以自动、无缝地分流到其他车道上整个交通网络业务几乎不受影响。这就是我们常说的“负载分担”和“冗余备份”。在实际的企业网里无论是接入层交换机连接到汇聚层还是汇聚层连接到核心层这种既要求高带宽又要求高可靠性的场景链路聚合几乎是标准配置。思科交换机实现链路聚合的技术叫做EtherChannel。它不是一个物理设备而是一个逻辑概念。你需要把多个物理端口比如两个万兆光口捆绑成一个逻辑的“超级端口”这个逻辑端口就叫Port-Channel。之后所有配置比如划分VLAN、设置Trunk都是对这个Port-Channel操作配置会自动同步到所有成员端口上管理起来非常方便。这就像你管理一个团队你只需要给团队下达指令配置Port-Channel团队里的每个成员物理端口会自动执行而不需要你挨个去吩咐。2. 动手之前协议与模式的选择在真正敲命令之前我们得先搞清楚用哪种“沟通语言”来建立聚合链路。思科给了我们几种选择选对了事半功倍选错了可能根本聚合不起来。2.1 协议之争PAgP 与 LACP这里主要有两位“选手”PAgP和LACP。PAgP是思科的“自家方言”全称是端口聚合协议。它是思科设备的私有协议也就是说只有在两端都是思科设备的情况下才能用PAgP来协商建立聚合链路。它的优点是和自家设备配合默契但缺点也很明显——不开放。LACP则是“国际普通话”基于IEEE 802.3ad标准。几乎所有主流厂商的设备都支持它。如果你网络里有不同品牌的交换机需要互连比如思科核心交换机连接华为的服务器交换机LACP就是唯一的选择。它通过发送一种叫LACPDU的协议报文来和对端“打招呼”协商聚合参数。所以简单记纯思科环境PAgP和LACP都可以有异构设备必须用LACP。2.2 五种模式详解别只会用on确定了协议还要为每个端口选择一种“工作态度”也就是模式。总共有五种我刚开始也老记混后来用“主动出击”和“等待回应”这个思路就清晰了。on 模式这不是协商这是“包办婚姻”。配置为on模式的端口不会发送任何协商协议报文它直接认为对端也已经强制聚合好了。要求对端也必须配置为on模式否则一定会出现丢包甚至环路。它的优点是配置简单粗暴兼容性最强因为不依赖协议但缺点是没有协商过程一端配置错误不易被发现。我一般只在老旧设备或不支持动态协议的设备上使用。active 模式 (LACP)这是“社交达人”模式。端口会主动发送LACPDU报文积极寻求与对端建立聚合。只要对端不是off状态就有可能协商成功。这是最常用、最推荐的LACP模式。passive 模式 (LACP)这是“内向型”模式。端口只监听对端发来的LACPDU自己不会主动发送。只有它收到对端的LACP报文后才会开始回应并建立聚合。所以两端不能同时配成passive否则大家都不说话永远也聚合不起来。desirable 模式 (PAgP)作用和active类似不过是针对PAgP协议的“主动出击者”。auto 模式 (PAgP)作用和passive类似是PAgP协议的“等待者”。同样两端不能都是auto。怎么搭配最稳妥我总结了一个万能口诀对于LACP一端active另一端active或passive都行对于PAgP一端desirable另一端desirable或auto都行。最省心的就是两端都配成active(LACP) 或desirable(PAgP)保证能协商起来。3. 从零开始一步步配置链路聚合光说不练假把式我们用一个最典型的企业场景来实操两台思科Catalyst 3560交换机作为汇聚层设备需要通过两条千兆链路互连要求实现链路聚合承载VLAN 10和VLAN 20的业务。假设交换机命名为SW1和SW2互连端口为GigabitEthernet1/0/23和GigabitEthernet1/0/24。3.1 第一步创建逻辑聚合接口我们首先在SW1上操作。聚合接口的ID可以自己定范围通常是1-48不同型号有差异只要两端本地唯一就行不需要和对端一致。SW1 enable SW1# configure terminal SW1(config)# interface port-channel 10执行interface port-channel 10这条命令后我们就创建了一个ID为10的逻辑聚合接口并且命令行提示符进入了(config-if)#模式这意味着我们现在正在对这个逻辑端口进行配置。你可以给它加个描述方便日后维护SW1(config-if)# description TO-SW2_AGG3.2 第二步将物理端口绑定到聚合组现在我们把两个物理端口加入到这个逻辑组里。这里有个关键点你需要先进入物理端口配置模式再将其加入channel-group。SW1(config-if)# exit SW1(config)# interface gigabitethernet 1/0/23 SW1(config-if)# channel-group 10 mode active SW1(config-if)# no shutdown SW1(config-if)# exit SW1(config)# interface gigabitethernet 1/0/24 SW1(config-if)# channel-group 10 mode active SW1(config-if)# no shutdown SW1(config-if)# exit注意我在这里使用了mode active这是基于LACP协议的主动模式。同时别忘了no shutdown启用物理端口。完成这一步后一个有趣的事情发生了之前创建的interface port-channel 10会自动变成up状态前提是对端也配置正确并且所有在物理端口上的二层配置除了IP地址等三层配置都应该转移到Port-Channel接口下进行。3.3 第三步配置聚合接口的二层属性因为我们的聚合链路要传输多个VLAN的流量所以需要把Port-Channel接口配置为Trunk模式。SW1(config)# interface port-channel 10 SW1(config-if)# switchport mode trunk SW1(config-if)# switchport trunk allowed vlan 10,20 SW1(config-if)# no shutdown这里switchport trunk allowed vlan 10,20指定了只允许VLAN 10和20的流量通过这是一种安全和管理上的最佳实践而不是使用all允许所有VLAN。配置no shutdown确保逻辑接口启用。3.4 第四步在对端交换机SW2上进行镜像配置SW2的配置几乎是对称的。聚合组ID可以一样也可以不一样比如我们用20。SW2 enable SW2# configure terminal SW2(config)# interface port-channel 20 SW2(config-if)# description TO-SW1_AGG SW2(config-if)# exit SW2(config)# interface gigabitethernet 1/0/23 SW2(config-if)# channel-group 20 mode active SW2(config-if)# no shutdown SW2(config-if)# exit SW2(config)# interface gigabitethernet 1/0/24 SW2(config-if)# channel-group 20 mode active SW2(config-if)# no shutdown SW2(config-if)# exit SW2(config)# interface port-channel 20 SW2(config-if)# switchport mode trunk SW2(config-if)# switchport trunk allowed vlan 10,20 SW2(config-if)# no shutdown配置完成后稍等几秒钟让LACP协议完成协商。4. 验收与排错你的聚合成功了吗配置完可不能拍拍屁股就走必须验证。思科提供了一系列强大的查看命令。4.1 查看聚合状态概要首先用show etherchannel summary命令这是我最喜欢用的信息一目了然。SW1# show etherchannel summary Flags: D - down P - bundled in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 U - in use f - failed to allocate aggregator u - unsuitable for bundling w - waiting to be aggregated d - default port Number of channel-groups in use: 1 Number of aggregators: 1 Group Port-channel Protocol Ports ----------------------------------------------------------------------------- 10 Po10(SU) LACP Gi1/0/23(P) Gi1/0/24(P)我们来解读一下这个黄金输出Group 10: 聚合组ID是10。Po10(SU): 这是Port-Channel 10的状态。S代表是二层聚合U代表正在使用中up。如果这里显示SD就说明逻辑接口是down的需要检查no shutdown和物理链路。Protocol LACP: 使用的协议是LACP说明动态协商成功了。Gi1/0/23(P): 物理端口G1/0/23的状态是(P)表示它已成功捆绑bundled到Port-Channel中并参与数据转发。如果显示(I)说明它是独立状态没有成功聚合这是最常见的故障点。4.2 深入查看详细信息如果概要信息看到异常比如端口状态不是(P)就需要用show etherchannel detail或show interfaces trunk来深挖。SW1# show etherchannel 10 detail Group state L2 Ports: 2 Maxports 16 Port-channels: 1 Max Port-channels 16 Protocol: LACP ... Port: Gi1/0/23 Channel group: 10 Mode: Active Port-channel: Po10 GC: 0x00010001 Pseudo port-channel: Po10 Port state: Up aggregated in-standby ...详细信息会列出每个成员端口的详细参数包括其对端的设备ID、端口ID、协商状态等。如果协商失败这里会给出线索比如两端模式不匹配、速率/双工不一致、所属VLAN不同等。4.3 验证Trunk和连通性最后确认聚合链路是否承载了我们指定的VLAN。SW1# show interfaces port-channel 10 trunk这个命令能清晰显示Port-Channel 10的Trunk状态、原生VLAN和允许通过的VLAN列表。确认无误后就可以在连接SW1和SW2的终端上进行跨VLAN的ping测试验证业务连通性了。5. 进阶调优让流量分配更智能链路聚合建好了但流量是怎么在两条物理链路上分配的呢默认情况下思科交换机使用基于源MAC地址的负载均衡。这意味着同一台服务器同一个源MAC发出的所有流量永远只会走其中一条物理链路。如果网络里有一台高性能服务器在向多台客户端发送大量数据比如视频流服务器那么所有流量都可能压在一根链路上另一根链路闲置这就没有达到最佳的负载效果。5.1 理解负载均衡算法思科允许我们更改负载均衡的哈希算法决定“如何分流”。常见的选项有src-mac基于源MAC地址默认。dst-mac基于目的MAC地址。如果流量是发往同一台设备如网关效果也不好。src-ip基于源IP地址。dst-ip基于目的IP地址。src-dst-ip基于源和目的IP地址的组合最常用于三层网络。src-dst-mac基于源和目的MAC地址的组合。5.2 如何选择和配置选择哪种模式取决于你网络中流量的主要特征。如果你的聚合链路主要承载二层流量且客户端访问的目标比较分散比如大量终端访问不同的服务器那么src-dst-mac是个不错的选择它能确保同一对通信主机之间的流量走固定路径避免乱序同时不同的主机对会分散到不同链路。如果你的聚合链路承载的是三层路由后的流量比如连接核心路由器那么src-dst-ip是更优解。因为IP地址的组合更加丰富能实现更细粒度、更均衡的流量分布。配置命令在全局模式下进行SW1(config)# port-channel load-balance src-dst-ip配置是立即生效的并且只需要在一台交换机上配置即可因为它只影响本设备出口流量的分发决策。配置后可以用show etherchannel load-balance来验证。5.3 一个实际场景的思考假设我们有一个数据中心服务器通过聚合链路连接ToR架顶交换机。服务器IP段是10.1.1.0/24客户端来自不同网段。如果使用默认的src-mac由于服务器MAC固定所有出站流量走一条路入站流量可能走另一条路取决于客户端MAC这不算最优。改为src-dst-ip后服务器10.1.1.10访问客户端A的流量与服务器10.1.1.11访问客户端B的流量就可能被哈希到不同的物理链路上真正实现了带宽翻倍的效益。6. 故障模拟与高可用性验证配置和优化都做完了我们怎么知道它真的可靠这就需要主动进行故障模拟测试。我自己的习惯是在项目上线前一定会做下面这个“破坏性”测试。在业务低峰期找一台连接在聚合链路一端的设备向另一端持续ping一个大包比如ping 192.168.1.1 -l 10000 -t制造稳定的流量。然后在交换机上手动shutdown聚合组中的一条物理链路比如interface gigabitethernet 1/0/23同时紧紧盯着ping的返回结果。理想情况你会看到可能有一两个ping包的超时显示“Request timed out”或者延时突然升高从1ms跳到几十甚至几百毫秒但随后立即恢复。这证明链路切换成功了业务中断时间在毫秒级对于大多数应用来说是无感知的。观察交换机状态立刻执行show etherchannel summary你会看到被shutdown的端口状态从(P)变成了(D)或(I)而剩下的那个端口依然保持(P)。Port-Channel接口的状态应该始终是(SU)不会down掉。恢复测试接着再把刚才shutdown的端口no shutdown启用。观察ping流和交换机状态端口应该能重新协商加入聚合组状态恢复为(P)流量也会重新分布到两条链路上。这个测试虽然简单但能极大地增强你对这套聚合链路可靠性的信心。它验证了“冗余备份”不是纸上谈兵而是真能在关键时刻顶上去。在实际运维中遇到单条链路光模块故障、光纤被意外碰断等情况你心里就有底了知道网络不会瘫业务不会停。