网络通信入门:电脑连接 GNSS 定位终端的Wi‑Fi热点下载文件的原理

20260716

适用对象:GNSS 定位终端、嵌入式设备和网络通信初学者

典型场景:电脑连接定位终端提供的 Wi‑Fi,使用 MobaXterm 登录终端并下载 RINEX、日志或定位结果文件


1. 先理解最核心的原理

终端设备"发出一个 Wi‑Fi 热点",并不表示它在发出互联网流量。

更准确地说,终端的 Wi‑Fi 模块工作在 AP 模式,在终端周围建立了一个小型无线局域网。电脑连接这个热点,相当于电脑和终端之间接上了一根"无线网线"。
#mermaid-svg-7Jjbdmx7RTcq448g{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-7Jjbdmx7RTcq448g .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-7Jjbdmx7RTcq448g .error-icon{fill:#552222;}#mermaid-svg-7Jjbdmx7RTcq448g .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-7Jjbdmx7RTcq448g .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-7Jjbdmx7RTcq448g .marker{fill:#333333;stroke:#333333;}#mermaid-svg-7Jjbdmx7RTcq448g .marker.cross{stroke:#333333;}#mermaid-svg-7Jjbdmx7RTcq448g svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-7Jjbdmx7RTcq448g p{margin:0;}#mermaid-svg-7Jjbdmx7RTcq448g .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-7Jjbdmx7RTcq448g .cluster-label text{fill:#333;}#mermaid-svg-7Jjbdmx7RTcq448g .cluster-label span{color:#333;}#mermaid-svg-7Jjbdmx7RTcq448g .cluster-label span p{background-color:transparent;}#mermaid-svg-7Jjbdmx7RTcq448g .label text,#mermaid-svg-7Jjbdmx7RTcq448g span{fill:#333;color:#333;}#mermaid-svg-7Jjbdmx7RTcq448g .node rect,#mermaid-svg-7Jjbdmx7RTcq448g .node circle,#mermaid-svg-7Jjbdmx7RTcq448g .node ellipse,#mermaid-svg-7Jjbdmx7RTcq448g .node polygon,#mermaid-svg-7Jjbdmx7RTcq448g .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-7Jjbdmx7RTcq448g .rough-node .label text,#mermaid-svg-7Jjbdmx7RTcq448g .node .label text,#mermaid-svg-7Jjbdmx7RTcq448g .image-shape .label,#mermaid-svg-7Jjbdmx7RTcq448g .icon-shape .label{text-anchor:middle;}#mermaid-svg-7Jjbdmx7RTcq448g .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-7Jjbdmx7RTcq448g .rough-node .label,#mermaid-svg-7Jjbdmx7RTcq448g .node .label,#mermaid-svg-7Jjbdmx7RTcq448g .image-shape .label,#mermaid-svg-7Jjbdmx7RTcq448g .icon-shape .label{text-align:center;}#mermaid-svg-7Jjbdmx7RTcq448g .node.clickable{cursor:pointer;}#mermaid-svg-7Jjbdmx7RTcq448g .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-7Jjbdmx7RTcq448g .arrowheadPath{fill:#333333;}#mermaid-svg-7Jjbdmx7RTcq448g .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-7Jjbdmx7RTcq448g .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-7Jjbdmx7RTcq448g .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-7Jjbdmx7RTcq448g .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-7Jjbdmx7RTcq448g .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-7Jjbdmx7RTcq448g .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-7Jjbdmx7RTcq448g .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-7Jjbdmx7RTcq448g .cluster text{fill:#333;}#mermaid-svg-7Jjbdmx7RTcq448g .cluster span{color:#333;}#mermaid-svg-7Jjbdmx7RTcq448g div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-7Jjbdmx7RTcq448g .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-7Jjbdmx7RTcq448g rect.text{fill:none;stroke-width:0;}#mermaid-svg-7Jjbdmx7RTcq448g .icon-shape,#mermaid-svg-7Jjbdmx7RTcq448g .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-7Jjbdmx7RTcq448g .icon-shape p,#mermaid-svg-7Jjbdmx7RTcq448g .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-7Jjbdmx7RTcq448g .icon-shape .label rect,#mermaid-svg-7Jjbdmx7RTcq448g .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-7Jjbdmx7RTcq448g .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-7Jjbdmx7RTcq448g .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-7Jjbdmx7RTcq448g :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 本地无线局域网
终端存储器中的文件
终端操作系统
SSH/SFTP服务
终端Wi-Fi模块/AP
电脑Wi-Fi网卡
MobaXterm
电脑本地磁盘

在这个局域网中:

  • 终端拥有一个本地 IP,例如 192.168.4.1
  • 电脑拥有另一个本地 IP,例如 192.168.4.2
  • 终端运行 SSH/SFTP 服务;
  • MobaXterm 是电脑上的 SSH/SFTP 客户端;
  • 电脑通过本地 Wi‑Fi 链路向终端请求文件;
  • 终端读取存储器中的文件,再通过 Wi‑Fi 发送给电脑。

数据路径是:

text 复制代码
终端文件
→ 终端操作系统
→ SSH/SFTP
→ 终端Wi-Fi模块
→ 无线电波
→ 电脑Wi-Fi网卡
→ MobaXterm
→ 电脑磁盘

整个过程只发生在:

text 复制代码
电脑 ↔ GNSS定位终端

之间,不需要经过运营商基站、4G/5G 网络或因特网。

1.1 为什么没有互联网也能下载

"网络通信"和"访问互联网"不是同一个概念。

两台设备只要能够组成一个局域网,就可以互相传输数据。例如:

text 复制代码
两台电脑用网线直连
电脑与打印机连接同一Wi-Fi
电脑连接相机热点
电脑连接GNSS终端热点

这些场景即使完全没有互联网,也可以:

  • 传输文件;
  • 登录设备;
  • 打开设备管理页面;
  • 发送控制命令。

因此:

Wi‑Fi 热点首先提供的是本地无线连接,而不是付费互联网服务。

1.2 Wi‑Fi 模块、SSH 和 MobaXterm分别做什么

组件 主要作用
终端 Wi‑Fi 模块 建立无线链路,收发 Wi‑Fi 数据
终端操作系统 管理网络、文件系统和用户权限
SSH 服务 提供安全登录、认证和加密通信
SFTP/SCP 在 SSH 体系中传输文件
MobaXterm 作为电脑端客户端,登录终端并下载文件

