1. 当前位置: 网站首页 >  路由器百科 >  交换机是怎么工作的?我爸往路由器上多插了一根线,当晚全屋网卡成PPT

交换机是怎么工作的?我爸往路由器上多插了一根线,当晚全屋网卡成PPT

交换机工作原理与网络环路:MAC地址表转发、泛洪、广播风暴示意图

上个月我出差三天,我爸来家里帮忙喂猫。第二晚上十点,我在酒店打开手机想看一眼家里的监控,App转圈;进米家,几十台设备齐刷刷灰成一片;连NAS远程也只剩几十KB每秒,传张截图都费劲。家里没人动过任何设置——直到我爸在电话里来了句心虚的:"我看路由器上空着俩口,寻思多插根线到那个黑盒子,设备多了也能分流。"

就是那根线,让全屋网络瘫了大半个晚上。这篇把交换机到底怎么干活、为什么多插一根线能瘫痪全网、怎么十秒定位这种故障,一次讲清。

交换机每天在干的活:抄小本本

弱电箱里那台8口千兆交换机,我当初买它的时候只当是个网口扩展器,这次查故障才把它肚子里的逻辑弄明白。它核心就靠一张表,行话叫MAC地址表,你可以理解成前台的小本本:哪个设备(MAC地址)在哪个口,记一笔。

抄本本是自动的,不用任何配置。台式机从3号口发出任何一个包,交换机一看源地址,哦,这个MAC挂在3号口,记下。往后所有发往这个MAC的数据,直接从3号口出去,别的口一点不惊动。这就是为什么我家NAS和台式机都插在交换机上,互相拷文件能稳在110MB/s跑满千兆——俩设备之间的流量在交换机内部就消化完了,压根不路过路由器。

查表这步是硬件完成的,纳秒级,几十块钱的家用货和机房里的大家伙在这点上没有本质区别。区别在别的功能,后面会说。

它不认识的包裹怎么办:每个口都喊一遍

问题来了:要是目的MAC不在小本本上呢?比如刚开机的设备还没发过包,交换机压根不知道它挂在哪。

交换机的处理特别朴素:往除了进口之外的每一个口,都发一份。这个动作叫泛洪。想也合理——不知道收件人在哪个房间,那就每间屋都送一份,总有一份能送到。

还有一类包是天生就要泛洪的:广播帧,目的地址是全F的那种,明确要求全网设备都看一眼。家里这种包比你想象的多:ARP喊话是广播(谁是192.168.31.10?把你的MAC告诉我),DHCP找发号器也是广播(场子里有DHCP服务器吗,给我个IP)。设备越多、ARP刷新越勤,广播越密。平时这不算事,一个广播帧从其余七个口出去就完事了,各设备看完不该看的直接丢弃,开销小到可以忽略。

两根线为什么是要命的事:广播进了旋转门

现在说我爸那根线干了什么。原本的接法是路由器LAN1一根线到交换机,规规矩矩的树形结构。我爸加了一根:路由器LAN2也接到交换机上。路由器那几个LAN口在机器内部是直通的(本质上就是个小交换芯片),所以这两根线在电路层面等于把一个圆圈搭了出来——数据从交换机1号口出去,穿过路由器,从2号口又回来了。

这个圈平时是安静的。可一个广播帧一旦进圈,事情就疯了:交换机从1号口收到它,泛洪,从2号口发出去;路由器把它桥到LAN1,又回到交换机1号口;交换机再泛洪一份。每转一圈,还同时往其余几个口各复制一份。复制是指数级的,一小会儿就能把每个口的带宽塞得死死的。这才明白"广播风暴"四个字不是夸张,是字面意思。

更糟的是小本本也乱了套。同一个MAC,一会儿从1号口学到,一会儿从2号口学到,表项来回翻,交换机自己都懵。落到设备上就是:正常数据挤不过去、ARP解析超时、DHCP续租失败——所以监控、米家、电脑全屋一起遭殃,一个都不偏心。

家用交换机为什么见死不救:它没有安全阀

这毛病这么常见,厂家就不能让机器自己发现吗?能,但那是管理型交换机才有的功能。环路检测、生成树协议这类机制,原理是交换机之间互相打招呼,发现拓扑里有圈,就主动堵掉其中一条路,留另一条干活,机房里全带这套。但我家那种五十几块的非网管傻瓜交换机,芯片里压根没这逻辑——它只会老老实实学习、转发、泛洪,成不成环不归它管。

那要不要换管理型的?家用真犯不着。只有像我之前给监控和NAS砌墙那种要做VLAN隔离的需求,才值得上管理型。单纯防环路,把物理接法管住就够了,一分钱不用花。

家里最容易成环的三种接法,我对着这次故障列了一遍:

接法为什么会成环
路由器两个LAN口都接同一台交换机路由器LAN口内部直通,两根线等于一个圈(我家这次)
两台交换机之间插了两根级连线我家弱电箱8口千兆和4口POE之间只留一根,多插一根就成环
旧路由器改AP时WAN口LAN口同时接主路由改AP只该插LAN口,这是WAN口和LAN口分不清的高发变种

怎么判断自家是不是中了招:三个症状对号

环路这故障有个铁律:全网一起倒霉。要是只有一台设备卡,八成不关交换机的事。我把家里常见的三种"网不对劲"按症状分了类,对号入座:

症状大概率原因验证办法
全屋一起卡,交换机所有灯同步狂闪环路引发的广播风暴拔掉一根上联线,十来秒恢复就是它
单个设备掉线,其他都正常网口接触不良或网线问题换个口插,或换根线试
网速永远卡在93兆上下百兆协商(四芯线或老交换机)看协商速率,查网线八芯

那个"灯同步狂闪"值得单独说一句。正常的交换机灯是各闪各的,谁传数据谁闪;环路时所有口被同一批广播帧塞满,灯就跟着一起齐刷刷地闪,我在视频里看我家弱电箱那个画面,跟心跳监测似的。这是肉眼判断环路最省事的信号。

善后:十秒定位,三道保险

那晚我在酒店视频指导我爸,就一招:盯着交换机的灯,把路由器到交换机两根线里随手拔掉一根。他拔完大概十来秒,米家App的图标一个个绿回来,监控画面也刷出来了。"拔一根立刻活"是环路最铁的证据,别的故障没这么立竿见影。

事后我给家里上了三道保险。第一,把弱电箱里整理时贴的标签全查了一遍,上联线单独贴了张写着"别动"的红标;第二,跟我爸视频把这事掰开讲了一遍,中心思想就一句话:路由器到交换机,永远只插一根,多插不加分,是灾难;第三,交换机空着的口我拿防尘塞堵了俩,少留一个能随手插线的地方。

收尾给个总顺序:全屋突然一起卡,先看交换机灯是不是同步狂闪;是,就挨个拔上联线,拔到哪根恢复,哪根就是元凶;顺手问问家里谁最近动过弱电箱。只有一台设备卡,别赖交换机,先换口换线。至于恒定93兆那个老毛病,是网线芯数的事,跟这篇说的环路两码事,查清了再动手。

展开全文


版权说明 手机扫码阅读
版权所有:《数巢笔记》 => 《交换机是怎么工作的?我爸往路由器上多插了一根线,当晚全屋网卡成PPT》
本文地址:https://www.shunot.com/lybk/1052.html
除非注明,文章均为 《SHUNOT》 原创,欢迎转载!转载请注明本文地址,谢谢。

发表评论

联系我们

在线咨询:点击这里给我发消息

微信号:master_135

工作日:9:00-23:00,节假日休息

扫码关注