搞网络这些年,我越来越觉得“以太网交换”这四个字是所有网络人绕不过去的地基。不管是做华为交换机运维、嵌入式网口联调,还是车载以太网、W5500 这类底层硬件方案,大家最后拼的其实是同一套基础。很多人命令背得滚瓜烂熟,一遇到 MAC 表学不到、VLAN 划不通、环路了广播风暴,立刻抓瞎,根子都在于没把二层转发这件事想透。这篇我打算把以太网交换基础一次理清楚:以太网帧怎么封装,交换机怎么转发,VLAN 怎么隔离,再带你在 eNSP 里做一遍最简单也最典型的交换实验,最后聊聊 PHY 寄存器、硬件联调和那些日常运维里高频踩坑的问题。适合刚入行的网络工程师、转行做嵌入式联网设备的朋友,也适合准备考试的同学拿来当体系化复习资料。
1. 以太网交换到底在“交换”什么
1.1 为什么叫以太网,它到底解决什么问题
很多人第一次接触“以太网”这个词,都会疑惑:这名字怎么这么神神叨叨的?其实“以太”来自 19 世纪物理学里的假想介质,当时人们认为空间里充满一种叫 Ether 的物质,光靠它传播。1973 年 Bob Metcalfe 在 Xerox PARC 设计出最早的以太网原型时,借用了这个词,意思是“无处不在的传输介质”。后来 IEEE 802.3 把它标准化,成了今天局域网里最常见的链路层技术。
以太网解决的核心问题,说白了就是:一堆设备怎么共享同一条物理介质,还能可靠地把数据送到对端。早期以太网用的是 CSMA/CD 这种“先听再说,撞了就退避”的半双工机制,所有设备挤在同一条总线上,谁抢到谁发。今天你在数据中心、企业机房里看到的全是全双工交换式以太网,一台交换机把每个终端接到独立端口上,端口之间点对点通信,不再互相抢总线。这也是为什么“交换”这件事会变得如此重要:网络规模一大,光靠一根总线带不动那么多设备,必须有一台设备在旁边专职帮大家转发数据,这台设备就是交换机。
如果你去翻老教材,还会看到很多人把“交换”这个词搞得特别神秘。其实它没那么玄,所谓以太网交换,就是交换机根据以太网帧里的 MAC 地址,决定这个帧从哪个端口出去的过程。它和路由器的 IP 转发不是一回事,但也绝不是互相独立的两套技能,后面我会专门拆开讲。
1.2 二层交换和三层路由的本质区别
“交换”在行业里经常被滥用,有些厂商把三层路由也叫“三层交换”,搞得新手很懵。我建议你先把最核心的区分记死:二层交换看 MAC,三层路由看 IP。
二层交换机收到一个以太网帧,只关心两件事:源 MAC 是从哪个端口进来的、目的 MAC 应该从哪个端口出去。整个转发过程不修改以太网帧里的源 MAC 和目的 MAC,收到什么样子,发出去还是什么样子,只是重算一下帧尾的 FCS 校验。因为动作简单,所以交换机的转发完全可以在硬件芯片里完成,延迟微秒级,吞吐量可以做到满端口线速。
路由器或者三层交换机做路由转发时,动作就复杂多了。它根据 IP 目的地址查路由表,如果匹配到了下一跳,会把帧里的目的 MAC 改成下一跳设备的 MAC,源 MAC 改成自己出接口的 MAC,然后 TTL 减 1,再重新计算校验。这一步“MAC 改写”是二层和三层的分水岭:二层转发不改写 MAC,三层每跨一个网段都要改写 MAC。
我习惯用一个生活化的类比:二层交换像小区物业,业主 A 有个快递要送给同一个小区的业主 B,物业只需知道 B 住哪栋楼,骑着电动车直接送过去,快递面单不用改;三层路由像快递分拨中心,包裹从上海发到北京,中间要过好几个中转站,每到一个站都要换一辆车、换一个司机,交接单上的承运信息不断变化,但收件人的地址始终没变。把这个想明白,你后面学 VLAN 间路由、学策略路由,都会轻松很多。
1.3 交换单元架构:从共享总线到 Crossbar
热词里有人搜“交换单元 共享总线型”,正好可以聊聊交换机内部是怎么把数据从一个端口搬到另一个端口的。早期的交换机确实大量采用共享总线架构,所有端口挂在一套公共数据总线上,同一时刻只允许一对端口通信。好处是结构简单、成本低,坏处是端口一多,总线带宽马上成为瓶颈,8 口 16 口的小盒子用用还行,上不了大场面。
后来的共享内存型架构,把收到的报文统一写进一块大内存,交换引擎查完 MAC 表后,再从内存里把报文读出来从目标端口发走。这种架构灵活,但端口速率和数量上去之后,内存的读写带宽会卡脖子。再往后,中高端交换机的主流变成了 Crossbar 架构,也叫纵横交换矩阵。每个输入端口和每个输出端口之间都有一条独立的物理通路,交换芯片像一个巨大的矩阵开关,可以把多个端口对同时接通,实现真正意义上的无阻塞交换。
选购交换机时,大家常看到的“背板带宽”和“包转发率”就是衡量这套交换能力的两个硬指标。背板带宽的计算很简单:端口数 × 端口速率 × 2,因为要算上收发双向。比如一台 24 口千兆交换机,理论最低背板带宽是 24 × 1G × 2 = 48Gbps。包转发率则是看每秒能处理多少个最小帧,因为最小的以太网帧只有 64 字节,加上前导码和帧间隙一共是 84 字节,所以千兆口每秒最多能转 1G ÷ (84×8) ≈ 1.488Mpps。一台 24 口千兆交换机的满配置线速转发能力,就是 24 × 1.488 ≈ 35.7Mpps。买设备的时候,这两个数低于理论值,就说明内部交换架构有阻塞,大规模流量下会掉包。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 以太网帧与报文格式拆解
2.1 以太网帧格式:DIX 与 802.3 的区别
有人搜“以太网帧格式”“以太网报文格式”,说明大家想知道线上跑的那一串 01 到底长什么样。我在实际抓包和写抓包工具的时候,最常面对的是 DIX Ethernet II 格式,也就是今天几乎所有以太网报文都在用的格式。
一个完整的以太网帧从物理层开始,线上先传 8 字节前导码,其中前 7 字节是同步用的 10101010,第 8 字节是帧起始定界符 10101011。不过抓包工具默认会把前导码剥掉,所以你看到的数据通常从目的 MAC 开始。真正的帧结构是:目的 MAC 6 字节、源 MAC 6 字节、类型/长度 2 字节、负载数据 46 到 1500 字节、FCS 校验 4 字节。这里要重点记一下“类型/长度”这个字段,它是区分 DIX 和 IEEE 802.3 的关键。如果这个字段的值大于等于 0x0600,它表示上层协议类型,比如 0x0800 是 IPv4、0x0806 是 ARP、0x86DD 是 IPv6,这是 DIX 格式;如果值小于 0x0600,它表示负载长度,这是 IEEE 802.3 的 LLC/SNAP 格式。实际网络里绝大多数走的就是 DIX,所以你在 Wireshark 里看到 Type 字段写 0x0800,正常。
还有一个经典问题:为什么基本以太网帧最小是 64 字节?这是 CSMA/CD 时代留下的规矩。当时在 10Mbps 半双工的同轴电缆上,发送方必须在发完整个帧之前能检测到碰撞,如果帧太短,发完都没发现冲突,数据就白发了。经过计算,最短帧长定为 64 字节。现在全双工链路虽然没有冲突检测这回事了,但这个帧长约束保留了下来,所以负载不足 46 字节时,后面要补“填充”字段。另外,标准帧最大是 1518 字节,因为 MTU 是 1500,加上 MAC 头和 FCS 正好 1518。数据中心为了提升大块数据传输效率,会开 Jumbo Frame,把 MTU 调到 9000,帧长也跟着变大,这属于进阶玩法了。
2.2 报文里的 DA 和 SA 到底是什么意思
“以太网帧中 DA 是啥意思”这个问题,很多刚接触抓包的人都会问。DA 就是 Destination Address,目的 MAC 地址;SA 是 Source Address,源 MAC 地址。交换机收到帧后,看 SA 是为了学习,也就是把“这个 MAC 在哪个端口”记进 MAC 表;看 DA 是为了决策,也就是查 MAC 表决定从哪个端口送出去。
判断一个目的 MAC 是单播、组播还是广播,只需要看 DA 第一个字节的最低位。最低位是 0,代表单播,只有特定一台设备接收;最低位是 1,代表组播,同一组里的设备接收;如果 6 个字节全是 FF,也就是 FF-FF-FF-FF-FF-FF,那是广播,同广播域里所有设备都要处理。这个最低位也叫 I/G 位,Individual/Group。抓包的时候看到这些地址千万别慌,例如 STP 专用的组播地址是 01-80-C2-00-00-00,LLDP 的组播地址是 01-80-C2-00-00-0E,老思科的 CDP 用的组播是 01-00-0C-CC-CC-CC。交换机对这些特殊组播一般不会无脑泛洪,而是交给 CPU 处理,因为它们面向的是协议报文。
这里有个新手容易踩的认知误差:MAC 地址的从左到右书写顺序,和实际线上发送的 bit 顺序并不完全一致。不过在排查和配置层面,你只需要记住前面这层判断逻辑就够了,真正写 FPGA 或 MAC 核逻辑的时候,才需要抠字节序和 bit 序的细节。
2.3 802.1Q:VLAN 标签是怎么塞进帧里的
标准以太网帧里没有 VLAN 概念,所以后来 IEEE 802.1Q 协议在源 MAC 和 Type 字段之间塞进了 4 字节。这 4 字节最前面是 TPID,固定值 0x8100,标识这是一个带 VLAN Tag 的帧;后面是 TCI,里面包含 3 bit 的 PCP 优先级、1 bit 的 DEI 丢包优先级标识,以及 12 bit 的 VID。12 bit 能表示 0 到 4095,其中 0 和 4095 保留,所以实际可用的 VLAN ID 是 1 到 4094。
插入了 4 字节 Tag 之后,帧的最大长度从 1518 变成 1522。华为、思科这些厂商的交换机在链路允许 MTU 足够大的情况下,都能处理带 Tag 的帧。为什么 VLAN 能这么普及?核心是两个词:隔离广播域、灵活组网。一台没有 VLAN 的交换机,里面所有端口属于同一个广播域,任何一台设备发广播,全交换机都能收到,设备一多就是灾难;划了 VLAN 之后,一个 VLAN 就是一个广播域,广播只在 VLAN 内传播,同时也把不同部门的互访权限隔开了。
VLAN 的三种端口类型——Access、Trunk、Hybrid——我放到下一章结合转发原理一起讲,因为不理解交换机的转发动作,光背端口模式其实没意义。
3. 交换机转发原理:学习、泛洪、转发、过滤
3.1 交换机的四个核心动作
衡量你有没有真正理解以太网交换,就看你对这四个动作是否门儿清:学习、泛洪、转发、过滤,外加一个背后的老化机制。
交换机收到一个帧,先看源 MAC。这张帧是从哪个端口进来的,交换机就把源 MAC 和这个端口、以及 VLAN 的对应关系记进 MAC 地址表。这就是“学习”。然后看目的 MAC,查 MAC 表。如果表里有这个 MAC 对应的端口,就从那个端口把帧“转发”出去。如果没有查到,也就是目标 MAC 未知,交换机不知道发给谁,只能把帧向同一个 VLAN 内除接收端口以外的所有端口都发一遍,这就是“泛洪”。如果你在数据包的通信里发现流量总是跑到旁边没关系的设备上,多半就是泛洪。
“过滤”这个词很多人忽略,其实它每天都在发生。交换机如果发现帧的目的 MAC 对应的出口端口恰好就是接收端口,那说明帧是从正确的端口进来的,没必要再发回去,直接丢弃。另外,目的地 MAC 对应端口因为某些原因被阻塞时,同样需要过滤。
MAC 表并不是永久有效的,默认老化时间一般在 300 秒左右。如果一段时间内没再收到某个源 MAC 的帧,交换机就把这条表项删掉。老化的好处很明显:设备从 A 端口迁到 B 端口后,交换机不用一直把发往它的帧往错误端口送。这也是“为什么换了一台机器后一开始几分钟内网络正常,过一会突然不通”的常见坑点之一,根源往往就是 MAC 表还在朝旧端口转发,等老化一刷新就恢复正常。
3.2 从一次 Ping 看 MAC 表如何建立
把 MAC 表的建立过程走一遍,比背十遍定义都管用。假设有两台 PC,A 的 IP 是 192.168.1.1,B 的 IP 是 192.168.1.2,它们接到同一台交换机上,此时 MAC 表是空的。
A 发起 ping B,第一步其实是 ARP。因为 A 只知道 B 的 IP,不知道 B 的 MAC,所以在数据链路层封装帧时,目的 MAC 只能填广播地址 FF-FF-FF-FF-FF-FF,这个帧的内容就是 ARP Request:“谁是 192.168.1.2,请告诉 192.168.1.1”。
交换机收到这个广播帧后,先看源 MAC,把 A 的 MAC 和对应端口学习进 MAC 表。然后再看目的 MAC,发现是全 F 的广播地址,于是向除接收端口以外的所有端口泛洪。B 收到 ARP Request,发现问的是自己,就回复 ARP Reply,帧里的源 MAC 是 B 的 MAC,目的 MAC 是 A 的 MAC,单播发出。
交换机收到 B 的 ARP Reply,又学习到了 B 的 MAC 在哪个端口。这时候它查目的 MAC,发现 A 的 MAC 已经有记录,于是精确地从 A 所在的端口转发出去,不再泛洪。A 收到 Reply,终于拿到了 B 的 MAC,接下来真正的 ICMP Echo Request 和 Echo Reply 就可以以单播方式交互了。
整个过程值得你亲手抓一次包看一遍。后来做华为交换机运维,碰到“第一次 ping 很慢,后面就快了”的现象,本质就是 ARP 表 和 MAC 表在首包时才建立,后续流量走的都是精确转发。反过来,如果“时通时不通”,你第一反应应该是看 MAC 表是否在学习、是否在飘移。
3.3 VLAN 基础与端口类型:Access、Trunk、Hybrid
VLAN 的转发规则在配置层面最磨人。我先讲 Access 口:它通常连接终端设备,比如 PC 和打印机。Access 口发出的帧不带 Tag,收到的无 Tag 帧会打上自己端口的默认 VLAN,也就是 PVID。所以一台 PC 只要放到 Access 口,并指定 default vlan,它就属于这个 VLAN 了。配置很简单:
text复制system-view
vlan 10
quit
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
Trunk 口通常用来连接交换机之间或交换机与路由器,目的是让多个 VLAN 的带 Tag 帧在同一条链路上传递。Trunk 口默认放行所有 VLAN,但一般情况下会手动限定放行列表,只让需要跨设备互通的 VLAN 通过。还要注意,Trunk 口在发送属于自己 PVID 的帧时,默认会剥离 Tag;发送其他 VLAN 的帧时,保留 Tag。
华为设备上还常用 Hybrid 口,它比 Access 和 Trunk 更灵活,既能接终端也能接交换机,区别在于能配置哪些 VLAN 的帧发送时带 Tag、哪些不带。实际项目中,人少的小网络用 Access 就够,跨交换机多 VLAN 的时候一定要把 Trunk 放行列表写对,否则就是经典的“业务 VLAN 不通”。
这里我必须提醒一句:二层交换机不同 VLAN 之间是绝对不能通信的,哪怕接在同一台机器上也不行。想让 VLAN 10 和 VLAN 20 互通,要么用路由器子接口,要么在支持三层功能的交换机上给每个 VLAN 配一个 VLANIF 接口地址,再把接口加入对应 VLAN。这个知识点既是考试重点,也是生产环境里排障最容易绕进去的地方。
4. 实操:用 eNSP 搭一个最简单的二层交换网络
4.1 环境准备与拓扑规划
eNSP 是华为官方的网络模拟平台,想自己搭实验环境验证上述原理,它是最顺手的选择,对应热词里的“使用 ensP 模拟最简单交换网络图”。安装时把 WinPcap/Wireshark、VirtualBox 一并装好,注意版本兼容性,启动时报“错误40”之类的问题基本都是 VirtualBox 或抓包组件没配对。下载渠道建议用官方最新版,别在第三方站点随便下。
打开 eNSP 之后,新建拓扑不需要花哨,最简单的就是经典三人组:两台 PC、一台 S5700 交换机。从左侧设备列表拖一台交换机、两台 PC 到面板上,用直连线把 PC1 和交换机 GE0/0/1 连接,PC2 接 GE0/0/2,然后全部启动。等设备状态灯稳定后,先把两台 PC 的 IP 配上,PC1 设 192.168.1.1/24,PC2 设 192.168.1.2/24。这个拓扑虽然看着简单,却是理解广播泛洪和精确转发的绝佳模型。
如果你启动 PC 时提示网卡错误,多数是因为电脑上有虚拟网卡或安全软件拦截了虚拟网络组件。关掉无关的虚拟网卡再试,或者重启一次 eNSP 服务,基本能解决。这算是我个人被这个平台的坑教育过后的经验。
4.2 配置交换机和验证 MAC 表学习
进入交换机命令行后,按我下面的顺序操作,能最快看到效果:
text复制system-view
sysname SW1
undo info-center enable
quit
display current-configuration
先给交换机起个名字,关掉烦人的信息中心日志提示,目的是让待会儿的观察不会被日志刷屏。配置完成后再回到 PC1 上 ping PC2,一定要保证 ping 通,然后再到交换机上看 MAC 表:
text复制display mac-address
正常情况下你会看到两条动态表项,一条是 PC1 的 MAC 对应 GE0/0/1,另一条是 PC2 的 MAC 对应 GE0/0/2。这比任何 PPT 都直观:交换机确实是靠源 MAC 学习来源端口。再看端口信息:
text复制display interface brief
这时候能看到 GE0/0/1 和 GE0/0/2 都是 Up,物理层和链路层正常。要清空 MAC 表重新观察学习过程,可以:
text复制reset mac-address
清空后再 ping 一次,你再 display mac-address,会发现表又慢慢学回来了。日常华为交换机运维里,这个 reset 命令也可以用来解决设备迁移后 MAC 表没刷新的问题,不过生产环境要谨慎操作,别在业务高峰期乱清。
4.3 用抓包验证广播泛洪和 VLAN 隔离
光看 MAC 表还不过瘾,我们把场景升级一下。再拖第三台 PC3,接在交换机 GE0/0/3 上,给它配置同一个 IP 网段,比如 192.168.1.3/24,但不参与通信。这时候让 PC1 ping PC2,同时在 PC3 上开启端口抓包。你会看到 PC3 虽然没参与通信,却也能抓到 PC1 发出的 ARP Request 广播帧;但真正的 ICMP 数据包基本不会再出现在 PC3 上,因为交换机已经靠 MAC 表做了精确转发,流量走的是单播路径。
这个实验做完,你对“广播 vs 单播”“泛洪 vs 转发”的体感绝对不一样。接着做 VLAN 隔离实验:进入交换机,创建 VLAN 20,把 PC2 和 PC3 的接口划进去,PC1 留在 VLAN 10。
text复制system-view
vlan 20
quit
interface GigabitEthernet0/0/2
port link-type access
port default vlan 20
quit
interface GigabitEthernet0/0/3
port link-type access
port default vlan 20
这时候 PC1 ping PC2 必然失败。在 PC3 上抓包,会发现 PC1 的 ARP 广播根本不会出现在 VLAN 20 的端口里。这就是 VLAN 隔离广播域的最直观证明。排障时如果遇到“两台设备在同一个交换机上却 ping 不通”,第一反应就该去看它们是不是被划进了不同的 VLAN,或者 Access 口的 PVID 配错了。
5. 从报文到芯片:PHY 寄存器与硬件联调
5.1 为什么调试网口要先看 PHY 寄存器
前几章是网络工程师视角,到了硬件层面,就绕不开“以太网 PHY 寄存器分析”了。PHY 芯片是物理层芯片,负责把 MAC 输出的并行数据变成差分信号发到网线上,同时负责协商速率、双工模式、自动翻转 MDI 等等。MAC 和 PHY 之间通过 MDIO/MDC 两个引脚来读写寄存器,地址线 5 位,所以最多 32 个寄存器,其中 0 号和 1 号寄存器是基础中的基础。
0 号寄存器是基本控制寄存器,软复位、是否开启自动协商、手动强制百兆/千兆、半双工/全双工这些开关都在里面。1 号寄存器是基本状态寄存器,Link 状态、协商结果、远端支持的能力都在里面。嵌入式工程师排查网口不通,第一步永远是读 1 号寄存器的对应 Link 位:如果 Link 始终是 0,说明物理线路上就没建立起来,问题大概率在变压器、RJ45、差分走线或者对端;如果 Link 是 1 但 ping 不同,那才轮得到去查 MAC 侧配置、VLAN、IP 和协议栈。
在 Linux 下,可以直接用 ethtool 查看 PHY 的 Link 状态和协商结果,它底层就是在读 PHY 寄存器。很多看起来像“软件配置错误”的问题,最后查出来是网线劣质导致协商在百兆和千兆之间反复跳,或者双工不匹配造成大量 CRC 错包。这种问题,看寄存器状态比看应用日志可靠得多。
5.2 W5500 和 MAC + PHY 方案怎么选
热词里有“w5500 以太网模块原理图”,说明不少人是在做单片机联网。W5500 是一颗内嵌硬件 TCP/IP 协议栈的以太网控制芯片,内部集成了 MAC、PHY 还有 TCP/IP 协议栈,MCU 只需要通过 SPI 接口读写它,就能完成收发 TCP/UDP 报文。它的原理图相对简单:SPI 四根线、时钟、中断、复位,再接一个网络变压器和 RJ45,外围元器件不多,做成模块后 MCU 只要 5 根线就能联网。
这个方案对单片机项目非常友好,不用在 MCU 上移植 lwIP,也不用关心协议栈内存占用。但代价是灵活性差:硬件协议栈的并发连接数、缓存大小、TCP 参数基本都是芯片写死的,很难根据应用精调。如果只是做数据采集、设备控制面板这种低并发、低带宽场景,W5500 很合适。
另一种常见路线是 MCU 内置 MAC + 外接 PHY 芯片,比如 STM32 + LAN8720 或 RTL8211,协议栈用 lwIP 跑在 MCU 上。这种方案灵活性强、性能上限高,能按需裁剪协议栈,适合需要定制 TCP 行为或者跑 HTTPS/大量并发连接的产品,但开发周期长,内存和 CPU 占用也明显。选型没有绝对标准,先问自己一句:产品里跑的是什么业务,数据量多大,并发多少?答案决定方案。
5.3 MIPI 接口与以太网接口怎么选
很多人搜“MIPI 接口与以太网接口的优缺点”,是因为在设计嵌入式主板时纠结:摄像头、显示器该走 MIPI 还是以太网?这俩根本不是同类接口,职责完全不同。MIPI 是 SoC 和板内设备之间的高速串行接口,比如摄像头 D-PHY、C-PHY,屏幕用的 DSI;它的带宽可以做得很高,但传输距离通常以厘米计,不支持长线缆,也没有交换、路由、网络管理这套生态。
以太网则是设备与设备之间的标准互联方式,传输距离最长可以到 100 米(双绞线),带宽虽然比不上 MIPI D-PHY 那种短距高速,但有完整的交换网络、远程管理、故障诊断、安全策略。选型的时候先看数据要往哪走:如果只在同一块板子上从摄像头传到 SoC,MIPI 是必然选择;如果数据要跨设备、跨机柜传输,那就得上以太网。
最近车载摄像头大量出现以太网方案,就是因为车上摄像头分布在车身四周,数据要汇总给域控制器,距离远超 MIPI 的能力范围。车载以太网 100BASE-T1/1000BASE-T1 用单对双绞线传输,既减重又抗干扰,配合时间敏感网络机制保证传输的确定性。在 AUTOSAR 框架下,以太网驱动和 EthStack 的配置就成了车载软件工程师的必修课,核心思路依然是先把 MAC/PHY 层调通,再往上传输协议栈。
5.4 以太网专用屏蔽线设计要注意什么
再往硬件深处走一点,“以太网专用屏蔽线设计”也是很多人忽视的细节。网络上常见的超五类、六类线本身有双绞结构,靠差分信号抵消共模干扰。如果项目里要用屏蔽线,重点是屏蔽层和连接器外壳的接地处理。屏蔽层接地的目标是把外界干扰导入大地,但如果两端都直接接地,而两端设备的地电位不一样,就会形成地环流,反而带来新的干扰。通常的做法是单端接地,或者在某一端通过电容接地,兼顾高频泄放和低频隔离。
同时要注意差分阻抗,以太网双绞线对差分阻抗是 100 欧姆,连接器、PCB 走线、变压器端接都应当往这个目标靠。很多初学者画板子时线宽间距不讲究,结果 RJ45 和变压器之间一段走线阻抗严重失配,导致信号反射、EMC 超标、Link 不稳定。这种问题用万用表量不出,用示波器看眼图才露馅,所以 PCB 布线和结构设计阶段就要把规则留好,不要等产品拿去过认证了才返工。
6. 常见问题与排查技巧实录
6.1 Windows 提示无法设置移动热点、只有以太网怎么办
“Windows10 没有 wifi 只有以太网”这句话本身不算故障,它只是在描述这台电脑没有无线网卡或者无线网卡被禁用了。确认方法很简单:Win+R 打开运行框,输入 ncpa.cpl,看网络连接窗口里有哪些适配器。如果只有一个“以太网”,那就说明这台电脑本来是台台式机或者无线驱动没装,插网线就能上网,正常不过。
“你的电脑未建立以太网、WiFi 或手机网络数据连接”这段报错,多见于你要打开 Windows 自带的移动热点共享,但系统发现当前活动网络没有因特网接入,或者当前上网方式也是 WiFi,而 Windows 的移动热点功能要求宿主源必须是以太网或者蜂窝网,不能实现“WiFi 连 WiFi”的转发。解决办法是给电脑接一个有线的以太网连接作为互联网来源,或者插一个 USB 转 RJ45 网卡再接入网络,然后把移动热点打开,让其他设备连这个热点上网。
顺带回答一个跨界热词:“能不能用以太网连接 adb”。可以。Android 设备支持通过网络方式进行 ADB 调试,手机和电脑处于同一局域网后,用 adb connect 设备IP:端口 就行。安卓 11 及以上还有无线调试功能,扫码配对后脱离 USB 线也能调试。还有人在搜“citra 联机交换教程”,这类模拟器本地联机的本质,依然是要让两台机器处于同一可达网络里。先把二层链路和 IP 连通性搞通,再谈联机功能,顺序别搞反。
另外,一部分安卓手机支持 USB 转有线网卡接入以太网,比如小米部分机型可以通过 OTG 接 USB 网卡,然后在系统设置里开启以太网共享。不同机型支持程度差异很大,以官方说明为准,但底层原理和前面提到的一样:先保证物理链路 Link up,再谈 IP 和共享。
6.2 网口灯亮但 ping 不通,该怎么查
端口灯亮说明物理层链路已经建立,但业务不通的情况,我见过太多。这里给一套可以照着走的排查顺序。
第一步看 IP 配置。两端是否同网段?如果跨网段,网关是否可达?在 PC 上先 ping 自己的 IP,再 ping 网关,逐步缩小范围。第二步看 VLAN。交换机上这个接口属于哪个 VLAN?对端接口又在哪个 VLAN?划分不一致,链路层看着 Up,但二层的隔离让数据根本过不去。用 display vlan 看看端口和 VLAN 的对应关系,Access 口重点看 PVID,Trunk 口重点看放行列表。
第三步看 MAC 表和 ARP 表。在接入交换机上 display mac-address,看能否学到对端设备的 MAC。如果学不到,说明二层转发路径上有问题;如果学到了但 ping 不通,再看 ARP 表里有没有对方 IP 对应的 MAC,没有就说明 ARP 请求没到对端,可能被 VLAN 或防火墙挡了。华为设备上的常用组合拳是:
text复制display interface Ethernet0/0/1
display vlan
display mac-address
display arp
ping -a 源地址 目的地址
第四步注意安全设备。很多团队在服务器和终端之间串了防火墙或 ACL,二层链路、MAC 表、ARP 全部正常,但 ICMP 就是被安全策略丢弃。这种情况用 ping 测试是失真的,得找安全策略负责人一起查。别一上来就重启设备,那是下策。
6.3 广播风暴和二层环路的现场处理
有人搜“交换环与整环”,那是抽象代数里的概念,和网络里的二层环路完全是两码事,搜资料时别混在一起。网络里的二层环路,是交换机之间用多根网线连接,形成了物理环回。没有启用 STP 之前,广播帧会在环路里反复复制,几秒内打满 CPU 和端口带宽,整个交换域瘫痪。
环路故障的现场特征非常明显:交换机所有端口指示灯同时狂闪,CPU 居高不下,抓包全屏都是同一个广播帧在反复出现,网络时通时断甚至完全不可用。处理顺序是先物理破环:拔掉一根可能成环的网线,业务如果立刻恢复,基本实锤环路。恢复后不要马上走人,要回头检查交换机有没有启用 STP/RSTP,根桥选举、端口优先级、边缘端口和 BPDU 保护,这些配置在日常华为交换机运维里要作为基线检查项。我给个建议:对所有接入终端端口开边缘端口,并开 BPDU 保护,防止员工私自拿一根网线把两个交换机口串起来,这种“弱智”环节导致整网瘫痪的案例,真实生产环境里太多了。
还有一个经验是,遇到“网络变慢”“时通时不通”这种疑难杂症,别急着刷配置、重启系统,优先怀疑环路和 VLAN 错配。大多数故障根因都很朴素,只是排查顺序容易被花哨的现象带偏。先把交换基础吃透,再看什么问题都有章法。