Wi‑Fi 模块本身不会"主动把文件送给电脑"。真正的过程是:

text 复制代码
MobaXterm提出文件读取请求
→ 终端SSH/SFTP服务处理请求
→ 终端操作系统读取文件
→ Wi-Fi模块负责发送数据

本文假设 GNSS 定位终端运行支持 SSH 的操作系统,并已启动 SSH/SFTP 服务。


2. 使用 MobaXterm 需要哪些信息

通常需要:

text 复制代码
终端IP地址
SSH服务端口
登录用户名
密码或SSH私钥

例如:

text 复制代码
终端IP:192.168.4.1
SSH端口:22
用户名:root
认证方式:密码

MobaXterm 中可填写:

text 复制代码
Remote host:192.168.4.1
Port:22
Username:root

2.1 IP 地址负责找到设备

例如:

text 复制代码
电脑IP:192.168.4.2
终端IP:192.168.4.1

电脑访问 192.168.4.1,就是访问终端的网络接口。

如果终端支持主机名、mDNS 或自动发现,也可能使用:

text 复制代码
gnss-terminal.local

连接,但底层仍需把名称解析为 IP 地址。

因此:

网络通信必须确定目标 IP,但用户不一定每次都要手工输入 IP。

2.2 端口号负责找到服务

一台设备可以同时运行多个网络服务:

服务 常见传输协议与端口
SSH、SFTP、SCP TCP 22
HTTP TCP 80
HTTPS TCP 443
FTP 控制连接 TCP 21
NTRIP 常见为 TCP 2101,但可修改
自定义数据服务 由程序定义

可以类比为:

text 复制代码
IP地址 → 找到一栋楼
端口号 → 找到楼中的具体房间

例如:

text 复制代码
192.168.4.1:22

表示访问 192.168.4.1 上监听 TCP 22 端口的服务。

SSH 默认端口是 TCP 22,但终端厂商可以改为其他端口。

2.3 用户名和认证信息负责证明身份

IP 和端口只能找到 SSH 服务,服务器还需要验证访问者身份。

常见方式包括:

  • 用户名和密码;
  • SSH 私钥;
  • 证书等扩展认证方式。

首次连接时,MobaXterm 通常会显示 SSH 主机密钥指纹。

主机指纹的作用是确认服务器身份,但前提是:

  • 指纹已通过说明书、管理员或其他可信渠道核对;
  • 或后续连接时与首次保存的指纹一致。

仅仅点击"接受未知指纹",并不能自动排除设备被冒充的可能。


3. 电脑和终端怎样获得 IP 地址

常见有两种工作模式。

3.1 终端作为 Wi‑Fi 热点:AP 模式

终端开启热点,例如:

text 复制代码
SSID:GNSS_TERMINAL_001
密码:********

终端 Wi‑Fi 接口可能使用:

text 复制代码
192.168.4.1/24

其中:

  • 192.168.4.1:终端 IPv4 地址;
  • /24:网络前缀长度,对应子网掩码 255.255.255.0

电脑可以通过两种方式获得地址。

方式一:终端运行 DHCP 服务

终端可能自动分配:

text 复制代码
电脑IP:192.168.4.2
子网掩码:255.255.255.0

还可能下发:

text 复制代码
默认网关:192.168.4.1
DNS服务器:192.168.4.1

但本地 SSH 通信通常不需要默认网关和 DNS。只要:

text 复制代码
电脑:192.168.4.2/24
终端:192.168.4.1/24

并且二层链路允许互通,就可以直接访问。

方式二:电脑手工配置静态 IP

有些终端只提供 AP,不运行 DHCP。

此时可以手工配置:

text 复制代码
电脑IP:192.168.4.2
子网掩码:255.255.255.0

再访问:

text 复制代码
192.168.4.1:22

#mermaid-svg-VAg2mi92zGvoT0Ut{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-VAg2mi92zGvoT0Ut .error-icon{fill:#552222;}#mermaid-svg-VAg2mi92zGvoT0Ut .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-VAg2mi92zGvoT0Ut .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-VAg2mi92zGvoT0Ut .marker{fill:#333333;stroke:#333333;}#mermaid-svg-VAg2mi92zGvoT0Ut .marker.cross{stroke:#333333;}#mermaid-svg-VAg2mi92zGvoT0Ut svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-VAg2mi92zGvoT0Ut p{margin:0;}#mermaid-svg-VAg2mi92zGvoT0Ut .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut .cluster-label text{fill:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut .cluster-label span{color:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut .cluster-label span p{background-color:transparent;}#mermaid-svg-VAg2mi92zGvoT0Ut .label text,#mermaid-svg-VAg2mi92zGvoT0Ut span{fill:#333;color:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut .node rect,#mermaid-svg-VAg2mi92zGvoT0Ut .node circle,#mermaid-svg-VAg2mi92zGvoT0Ut .node ellipse,#mermaid-svg-VAg2mi92zGvoT0Ut .node polygon,#mermaid-svg-VAg2mi92zGvoT0Ut .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-VAg2mi92zGvoT0Ut .rough-node .label text,#mermaid-svg-VAg2mi92zGvoT0Ut .node .label text,#mermaid-svg-VAg2mi92zGvoT0Ut .image-shape .label,#mermaid-svg-VAg2mi92zGvoT0Ut .icon-shape .label{text-anchor:middle;}#mermaid-svg-VAg2mi92zGvoT0Ut .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-VAg2mi92zGvoT0Ut .rough-node .label,#mermaid-svg-VAg2mi92zGvoT0Ut .node .label,#mermaid-svg-VAg2mi92zGvoT0Ut .image-shape .label,#mermaid-svg-VAg2mi92zGvoT0Ut .icon-shape .label{text-align:center;}#mermaid-svg-VAg2mi92zGvoT0Ut .node.clickable{cursor:pointer;}#mermaid-svg-VAg2mi92zGvoT0Ut .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-VAg2mi92zGvoT0Ut .arrowheadPath{fill:#333333;}#mermaid-svg-VAg2mi92zGvoT0Ut .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-VAg2mi92zGvoT0Ut .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-VAg2mi92zGvoT0Ut .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-VAg2mi92zGvoT0Ut .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-VAg2mi92zGvoT0Ut .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-VAg2mi92zGvoT0Ut .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-VAg2mi92zGvoT0Ut .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-VAg2mi92zGvoT0Ut .cluster text{fill:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut .cluster span{color:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-VAg2mi92zGvoT0Ut .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-VAg2mi92zGvoT0Ut rect.text{fill:none;stroke-width:0;}#mermaid-svg-VAg2mi92zGvoT0Ut .icon-shape,#mermaid-svg-VAg2mi92zGvoT0Ut .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-VAg2mi92zGvoT0Ut .icon-shape p,#mermaid-svg-VAg2mi92zGvoT0Ut .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-VAg2mi92zGvoT0Ut .icon-shape .label rect,#mermaid-svg-VAg2mi92zGvoT0Ut .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-VAg2mi92zGvoT0Ut .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-VAg2mi92zGvoT0Ut .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-VAg2mi92zGvoT0Ut :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} Wi-Fi
TCP 22
电脑

