ARTICLE DETAIL

资讯详情

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

5G模组FM160双模式实战:WebUI配置与路由/网卡切换全指南

5G模组FM160双模式实战:WebUI配置与路由/网卡切换全指南 前阵子为了搭一套移动数据回传网关我把抽屉里吃灰的广和通FM160模组翻了出来。这块模组本身是一颗标准的5G Modem但如果只是把它当USB网卡插电脑上或者反过来想让它在没有电脑参与的情况下自己拨号、自己分发IP玩法就差很多。FM160到手后第一个让我卡住的不是天线也不是SIM卡而是那个藏在USB虚拟网卡后面的WebUI。围着AT命令折腾了半天我才意识到切换工作模式、配置APN、查看拨号状态的那扇门居然就是这个浏览器页面。这篇文章把从零开始把FM160调成5G路由和5G网卡两种工作模式的完整过程写下来。重点讲WebUI怎么进、路由模式和网卡模式到底在哪切、按照什么顺序配置能一次跑通以及那些我踩过、你也值得避开的坑。不管是拿FM160做CPE网关、USB 5G适配器还是单纯想在开发板上让它接管网络这篇都适用。1. 先别急着拨号FM160到底是Modem、网卡还是路由器1.1 三个角色对应三种完全不同的使用姿势很多人第一次拿到5G模组下意识就打开串口工具敲AT命令这没错但思路容易局限。FM160这种带独立系统的5G模组实际可以扮演三种不同角色每种角色对应不同的应用场景。第一种叫Modem角色。模组只负责射频收发、基带处理和协议栈的一小部分数据通路完全交由外部主机控制。外部MCU或应用处理器通过USB、PCIe或者UART连接用AT命令发PDN激活请求数据包由主机侧的网络协议栈来处理。这种模式最适合单片机方案但你几乎不会去碰它的WebUI。第二种是我说的“网卡模式”。模组通过USB枚举成一个以太网卡设备在Windows下常见的是RNDIS在Linux下常见的是ECM/QMI接口主机把模组当作一张普通网卡来用。系统自带驱动识别后配合拨号软件或者系统自带的蜂窝网络模块就能直接上5G。整体体验类似于插上一张USB接口的5G上网卡。第三种是“路由模式”。模组自己完成APN配置、PDP激活、防火墙和NAT通过USB虚拟网卡或以太网接口把网络分享出去管理入口就是WebUI。这个模式下的FM160本质上就是一台没有屏幕和外壳的微型路由器也就是我们常说的CPE形态。为了更直观我把三种角色放在一起对比角色数据协议栈位置是否需要外部拨号WebUI的作用典型场景Modem角色外部主机需要基本不用MCU、嵌入式拨号网卡模式外部主机需要配置初始化参数笔记本、工控机上网路由模式模组内部不需要完整管理拨号和网络CPE、车载网关、便携热点很多教程把网卡模式和路由模式混为一谈实际上两者最根本的区别就是协议栈放在哪一侧。搞清楚这条主线后面所有配置都不会乱。1.2 FM160的硬件要点接口、供电与天线是前提软件层面的角色固然重要但硬件上没准备好WebUI可能压根连不上。FM160这块模组通常是M.2 Key B形态也有转接板方案支持5G Sub-6GHz频段兼容NSA和SA组网向下兼容LTE。射频部分需要接至少两根5G天线最好用原厂转接线引到外部天线天线位置别贴在一起。接口方面FM160通过USB或PCIe与主机通信。USB 3.0接口的数据吞吐能力足够应付5G峰值PCIe则更适合做高吞吐的网关设备。如果你买的是M.2转USB转接板一定要用USB 3.0口连接USB 2.0口虽然能识别但速率会损失掉大半。供电是很多人忽略的第一大坑。5G模组在发射状态下瞬时电流很大USB口的供电能力不足时模组会出现反复重启、注册网络失败、WebUI刷不出来等玄幻问题。我调试时都是把转接板插在有外置供电的USB HUB上而不是直接插机箱前面板。别在这个环节上省事返工成本极高。2. 第一扇门怎么把电脑和WebUI“连”起来2.1 插上去之后系统到底认出了什么FM160上电后通过USB线连接电脑系统会枚举出两类设备。一类是AT命令沟通用的COM口在Linux下是ttyUSB0、ttyUSB1这种另一类是网络接口。Windows下可能会看到RNDIS虚拟网卡也可能看到带NDIS驱动的蜂窝网络设备Linux下通常是cdc_ether或rndis_host驱动挂载出的usb0网卡。很多朋友在这一步就蒙了怎么有两个网卡实际上这是正常的。模组内部有一个虚拟网卡接口专门承载和管理流量管理地址和业务流量走同一个USB物理通道但逻辑上是分开的。我强烈建议在打开WebUI之前先用系统自带工具确认一下网络接口的状态。Windows下可以运行ipconfig看有没有一个以192.168.x.x开头的、子网掩码255.255.255.0的适配器出现Linux下用ip addr看usb0有没有被DHCP分配地址。正常情况下模组会给主机自动分配一个内网IP这个网段的网关就是WebUI管理地址。2.2 浏览器访问WebUI地址从哪来拿到模组的第一时间如果看不到DHCP分配的地址可以检查模组默认管理地址。我这套公版固件使用192.168.1.1很多基于高通平台的模组也习惯用192.168.225.1或者192.168.0.1具体以你手里固件的用户指南为准。一般模组出厂默认管理地址会印在外包装或者转接板的丝印上。确认网关地址后直接用浏览器访问http://192.168.1.1就能看到登录页面。默认账号密码在固件说明里会写常见的是admin/admin也有部分厂家用admin/password。第一次登录后建议立刻修改密码模组的WebUI如果暴露在可达网络里默认口令是很危险的事情。如果页面打不开先别急着怀疑模组坏了。按下面的顺序排查确认电脑网卡拿到的是DHCP分配的IP而不是自己手填的静态地址。关闭系统代理浏览器代理设置有时会干扰内网页面访问。暂时禁用电脑上的其他网卡尤其WiFi防止路由表把回包引到别的出口。用ping 192.168.1.1看能不能通能通则说明USB网络链路正常问题出在浏览器层。还是打不开的话换无痕模式或另一台电脑试。2.3 AT命令兜底WebUI背后是同一套参数WebUI的操作本质上是把配置项翻译成AT命令或QMI请求发给模组。所以当页面抽风或者你想确认Wi-Fi信号下的真实状态时AT命令永远是最后的兜底手段。在Windows下用串口工具打开枚举出的AT口Linux下用minicom打开/dev/ttyUSB0输入ATI可以查看模组版本信息ATCSQ能看到实时信号强度主要是RSSI值ATCOPS? 可以查询当前网络注册状态ATCGDCONT? 能查看当前APN设置。掌握这几个命令基本上就能和WebUI互相印证。我实际体验下来WebUI适合做图形化配置AT命令适合快速诊断。把两个入口都打通后面玩模式切换会顺很多。3. 路由模式把FM160变成一台小型CPE3.1 WebUI里的关键配置项不是每个字段都需要动切到路由模式后WebUI的首页一般会显示概览信息包括模组固件版本、IMEI、SIM卡状态、网络注册状态、信号强度、当前APN等。第一次配置时我最建议先不要乱动网段、DNS这些高级项而是先把拨号的基础条件配好。路由模式下核心选项是这几个APN这个由SIM卡运营商决定。如果是运营商官方卡可以打客服查或者看套餐说明如果API卡或测试卡厂家通常会附带APN参数。有些物联网卡接入点名称不是cmnet这类常见值填错了就会一直徘徊在注册网络和拨号失败之间。认证方式常见的是PAP、CHAP和None。很多卡只需要None但部分企业卡强制要求CHAP填错会导致PDP激活失败。IP协议现在大多数网络都支持IPv4/IPv6双栈模组默认值通常是IPv4v6。如果某些内网系统只跑IPv4把这里改成IPv4会更省心。频段选择默认建议保持自动除非你非常清楚现场的NSA/SA覆盖情况。盲目锁定某个频段可能导致长时间搜不到网。漫游开关如果使用的是跨境物联网卡漫游开关的配置会影响模组在异网下的注册行为大部分场景保持默认就好。这些配置在WebUI里保存后一般会提示“需要重启模组生效”。点确认等待模组重新注册网络。3.2 一步一步把路由模式跑通第一步确认SIM卡已经正确插入并且没有被PIN码锁住。这一步可以在WebUI的SIM状态页面看到如果提示PIN解锁就填入SIM卡PIN码点击确认。要是输错三次锁卡就得去手机里输入PUK解锁了。第二步进入拨号设置页填入APN和认证信息保存并重启模组。第三步重启后回到概览页面等待状态从“注册中”变成“已注册”或者“在线”。这时可以看到驻留的网络是4G还是5GNSA还是SA也能看到RSRP、RSRQ、SINR这些关键射频指标。第四步主机这边打开网络设置确认虚拟网卡通过DHCP拿到了IP。路由模式下模组会给主机分配一个内网地址默认网关指向模组自己。此时打开浏览器访问任意网站如果通了说明这台“微型CPE”已经正式上岗。我实测在路由模式下WebUI里的状态页刷新频率大概是每秒一次观察网络波动和信号质量变化非常直观。测速前后对比一下信号参数能明显看出RSRP优劣和下载速率之间的对应关系。3.3 为什么有时候路由模式比网卡模式更省事网卡模式和路由模式之间我不认为有绝对的好坏只有适不适合当前场景。路由模式最大的好处是零驱动、零拨号。下游设备只要支持DHCP就能上网不需要装ModemManager不需要敲nmcli命令行。对于工业场景里那些七七八八的老设备来说这几乎是最省心的接入方式。同时路由模式天然有一层NAT网络隔离性好。局域网内的设备不会直接暴露在运营商网络上内部的端口安全隐患少一些。但代价也明显多了一层NAT转发部分对时延敏感的业务需要优化MTU和TCP参数外部访问内部设备时需要做端口映射又多一道配置。如果你的需求是“插上网线/USB线就能让整组设备上网”那就用路由模式。这个模式也是FM160做便携热点、车载网关时最常见的形态。4. 网卡模式让主机直接吃5G流量4.1 WebUI里切换工作模式说变就变路由模式跑顺之后再来看网卡模式。切换入口一般放在WebUI的“工作模式”、“网络模式”或“系统设置”页里不同固件命名不完全一样。选择“USB网卡模式”或者“Modem模式”之后WebUI会提醒模组需要重新启动USB会短暂断开再重新枚举。这一步很多人会心虚因为切换后电脑上原来的RNDIS网卡可能一下消失了过一会儿才重新出现甚至弹出一个新的未识别设备。别慌这是正常现象。模组从“路由器”变成“网卡”后逻辑接口类型变了系统需要重新加载驱动。切换完成后确认一下系统里出现的新网卡。Windows下可能是“基于USB的移动宽带设备”或者“Remote NDIS Compatible Device”Linux下可能看到新的usb网卡接口也可能是qmi接口取决于固件和驱动。此时WebUI里的管理页面大概率需要重新访问才会刷新因为它也随接口重建了。4.2 Linux下用ModemManager实现主机拨号在网卡模式下FM160对Linux主机来说更多是一个需要主动拨号的Modem而不是开箱即用的路由。Ubuntu/Debian系统建议安装modemmanager和libqmi-utils这两件套是标准的蜂窝网络处理工具。安装完成后用mmcli -L列出系统识别的Modemmmcli -L正常会输出类似下面的内容/org/freedesktop/ModemManager1/Modem/0 [Fibocom] FM160看到Modem编号之后用mmcli -m 0查看状态确认它不是locked状态。如果SIM卡被PIN锁住用mmcli -m 0 --pin 1234解锁。接下来通过NetworkManager创建GSM连接nmcli connection add type gsm con-name 5G apn cmnet nmcli connection up 5G这里的apn要换成你的SIM卡实际使用的接入点。连接建立后可以用ip addr看到网卡上多了一个运营商分配的地址用ping测试网络连通性。如果固件支持QMI方式也可以选择安装uqmi工具直接操作qmi接口。但对绝大多数用户来说ModemManagerNetworkManager的路径最成熟而且和桌面环境的网络管理也配合得最好。4.3 网卡模式真正值钱的地方网卡模式的价值并不在于“让电脑能上网”因为路由模式也能做到这一点。它真正的价值在于把网络栈交还给主机实现更灵活的数据通路。比如你想用Wireshark抓5G数据包分析协议交互在网卡模式下直接抓usb网卡接口就行路由模式下你只能抓到已经过了一层NAT的包。又比如你想做多WAN负载均衡一张5G网卡加一张4G网卡配合软路由网卡模式可以让策略路由的实现干净很多。再比如在虚拟机里测试直接把USB网卡透传给虚拟机虚拟机就能独立使用5G网络宿主机完全不受影响。正是这些场景让网卡模式在开发者手里变得不可替代。它就是给主机插了一张灵活可控的5G网卡而不是让模组替主机做决定。5. 双模式切换与固件版本那些坑5.1 切换后必做的三步验证流程模式切换这个动作本身很简单但切换后如果只凭“看能不能上网”来判断成功往往会忽略隐藏问题。我建议每次切换后都固定做三步验证。第一步确认设备枚举正常。切到路由模式时系统里要有虚拟网卡切到网卡模式时系统里要有对应的Modem或者USB网卡接口不能是带感叹号的未知设备。第二步确认IP分配正确。路由模式下主机应拿到模组分配的静态网段IP网卡模式下主机拨号完成后应该拿到运营商侧分配的IP。两边如果拿到了同网段的IP说明模式没切干净或者配置残留了。第三步确认网络连通性。先ping网关再ping运营商侧DNS最后访问互联网。这样逐层验证出问题时能快速定位到底断在哪一层。5.2 我实际踩过的四个坑第一个坑是网段冲突。第一次把模组设成路由模式时我手头局域网正好也用了192.168.1.0/24网段主机同时连着WiFi和模组路由表直接乱掉部分流量被错误地送到模组一侧。解决办法是把模组LAN口网段改成192.168.10.1或者临时断开WiFi。第二个坑是Linux下网卡模式里usb0一直没起来。排查后发现是因为NetworkManager默认把新出现的网卡当成了“未管理的未连接设备”没有主动给它分配地址。用nmcli device status看一下usb0的状态如果显示unmanaged就手动设置连接并启动它。第三个坑是Windows下同时出现两个网卡。模组在某些固件里会同时枚举出RNDIS网卡和NDIS移动宽带设备Windows不知道用哪个结果两个都标着“未识别网络”。解决办法是在设备管理器里把不用的那个禁用掉只保留一个逻辑接口。第四个坑是刷了某些不带WebUI的固件。FM160虽然是同型号但不同定制固件的功能差异很大有些变体只保留AT命令WebUI被裁剪掉了。买二手模组或者拿到企业定制版本前最好先确认固件带不带WebUI否则这篇文章前面讲的全白搭。5.3 固件升级前一定要做的事WebUI通常自带固件升级入口但升级前一定要养成备份配置的习惯。有些固件升级后会把用户配置恢复出厂默认APN、网段、密码全部清零。如果手头有几十台设备要批量升级这个操作还可能引起配置不统一的问题。升级过程要保证供电稳定一次升级可能要持续几分钟中途断电基本就变砖了。我建议使用带独立供电的USB HUB或者专用开发板的电源口别用笔记本USB口的供电。升级完成后恢复出厂设置一次再重新导入备份的配置能避免很多玄学问题。升级完之后到WebUI的“状态”页看下固件版本号和配套的AT版本号记录下来做个对照表后面排查问题会非常有帮助。6. 实测体验与排查经验总结6.1 信号显示正常却拨不上网的排查顺序我最常被问的问题是WebUI里信号强度看着挺好的为什么就是拨不上网这个问题的排查顺序比信号强度本身更重要。首先看SIM卡状态。确认卡片没有欠费、没有PIN锁、插卡方向正确。物联网卡有时候会出现“已插卡但未激活”的状态WebUI里能看到运营商状态这种需要联系卡商开通。其次看APN。这是最容易出错的地方。很多测试卡和物联网卡的APN不是公开默认值填错了模组能注册网络但PDP激活一直失败。在WebUI状态页看“是否激活”这个字段如果一直显示未激活优先怀疑APN。再看驻留模式。手机卡只在NSA区域但你手里的模组被配置成“SA Only”模式那也会出现能看见5G信号但无法建立数据链路的诡异现象。切换固件或新建配置后务必回WebUI把网络模式恢复成自动或NSA/SA混合。最后看频段锁。有些模组出厂默认锁定了特定Band如果当前覆盖区域的主要Band不在其中就会表现为信号满格但网络注册超时。在WebUI里把频段选择改成自动一般就能解决。6.2 WebUI打不开的完整排查链路针对“WebUI打不开”这个最基础也最磨人的问题我总结了以下排查链路顺着走一遍基本能找到根因。第一步确认物理链路。换一根USB线、换一个USB口排除线材和供电问题。USB线缆故障导致的枚举失败概率远比你想象的高。第二步确认系统驱动。Windows下打开设备管理器确认没有黄色感叹号的设备Linux下用dmesg | grep usb看有没有报错。如果出现unknown device先卸载驱动重装。第三步确认网卡IP。Windows用ipconfigLinux用ip addr看虚拟网卡有没有通过DHCP拿到地址。如果没有尝试手动指定一个和模组同网段的静态IP比如192.168.1.2掩码255.255.255.0网关192.168.1.1。第四步确认浏览器访问方式。检查访问的是http而不是https部分模组WebUI没有配置证书用https访问会直接拒绝连接。同时关掉全局代理。第五步AT命令兜底。通过串口工具进入AT口执行ATI、ATCSQ确认模组本身工作正常。如果AT命令正常但WebUI始终连不上大概率是WebUI进程崩溃或固件异常重启模组或恢复出厂设置。6.3 长时间运行稳定性散热、供电、天线一个都不能少玩模组和玩台式机一样长时间稳定运行是终极目标。我在连续跑了三天路由模式后发现5G模组在高负载下的发热相当可观尤其是放在密闭外壳里时温度会直接影响模组性能和寿命。解决散热最简单的方法就是加一块铝散热片转接板如果有预留孔位就固定上去。如果是放进机箱或者嵌入式设备外壳尽量保证风道通畅。温度降下来后实测的长时间吞吐稳定性有明显改善。供电更要重视。5G模组的峰值电流可以到2A级别USB端口的供电标称通常是500mA到900mA插在没外接电源的HUB上很容易出现瞬时电压跌落表现为WebUI时不时刷不出来、模组突然重启。最稳的方案是直接给转接板供电端接一个5V/2A以上的稳压电源。天线也不可忽视。模组对天线灵敏度非常敏感天线位置、方向、是否靠近金属都会直接影响RSRP和SINR。我一开始把两根天线贴在机箱金属面板上信号指标惨不忍睹。后来把天线用馈线引到外部竖立在无遮挡位置SINR提升了接近10dB上行速率改善尤其明显。拿FM160做移动网关这件事折腾下来最大的收获不是记住了多少条AT命令而是理解了模组确实不只是一块简单的5G基带。路由模式和网卡模式就像同一颗芯片的两种人格一种想替你扛下所有复杂配置另一种想把所有控制权交还给你。我现在的习惯是调试环境里固定用路由模式把WebUI的配置项调顺后一劳永逸遇到抓包和多链路负载的需求再切成网卡模式把流量以最接近原生的方式交给主机处理。两种模式用熟了这块模组才真正算得上物尽其用。
返回列表