PlainApp 中文文档 下载 App

ping 测试、端口、HTTPS 警告逐条解释

ping 测试到底能告诉我什么

ping 是最基础的网络连通性测试工具——它发一个小 ICMP 包到目标 IP,然后等对方回。有回 = 网络层通了;无回 = 网络层不通。

PlainApp 浏览器打不开时第一反应就是跑 ping:

Windows

# 打开 Command Prompt(Win+R → cmd)
ping 192.168.1.50   # 换成手机上显示的 IP

macOS / Linux

ping 192.168.1.50

三种结果怎么解读

结果含义下一步
有回复:64 bytes from 192.168.1.50: icmp_seq=1 ttl=64 time=5.2 ms✅ 电脑和手机之间网络层完全通了问题在上层——浏览器 / 端口 / 证书警告
Request timeout / 100% 丢包❌ 电脑根本找不到这个 IP检查 Wi-Fi 是否同一台、AP Isolation、VPN
Destination host unreachable❌ 连子网都不对检查电脑自己的 IP 网段(cmd 里 ipconfig)

ping 有回复但浏览器还是打不开

这时候问题就细了:

  1. 端口对吗? 手机上 PlainApp 显示的可能是 http://192.168.x.x:8080 和 https://192.168.x.x:8443 两个地址,都试试
  2. http / https 搞反了? 浏览器自动把 http:// 升级成 https:// 有时会导致握手失败——手动输完整地址
  3. 浏览器缓存问题 — 无痕模式开一下试试、或 Ctrl+Shift+Delete 清缓存
  4. 浏览器 WebCodecs 不支持(影响屏幕镜像等功能)— 更新浏览器到最新版

端口号:8080 vs 8443

PlainApp 默认同时开两个端口:

端口协议说明
8080HTTP明文 HTTP + 应用层 XChaCha20 加密。没有 TLS 层
8443HTTPSTLS + XChaCha20 双重加密。推荐用

PlainApp 手机端界面上会同时显示两个地址。选哪个:

端口冲突

极少数情况 8080 或 8443 被系统其他 App 占用——这时候 PlainApp 会在界面显示 Port In Use 错误。解决:

HTTPS 自签名证书警告到底安不安全

这是用户最纠结的问题。分三层回答:

第一层:"这个警告是什么意思"

浏览器警告的是:"我没法验证这个 HTTPS 证书确实是你要访问的那个服务器发的"——因为 PlainApp 用的是自己生成的自签名证书,不是 DigiCert / Let's Encrypt 这类权威 CA 颁发的。

浏览器没法确认"发证书的就是你手机",所以警告。

第二层:"跳过这个警告后数据安全吗"

安全。两层加密:

第三层:"真的有危险吗"

理论上,同一 Wi-Fi 上的恶意设备可以发起 MITM 攻击:

  1. 恶意设备假装是你的手机、发另一个自签名证书
  2. 浏览器显示警告,但用户点了"继续前往"——用户不知道证书被换了
  3. TLS 加密被恶意设备解密、查看明文、再重新加密发给你

但——PlainApp 的应用层 XChaCha20 加密密钥不在 TLS 层交换,而是在第一次 HTTP 请求后通过应用层握手交换的。MITM 拿不到这个应用层密钥,解不开 XChaCha20 加密的内容。

所以即使 TLS 被中间人攻破,PlainApp 应用层加密也让攻击者拿不到实际数据。

完全消除警告的做法

手动把 PlainApp 自签名证书导入浏览器信任存储。但这个操作涉及导出证书、导入 Chrome/Firefox/Safari 各自的信任存储——每个浏览器都要做一遍,繁琐。通常不值得花这个时间,点"继续前往"就够了。

mDNS 友好名 plainapp.local

PlainApp 有时会显示 http://plainapp.local:8080 这个地址——这是 mDNS(Bonjour)自动生成的友好名称,路由器支持 mDNS 时可以用它访问,不用记 IP。

但 mDNS 支持度参差不齐:

如果 plainapp.local 打不开,直接用 IP:端口就行——数字地址一定靠谱。