192.168.4.2/24
终端AP

192.168.4.1/24

需要区分:

text 复制代码
Wi-Fi AP
DHCP
路由
NAT
互联网出口

这些是不同功能。终端开启热点,不代表它一定提供 DHCP、路由或互联网共享。

3.2 终端和电脑连接同一个 AP:STA 模式

终端也可以作为 Wi‑Fi 客户端,与电脑连接同一个路由器或 AP:

text 复制代码
路由器:192.168.1.1
电脑:192.168.1.100
终端:192.168.1.120

此时电脑访问:

text 复制代码
192.168.1.120:22

#mermaid-svg-jy2QteuLEBN6PiRg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-jy2QteuLEBN6PiRg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-jy2QteuLEBN6PiRg .error-icon{fill:#552222;}#mermaid-svg-jy2QteuLEBN6PiRg .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-jy2QteuLEBN6PiRg .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-jy2QteuLEBN6PiRg .marker{fill:#333333;stroke:#333333;}#mermaid-svg-jy2QteuLEBN6PiRg .marker.cross{stroke:#333333;}#mermaid-svg-jy2QteuLEBN6PiRg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-jy2QteuLEBN6PiRg p{margin:0;}#mermaid-svg-jy2QteuLEBN6PiRg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-jy2QteuLEBN6PiRg .cluster-label text{fill:#333;}#mermaid-svg-jy2QteuLEBN6PiRg .cluster-label span{color:#333;}#mermaid-svg-jy2QteuLEBN6PiRg .cluster-label span p{background-color:transparent;}#mermaid-svg-jy2QteuLEBN6PiRg .label text,#mermaid-svg-jy2QteuLEBN6PiRg span{fill:#333;color:#333;}#mermaid-svg-jy2QteuLEBN6PiRg .node rect,#mermaid-svg-jy2QteuLEBN6PiRg .node circle,#mermaid-svg-jy2QteuLEBN6PiRg .node ellipse,#mermaid-svg-jy2QteuLEBN6PiRg .node polygon,#mermaid-svg-jy2QteuLEBN6PiRg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-jy2QteuLEBN6PiRg .rough-node .label text,#mermaid-svg-jy2QteuLEBN6PiRg .node .label text,#mermaid-svg-jy2QteuLEBN6PiRg .image-shape .label,#mermaid-svg-jy2QteuLEBN6PiRg .icon-shape .label{text-anchor:middle;}#mermaid-svg-jy2QteuLEBN6PiRg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-jy2QteuLEBN6PiRg .rough-node .label,#mermaid-svg-jy2QteuLEBN6PiRg .node .label,#mermaid-svg-jy2QteuLEBN6PiRg .image-shape .label,#mermaid-svg-jy2QteuLEBN6PiRg .icon-shape .label{text-align:center;}#mermaid-svg-jy2QteuLEBN6PiRg .node.clickable{cursor:pointer;}#mermaid-svg-jy2QteuLEBN6PiRg .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-jy2QteuLEBN6PiRg .arrowheadPath{fill:#333333;}#mermaid-svg-jy2QteuLEBN6PiRg .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-jy2QteuLEBN6PiRg .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-jy2QteuLEBN6PiRg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-jy2QteuLEBN6PiRg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-jy2QteuLEBN6PiRg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-jy2QteuLEBN6PiRg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-jy2QteuLEBN6PiRg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-jy2QteuLEBN6PiRg .cluster text{fill:#333;}#mermaid-svg-jy2QteuLEBN6PiRg .cluster span{color:#333;}#mermaid-svg-jy2QteuLEBN6PiRg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-jy2QteuLEBN6PiRg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-jy2QteuLEBN6PiRg rect.text{fill:none;stroke-width:0;}#mermaid-svg-jy2QteuLEBN6PiRg .icon-shape,#mermaid-svg-jy2QteuLEBN6PiRg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-jy2QteuLEBN6PiRg .icon-shape p,#mermaid-svg-jy2QteuLEBN6PiRg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-jy2QteuLEBN6PiRg .icon-shape .label rect,#mermaid-svg-jy2QteuLEBN6PiRg .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-jy2QteuLEBN6PiRg .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-jy2QteuLEBN6PiRg .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-jy2QteuLEBN6PiRg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} Wi-Fi或网线
Wi-Fi
电脑

192.168.1.100
路由器/AP
GNSS终端

192.168.1.120

两台设备即使连接同一个 SSID,也不一定能够互访。以下配置可能阻断通信:

  • 无线客户端隔离;
  • 访客网络隔离;
  • 不同 VLAN;
  • 防火墙或访问控制策略。

4. 怎样确认终端 IP 和 SSH 端口

4.1 优先查看说明书或已有配置

厂商可能规定默认地址,例如:

text 复制代码
192.168.1.1
192.168.4.1
192.168.10.1

如果以前连接成功,也可以查看 MobaXterm 保存的:

text 复制代码
Remote host
Port
Username

4.2 查看电脑网络配置

Windows:

cmd 复制代码
ipconfig

可能看到:

text 复制代码
IPv4地址:192.168.4.2
子网掩码:255.255.255.0
默认网关:192.168.4.1

默认网关经常是终端地址,但不能绝对依赖:

  • 终端可能没有下发默认网关;
  • 本地 SSH 不需要默认网关;
  • 终端地址未必等于系统显示的网关地址。

4.3 查看邻居表

Windows:

cmd 复制代码
arp -a

PowerShell:

powershell 复制代码
Get-NetNeighbor

Linux:

bash 复制代码
ip neigh

邻居表只显示系统已经发现或通信过的邻居,不保证列出网络中的全部设备。

4.4 测试 SSH 端口

Windows PowerShell:

powershell 复制代码
Test-NetConnection 192.168.4.1 -Port 22

TCP 测试成功表示:

text 复制代码
目标地址可达
+
该TCP端口接受了连接

但这还不能证明用户名和密码一定正确。


5. SSH 登录是怎样建立的

在这个场景中:

text 复制代码
MobaXterm → SSH客户端
GNSS终端 → SSH服务器

终端常见的 SSH 服务程序是 sshd,也可能使用其他兼容实现。

5.1 先建立 TCP 连接

例如:

text 复制代码
源:192.168.4.2:53000
目标:192.168.4.1:22

其中:

  • 192.168.4.2:电脑 IP;
  • 53000:电脑临时选择的源端口;
  • 192.168.4.1:终端 IP;
  • 22:终端 SSH 服务端口。

一个 TCP 连接通常由以下四项区分:

text 复制代码
源IP
源端口
目标IP
目标端口

5.2 再完成 SSH 协商和认证

SSH 通常依次完成:

  1. 协议版本协商;
  2. 密钥交换和加密算法协商;
  3. 服务器身份验证;
  4. 用户身份认证;
  5. 创建远程 Shell、SFTP 或其他 SSH 通道。

登录成功后,在 MobaXterm 终端窗口执行:

bash 复制代码
ls
cd /data
pwd
cp
rm

这些命令是在 GNSS 终端上运行,不是在电脑本地运行。

5.3 SSH 和 Wi‑Fi 加密不是同一层

如果热点使用 WPA2 或 WPA3,通常存在两层保护:

text 复制代码
Wi-Fi链路加密
+
SSH端到端会话加密

其中:

  • Wi‑Fi 加密保护本地无线链路;
  • SSH 加密保护电脑和 SSH 服务之间的会话内容。

开放式 Wi‑Fi 网络可能没有链路层加密,但 SSH 会话本身仍然可以加密。


6. MobaXterm 怎样下载文件

MobaXterm 建立 SSH 会话后,左侧通常会显示远程文件浏览器。

该功能一般使用:

text 复制代码
SFTP

部分配置或操作也可能使用:

text 复制代码
SCP

可简单理解为:

text 复制代码
SSH
→ 建立安全连接并完成认证

SFTP或SCP
→ 在SSH体系中传输文件

6.1 SFTP 与 FTP 不是同一种协议

对比项 SFTP FTP
完整名称 SSH File Transfer Protocol File Transfer Protocol
所属体系 运行在 SSH 通道中 独立文件传输协议
常见端口 通常与 SSH 相同,为 TCP 22 控制连接通常为 TCP 21
默认是否加密 普通 FTP 默认不加密
是否需要 FTP 服务 不需要 需要

SFTP 不是把普通 FTP 简单"套上一层加密",而是独立设计的 SSH 文件传输协议。

6.2 SFTP 是否复用当前 SSH 连接

不一定。

MobaXterm 可能:

  • 在当前 SSH 连接中再打开一个 SFTP 通道;
  • 或另建一个 SSH 连接用于文件浏览。

两种方式通常都访问同一个 SSH 服务端口。

6.3 文件下载过程

假设下载:

text 复制代码
/data/20260716.obs

终端文件系统 终端SSH/SFTP服务 MobaXterm 终端文件系统 终端SSH/SFTP服务 MobaXterm #mermaid-svg-Se7rX02e2tJKifDu{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-Se7rX02e2tJKifDu .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-Se7rX02e2tJKifDu .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-Se7rX02e2tJKifDu .error-icon{fill:#552222;}#mermaid-svg-Se7rX02e2tJKifDu .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Se7rX02e2tJKifDu .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-Se7rX02e2tJKifDu .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Se7rX02e2tJKifDu .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Se7rX02e2tJKifDu .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-Se7rX02e2tJKifDu .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Se7rX02e2tJKifDu .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Se7rX02e2tJKifDu .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Se7rX02e2tJKifDu .marker.cross{stroke:#333333;}#mermaid-svg-Se7rX02e2tJKifDu svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Se7rX02e2tJKifDu p{margin:0;}#mermaid-svg-Se7rX02e2tJKifDu .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Se7rX02e2tJKifDu text.actor>tspan{fill:black;stroke:none;}#mermaid-svg-Se7rX02e2tJKifDu .actor-line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-Se7rX02e2tJKifDu .innerArc{stroke-width:1.5;stroke-dasharray:none;}#mermaid-svg-Se7rX02e2tJKifDu .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-Se7rX02e2tJKifDu .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-Se7rX02e2tJKifDu #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-Se7rX02e2tJKifDu .sequenceNumber{fill:white;}#mermaid-svg-Se7rX02e2tJKifDu #sequencenumber{fill:#333;}#mermaid-svg-Se7rX02e2tJKifDu #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-Se7rX02e2tJKifDu .messageText{fill:#333;stroke:none;}#mermaid-svg-Se7rX02e2tJKifDu .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Se7rX02e2tJKifDu .labelText,#mermaid-svg-Se7rX02e2tJKifDu .labelText>tspan{fill:black;stroke:none;}#mermaid-svg-Se7rX02e2tJKifDu .loopText,#mermaid-svg-Se7rX02e2tJKifDu .loopText>tspan{fill:black;stroke:none;}#mermaid-svg-Se7rX02e2tJKifDu .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-Se7rX02e2tJKifDu .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-Se7rX02e2tJKifDu .noteText,#mermaid-svg-Se7rX02e2tJKifDu .noteText>tspan{fill:black;stroke:none;}#mermaid-svg-Se7rX02e2tJKifDu .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Se7rX02e2tJKifDu .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Se7rX02e2tJKifDu .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Se7rX02e2tJKifDu .actorPopupMenu{position:absolute;}#mermaid-svg-Se7rX02e2tJKifDu .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#mermaid-svg-Se7rX02e2tJKifDu .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Se7rX02e2tJKifDu .actor-man circle,#mermaid-svg-Se7rX02e2tJKifDu line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-Se7rX02e2tJKifDu :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 建立SSH连接并认证 请求打开远端文件 检查权限并读取文件 返回文件数据块 通过SSH和TCP发送数据 写入电脑本地磁盘 继续请求后续数据

文件一般分块读取和传输,不是一次性整体移动。


7. 文件数据经过哪些网络层次

#mermaid-svg-um3PI5rXcCfzAFF9{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-um3PI5rXcCfzAFF9 .error-icon{fill:#552222;}#mermaid-svg-um3PI5rXcCfzAFF9 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-um3PI5rXcCfzAFF9 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-um3PI5rXcCfzAFF9 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-um3PI5rXcCfzAFF9 .marker.cross{stroke:#333333;}#mermaid-svg-um3PI5rXcCfzAFF9 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-um3PI5rXcCfzAFF9 p{margin:0;}#mermaid-svg-um3PI5rXcCfzAFF9 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 .cluster-label text{fill:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 .cluster-label span{color:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 .cluster-label span p{background-color:transparent;}#mermaid-svg-um3PI5rXcCfzAFF9 .label text,#mermaid-svg-um3PI5rXcCfzAFF9 span{fill:#333;color:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 .node rect,#mermaid-svg-um3PI5rXcCfzAFF9 .node circle,#mermaid-svg-um3PI5rXcCfzAFF9 .node ellipse,#mermaid-svg-um3PI5rXcCfzAFF9 .node polygon,#mermaid-svg-um3PI5rXcCfzAFF9 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-um3PI5rXcCfzAFF9 .rough-node .label text,#mermaid-svg-um3PI5rXcCfzAFF9 .node .label text,#mermaid-svg-um3PI5rXcCfzAFF9 .image-shape .label,#mermaid-svg-um3PI5rXcCfzAFF9 .icon-shape .label{text-anchor:middle;}#mermaid-svg-um3PI5rXcCfzAFF9 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-um3PI5rXcCfzAFF9 .rough-node .label,#mermaid-svg-um3PI5rXcCfzAFF9 .node .label,#mermaid-svg-um3PI5rXcCfzAFF9 .image-shape .label,#mermaid-svg-um3PI5rXcCfzAFF9 .icon-shape .label{text-align:center;}#mermaid-svg-um3PI5rXcCfzAFF9 .node.clickable{cursor:pointer;}#mermaid-svg-um3PI5rXcCfzAFF9 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-um3PI5rXcCfzAFF9 .arrowheadPath{fill:#333333;}#mermaid-svg-um3PI5rXcCfzAFF9 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-um3PI5rXcCfzAFF9 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-um3PI5rXcCfzAFF9 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-um3PI5rXcCfzAFF9 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-um3PI5rXcCfzAFF9 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-um3PI5rXcCfzAFF9 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-um3PI5rXcCfzAFF9 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-um3PI5rXcCfzAFF9 .cluster text{fill:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 .cluster span{color:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-um3PI5rXcCfzAFF9 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-um3PI5rXcCfzAFF9 rect.text{fill:none;stroke-width:0;}#mermaid-svg-um3PI5rXcCfzAFF9 .icon-shape,#mermaid-svg-um3PI5rXcCfzAFF9 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-um3PI5rXcCfzAFF9 .icon-shape p,#mermaid-svg-um3PI5rXcCfzAFF9 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-um3PI5rXcCfzAFF9 .icon-shape .label rect,#mermaid-svg-um3PI5rXcCfzAFF9 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-um3PI5rXcCfzAFF9 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-um3PI5rXcCfzAFF9 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-um3PI5rXcCfzAFF9 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 终端文件系统
SFTP或SCP
SSH加密与封装
TCP字节流
IP数据包
802.11 Wi-Fi帧
无线电波
电脑Wi-Fi网卡
MobaXterm写入本地磁盘

7.1 应用层

负责:

  • 远程登录;
  • 执行命令;
  • 浏览目录;
  • 上传和下载文件。

7.2 传输层:TCP

TCP 提供:

  • 面向连接的字节流;
  • 按序交付;
  • 丢包重传;
  • 重复数据处理;
  • 流量控制;
  • 拥塞控制。

7.3 网络层:IP

在终端热点直连场景中:

text 复制代码
电脑:192.168.4.2/24
终端:192.168.4.1/24

电脑通常根据路由表选择本地直连接口,再通过邻居解析找到终端的链路层地址。

此过程不需要:

  • 默认路由;
  • NAT;
  • 因特网;
  • 运营商网络。

7.4 数据链路层:Wi‑Fi

Wi‑Fi 负责:

  • 无线关联;
  • 802.11 帧传输;
  • MAC 地址和介质访问;
  • 链路层确认与重传;
  • WPA2/WPA3 等无线链路保护。

Wi‑Fi 链路层重传解决的是局部无线链路错误;TCP 重传解决的是端到端数据可靠交付。两者工作层次不同。

7.5 物理层

数据最终通过无线电波传输。

常见 Wi‑Fi 频段包括:

text 复制代码
2.4 GHz
5 GHz
6 GHz

GNSS 嵌入式终端最常见的是 2.4 GHz,是否支持 5 GHz 或 6 GHz 取决于具体硬件和法规配置。


8. 是否需要额外路由器

8.1 终端工作在 AP 模式

电脑直接连接终端热点时,本地 SSH 只需要:

text 复制代码
无线链路正常
IP配置正确
二层通信未被隔离
SSH服务正常
认证信息正确

不需要额外路由器。

终端也不需要执行三层路由或 NAT,因为电脑访问的是终端自身的 IP 地址。

8.2 终端工作在 STA 模式

终端和电脑连接外部路由器或 AP 时,只要:

  • IP 路由可达;
  • 无客户端隔离;
  • 防火墙允许;
  • SSH 服务监听相应接口;

电脑就可以通过终端的局域网 IP 登录。


9. 为什么本地 Wi‑Fi 传文件不消耗付费流量

"流量"在日常语言中容易混淆,至少有两种含义。

9.1 网络传输的数据量

例如下载一个 100 MB 文件,电脑和终端之间确实传输了大约 100 MB 以上的数据。

无线链路上的实际数据量可近似表示为:

S W i F i = S f i l e + S p r o t o c o l + S r e t r a n s S_{\mathrm{WiFi}} =S_{\mathrm{file}} +S_{\mathrm{protocol}} +S_{\mathrm{retrans}} SWiFi=Sfile+Sprotocol+Sretrans

其中:

  • S W i F i S_{\mathrm{WiFi}} SWiFi:Wi‑Fi 链路实际传输的数据总量;
  • S f i l e S_{\mathrm{file}} Sfile:文件本身大小;
  • S p r o t o c o l S_{\mathrm{protocol}} Sprotocol:SSH、SFTP、TCP、IP 和 Wi‑Fi 等协议产生的额外数据;
  • S r e t r a n s S_{\mathrm{retrans}} Sretrans:因无线干扰或丢包产生的重传数据量。

所以,从技术角度说,Wi‑Fi 上存在"数据流量"。

9.2 运营商计费流量

手机套餐或 SIM 卡中的"流量",通常指:

数据经过运营商 4G/5G 基站和核心网时产生的蜂窝网络计费数据量。

本地文件下载的数据路径是:

text 复制代码
GNSS终端
→ 本地Wi-Fi
→ 电脑

而不是:

text 复制代码
GNSS终端
→ 4G/5G基站
→ 运营商网络
→ 因特网
→ 电脑

因此,正常的本地 Wi‑Fi 下载:

text 复制代码
不经过运营商基站
不使用终端SIM卡
不使用电脑手机套餐
不消耗4G/5G计费流量

可以类比为:

用 U 盘复制文件会产生数据传输,但不会消耗手机套餐流量。

本地 Wi‑Fi 只是把"有线复制"换成了"无线复制"。

9.3 Wi‑Fi 数据从哪里来

下载文件时,数据内容来自:

  • 终端存储器;
  • GNSS 板卡输出;
  • 定位算法结果;
  • 日志程序;
  • 终端上的其他应用程序。

Wi‑Fi 模块只负责把这些数据转换成无线信号并发送。

它消耗的是:

  • 终端电能;
  • 无线信道资源;
  • CPU 和存储器资源;

而不是自动消耗运营商流量套餐。


10. 哪些情况下才可能产生付费流量

电脑通过终端热点下载终端本地文件时,不需要 4G 卡。

只有数据真正经过收费的外部网络时,才可能产生付费流量。

10.1 不产生蜂窝计费流量的情况

text 复制代码
电脑连接终端热点
→ SSH登录终端
→ 下载终端存储器中的文件

这个过程只需要:

  • 终端 Wi‑Fi 模块;
  • 电脑 Wi‑Fi 网卡;
  • 本地 IP 地址;
  • SSH/SFTP 服务。

不需要:

  • 4G/5G 模块;
  • SIM 卡或 eSIM;
  • 运营商套餐;
  • 因特网连接。

10.2 可能产生蜂窝计费流量的情况

如果终端还通过 4G/5G 连接外部网络,例如:

  • 上传文件到云服务器;
  • 连接远程 NTRIP Caster;
  • 接收互联网改正数;
  • 向中心服务器回传观测数据;
  • 通过 4G/5G 给电脑共享互联网;
  • 远程人员通过蜂窝网络维护终端;

这些数据经过运营商网络,通常会消耗 SIM 卡套餐。
#mermaid-svg-mSX9dwtu64ixMPxX{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-mSX9dwtu64ixMPxX .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-mSX9dwtu64ixMPxX .error-icon{fill:#552222;}#mermaid-svg-mSX9dwtu64ixMPxX .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-mSX9dwtu64ixMPxX .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-mSX9dwtu64ixMPxX .marker{fill:#333333;stroke:#333333;}#mermaid-svg-mSX9dwtu64ixMPxX .marker.cross{stroke:#333333;}#mermaid-svg-mSX9dwtu64ixMPxX svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-mSX9dwtu64ixMPxX p{margin:0;}#mermaid-svg-mSX9dwtu64ixMPxX .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-mSX9dwtu64ixMPxX .cluster-label text{fill:#333;}#mermaid-svg-mSX9dwtu64ixMPxX .cluster-label span{color:#333;}#mermaid-svg-mSX9dwtu64ixMPxX .cluster-label span p{background-color:transparent;}#mermaid-svg-mSX9dwtu64ixMPxX .label text,#mermaid-svg-mSX9dwtu64ixMPxX span{fill:#333;color:#333;}#mermaid-svg-mSX9dwtu64ixMPxX .node rect,#mermaid-svg-mSX9dwtu64ixMPxX .node circle,#mermaid-svg-mSX9dwtu64ixMPxX .node ellipse,#mermaid-svg-mSX9dwtu64ixMPxX .node polygon,#mermaid-svg-mSX9dwtu64ixMPxX .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-mSX9dwtu64ixMPxX .rough-node .label text,#mermaid-svg-mSX9dwtu64ixMPxX .node .label text,#mermaid-svg-mSX9dwtu64ixMPxX .image-shape .label,#mermaid-svg-mSX9dwtu64ixMPxX .icon-shape .label{text-anchor:middle;}#mermaid-svg-mSX9dwtu64ixMPxX .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-mSX9dwtu64ixMPxX .rough-node .label,#mermaid-svg-mSX9dwtu64ixMPxX .node .label,#mermaid-svg-mSX9dwtu64ixMPxX .image-shape .label,#mermaid-svg-mSX9dwtu64ixMPxX .icon-shape .label{text-align:center;}#mermaid-svg-mSX9dwtu64ixMPxX .node.clickable{cursor:pointer;}#mermaid-svg-mSX9dwtu64ixMPxX .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-mSX9dwtu64ixMPxX .arrowheadPath{fill:#333333;}#mermaid-svg-mSX9dwtu64ixMPxX .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-mSX9dwtu64ixMPxX .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-mSX9dwtu64ixMPxX .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-mSX9dwtu64ixMPxX .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-mSX9dwtu64ixMPxX .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-mSX9dwtu64ixMPxX .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-mSX9dwtu64ixMPxX .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-mSX9dwtu64ixMPxX .cluster text{fill:#333;}#mermaid-svg-mSX9dwtu64ixMPxX .cluster span{color:#333;}#mermaid-svg-mSX9dwtu64ixMPxX div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-mSX9dwtu64ixMPxX .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-mSX9dwtu64ixMPxX rect.text{fill:none;stroke-width:0;}#mermaid-svg-mSX9dwtu64ixMPxX .icon-shape,#mermaid-svg-mSX9dwtu64ixMPxX .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-mSX9dwtu64ixMPxX .icon-shape p,#mermaid-svg-mSX9dwtu64ixMPxX .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-mSX9dwtu64ixMPxX .icon-shape .label rect,#mermaid-svg-mSX9dwtu64ixMPxX .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-mSX9dwtu64ixMPxX .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-mSX9dwtu64ixMPxX .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-mSX9dwtu64ixMPxX :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 不经过运营商
本地文件下载

终端↔电脑
不消耗蜂窝套餐
远程上传或联网

终端→4G/5G
运营商基站
运营商核心网
远端服务器
通常消耗套餐流量

10.3 特殊情况:同一个热点中可能同时存在两类数据

如果终端把 4G/5G 网络共享给电脑,那么:

  • 电脑访问网页、下载互联网文件会使用终端 SIM 卡流量;
  • 电脑从终端本地存储器下载文件,仍然是本地传输;
  • 两类数据都经过终端 Wi‑Fi 热点,但最终路径不同。

判断是否消耗蜂窝流量的关键不是:

text 复制代码
是否使用Wi-Fi

而是:

text 复制代码
数据是否离开本地局域网,并经过4G/5G运营商网络

11. 什么时候才需要 4G/5G

当终端需要连接远端网络时,才可能使用蜂窝通信,例如:

  • 上传文件到云服务器;
  • 连接远程 NTRIP Caster;
  • 接收互联网改正数;
  • 向中心服务器回传观测数据;
  • 远程监控设备;
  • 异地维护终端。

#mermaid-svg-K5WdH79pYKHugvnp{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-K5WdH79pYKHugvnp .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-K5WdH79pYKHugvnp .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-K5WdH79pYKHugvnp .error-icon{fill:#552222;}#mermaid-svg-K5WdH79pYKHugvnp .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-K5WdH79pYKHugvnp .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-K5WdH79pYKHugvnp .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-K5WdH79pYKHugvnp .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-K5WdH79pYKHugvnp .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-K5WdH79pYKHugvnp .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-K5WdH79pYKHugvnp .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-K5WdH79pYKHugvnp .marker{fill:#333333;stroke:#333333;}#mermaid-svg-K5WdH79pYKHugvnp .marker.cross{stroke:#333333;}#mermaid-svg-K5WdH79pYKHugvnp svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-K5WdH79pYKHugvnp p{margin:0;}#mermaid-svg-K5WdH79pYKHugvnp .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-K5WdH79pYKHugvnp .cluster-label text{fill:#333;}#mermaid-svg-K5WdH79pYKHugvnp .cluster-label span{color:#333;}#mermaid-svg-K5WdH79pYKHugvnp .cluster-label span p{background-color:transparent;}#mermaid-svg-K5WdH79pYKHugvnp .label text,#mermaid-svg-K5WdH79pYKHugvnp span{fill:#333;color:#333;}#mermaid-svg-K5WdH79pYKHugvnp .node rect,#mermaid-svg-K5WdH79pYKHugvnp .node circle,#mermaid-svg-K5WdH79pYKHugvnp .node ellipse,#mermaid-svg-K5WdH79pYKHugvnp .node polygon,#mermaid-svg-K5WdH79pYKHugvnp .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-K5WdH79pYKHugvnp .rough-node .label text,#mermaid-svg-K5WdH79pYKHugvnp .node .label text,#mermaid-svg-K5WdH79pYKHugvnp .image-shape .label,#mermaid-svg-K5WdH79pYKHugvnp .icon-shape .label{text-anchor:middle;}#mermaid-svg-K5WdH79pYKHugvnp .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-K5WdH79pYKHugvnp .rough-node .label,#mermaid-svg-K5WdH79pYKHugvnp .node .label,#mermaid-svg-K5WdH79pYKHugvnp .image-shape .label,#mermaid-svg-K5WdH79pYKHugvnp .icon-shape .label{text-align:center;}#mermaid-svg-K5WdH79pYKHugvnp .node.clickable{cursor:pointer;}#mermaid-svg-K5WdH79pYKHugvnp .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-K5WdH79pYKHugvnp .arrowheadPath{fill:#333333;}#mermaid-svg-K5WdH79pYKHugvnp .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-K5WdH79pYKHugvnp .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-K5WdH79pYKHugvnp .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-K5WdH79pYKHugvnp .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-K5WdH79pYKHugvnp .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-K5WdH79pYKHugvnp .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-K5WdH79pYKHugvnp .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-K5WdH79pYKHugvnp .cluster text{fill:#333;}#mermaid-svg-K5WdH79pYKHugvnp .cluster span{color:#333;}#mermaid-svg-K5WdH79pYKHugvnp div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-K5WdH79pYKHugvnp .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-K5WdH79pYKHugvnp rect.text{fill:none;stroke-width:0;}#mermaid-svg-K5WdH79pYKHugvnp .icon-shape,#mermaid-svg-K5WdH79pYKHugvnp .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-K5WdH79pYKHugvnp .icon-shape p,#mermaid-svg-K5WdH79pYKHugvnp .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-K5WdH79pYKHugvnp .icon-shape .label rect,#mermaid-svg-K5WdH79pYKHugvnp .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-K5WdH79pYKHugvnp .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-K5WdH79pYKHugvnp .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-K5WdH79pYKHugvnp :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} GNSS终端
4G/5G模块
运营商基站
运营商核心网
因特网或专网
远端服务器

通常还需要:

  • 4G/5G 模块;
  • SIM 卡或 eSIM;
  • 可用的数据业务;
  • 蜂窝网络覆盖;
  • 正确的 APN 和路由配置。

移动网络常位于 NAT 或 CGNAT 后,外部电脑通常不能直接主动 SSH 到终端。

远程维护常采用:

  • VPN;
  • 终端主动建立反向连接;
  • 专用 APN;
  • 公网地址;
  • 云端设备管理平台。

12. Wi‑Fi 与 4G/5G 的区别

对比项 Wi‑Fi 4G/5G
连接对象 附近电脑、AP 或路由器 运营商基站
典型覆盖范围 局部区域 更大地理范围
是否需要 SIM/eSIM 不需要 通常需要
是否消耗蜂窝套餐 本地传输不消耗 通常消耗
典型用途 本地配置、文件下载 远程联网、数据回传
主要依赖 距离、频段和无线环境 基站覆盖、APN 和数据业务
是否必然接入因特网 也不必然,可接运营商专网

终端可以:

  • 只有 Wi‑Fi;
  • 只有 4G/5G;
  • 同时具有两者;
  • 让不同接口承担不同任务。

13. 下载速度由什么决定

文件有效下载速率为:

$$

R_{\mathrm{file}}

\frac{S_{\mathrm{file}}}{T_{\mathrm{download}}}

$$

其中:

  • R f i l e R_{\mathrm{file}} Rfile:文件有效下载速率;
  • S f i l e S_{\mathrm{file}} Sfile:文件大小;
  • T d o w n l o a d T_{\mathrm{download}} Tdownload:下载完成所需时间。

实际速率通常受最慢环节限制,可近似写为:

R f i l e ≤ min ⁡ ( R W i F i , R s t o r a g e , R p r o c e s s i n g , R t r a n s p o r t , R d i s k ) R_{\mathrm{file}} \le \min \left( R_{\mathrm{WiFi}}, R_{\mathrm{storage}}, R_{\mathrm{processing}}, R_{\mathrm{transport}}, R_{\mathrm{disk}} \right) Rfile≤min(RWiFi,Rstorage,Rprocessing,Rtransport,Rdisk)

其中:

  • R W i F i R_{\mathrm{WiFi}} RWiFi:Wi‑Fi 链路有效速率;
  • R s t o r a g e R_{\mathrm{storage}} Rstorage:终端存储器读取速率;
  • R p r o c e s s i n g R_{\mathrm{processing}} Rprocessing:终端和电脑处理 SSH 加解密的速率;
  • R t r a n s p o r t R_{\mathrm{transport}} Rtransport:TCP 在当前网络条件下的有效吞吐率;
  • R d i s k R_{\mathrm{disk}} Rdisk:电脑本地磁盘写入速率;
  • min ⁡ ( ⋅ ) \min(\cdot) min(⋅):取所有环节中的最小值。

无线干扰、信号强度、协议开销和重传都会降低实际下载速度。


14. 常见故障排查

现象 优先检查
Wi‑Fi 无法连接 SSID、密码、信号、频段兼容性、终端热点是否启动
Wi‑Fi 已连接,终端 IP 不通 电脑 IP、前缀长度、终端 IP、客户端隔离、防火墙
TCP 22 端口失败 SSH 服务是否启动、端口是否修改、服务监听地址、防火墙
TCP 端口正常但登录失败 用户名、密码、私钥、账号权限和 SSH 配置
SSH 能登录但无文件浏览器 SFTP 子系统、MobaXterm 设置、目录权限
可以浏览但不能下载 文件权限、目录权限、本地磁盘空间、保存路径
下载经常中断 Wi‑Fi 信号、干扰、终端重启、电脑休眠、存储异常
连接终端 Wi‑Fi 后不能上网 终端无外网、未配置路由/NAT、电脑默认路由变化

14.1 持续写入的 GNSS 文件

GNSS 数据文件可能仍在持续追加。

直接下载时,可能出现:

  • 下载过程中远端文件继续变大;
  • 本地文件只是某一时刻的快照;
  • 文件尾部记录不完整;
  • 文件头中的统计量尚未最终更新。

更稳妥的方式是:

text 复制代码
停止记录并关闭文件
或
在终端上复制出一个稳定快照
再下载

15. 安全建议

  • 修改默认 Wi‑Fi 和 SSH 密码;
  • 优先使用 WPA2 或 WPA3;
  • 通过可信渠道核对 SSH 主机指纹;
  • 优先使用 SSH 密钥认证;
  • 限制 root 远程登录;
  • 不把 SSH 直接暴露到不可信公网;
  • 定期更新终端系统和 SSH 软件;
  • 维护结束后关闭不必要的热点;
  • 远程维护优先使用 VPN 或受控管理平台。

16. 核心总结

16.1 终端热点是什么

text 复制代码
终端开启Wi-Fi热点
→ 在周围建立一个本地无线局域网
→ 相当于电脑和终端之间接了一根无线网线

16.2 MobaXterm 为什么能下载文件

text 复制代码
MobaXterm连接终端IP和SSH端口
→ SSH完成登录与加密
→ SFTP/SCP请求读取文件
→ 终端从存储器读取数据
→ 通过本地Wi-Fi发送给电脑

16.3 为什么不需要付费流量

text 复制代码
文件路径:
终端存储器
→ 本地Wi-Fi
→ 电脑磁盘

这条路径不经过:

text 复制代码
运营商基站
4G/5G核心网
因特网

因此,不消耗 SIM 卡或手机套餐中的蜂窝数据流量。

16.4 什么时候才会产生付费流量

text 复制代码
数据通过4G/5G上传到远程服务器
电脑通过终端共享的4G/5G访问互联网
终端通过蜂窝网络接收远程数据

这些情况才通常会消耗运营商套餐。

最关键的一句话是:

Wi‑Fi 只是一种本地无线传输方式;是否收费,取决于数据是否经过运营商的收费网络,而不是取决于是否使用 Wi‑Fi。

相关推荐
爱刷碗的苏泓舒1 小时前
网络通信入门:静态 IP、动态 IP、路由器、交换机与手机热点
网络·智能手机·路由器·网络通信·交换机·手机热点·终端调试
智联物联2 天前
多业务同步4G回传,工业路由器赋能高速道路远程监控
远程监控·数据传输·智慧交通·4g模块·无线组网·高速道路·大屏控制
海途信息2 天前
厘米级精度赋能工程安全:RTK 技术在边坡监测中的应用价值
gnss·rtk·边坡监测·厘米级定位
爱刷碗的苏泓舒2 天前
为什么需要 RTCM 多电文标识?轨道、钟差、码偏差如何封装?
gnss·编解码·rtcm·rtcm-ssr·igs-ssr·ppp-rtk
雾沉川3 天前
Netcatty 开源 SSH 客户端完整技术使用教程
运维·开源·ssh
网络小白不怕黑3 天前
13.SSH服务相关配置
服务器·网络·ssh
柠石榴4 天前
远程连接校内服务器 ssh
运维·服务器·ssh
daad7774 天前
记录ssh远程查看对端的摄像头显示
运维·ssh
万亿少女的梦1685 天前
基于STM32F103C8T6与ASR Pro的语音控制四足机器人设计
stm32·语音识别·嵌入式系统·四足机器人·舵机控制