windows 11远程桌面连Ubuntu GNOME 远程登录频繁断开

现象

使用 Windows 11 远程桌面连接 Ubuntu 26.04 的 GNOME 远程桌面服务时,连接可建立,但几分钟后总是报"内部错误"并断开。

bash 复制代码
[10:25:19:112] [ERROR][com.freerdp.core.rdp] - Received invalid TPKT header length 604, 218 bytes too long!
[10:25:19:247] [WARN][com.freerdp.core.peer] - Unexpected client message in state CONNECTION_STATE_FINALIZATION_FONT_LIST, missing flag FINALIZE_CS_FONT_LIST_PDU [0x00000100]
[RDP] Sending server redirection
[10:25:20:341] [ERROR][com.freerdp.core.peer] - rdp_set_error_info: ERRINFO_LOGOFF_BY_USER [0x0001000C]
[RDP] Network or intentional disconnect, stopping session
[10:25:20:342] [ERROR][com.freerdp.core.transport] - BIO_should_retry returned an error: error:80000020:system library::Broken pipe
g_atomic_ref_count_dec: assertion 'old_value > 0' failed

日志解读

  1. TPKT 头异常:收到的 RDP 数据包 TPKT 头声称长度为 604 字节,实际多出 218 字节,数据解析错位。
  2. 字体列表协商失败 :在 CONNECTION_STATE_FINALIZATION_FONT_LIST 阶段,客户端未提供预期的 FINALIZE_CS_FONT_LIST_PDU 标志,FreeRDP 服务端无法处理。
  3. 误判用户注销 :协议状态异常被错误映射为 ERRINFO_LOGOFF_BY_USER,服务端主动终止连接,触发 Broken pipe

根本原因是 Windows 11 RDP 客户端开启字体平滑后,发送的字体列表数据与 GNOME 远程桌面使用的 FreeRDP 服务端不兼容,协商失败导致连接被强行关闭。

解决方案

在 Windows 远程桌面客户端中降低连接速度预设,禁用字体平滑等高级视觉效果,避免协议冲突。

操作步骤:

  • 打开远程桌面连接 → 点击"显示选项"。
  • 在"体验"选项卡中,将"连接速度"从"自动检测"改为 "调制解调器(56 Kbps)""低速宽带(256 Kbps - 2 Mbps)"
  • 连接目标主机。

设置后字体平滑、桌面背景等功能会被自动禁用,但连接稳定性得到保证。验证时可观察日志是否不再出现 FINALIZE_CS_FONT_LIST_PDU 错误,会话是否保持不断。

相关推荐
孙启超3 小时前
【AI开发之Rust】第 13 课:async/await 与 tokio 异步运行时
开发语言·后端·rust
SimonKing3 小时前
SpringBoot 集成 SSE 实现服务端推送或可代替Websocket
java·后端·程序员
字节探索3 小时前
Redis 只会当缓存用?这 10 大实战场景,让你的系统快到飞起
redis·后端
Sam_Deep_Thinking3 小时前
关于java final关键字的可见性
java·后端·面试·程序员
Thneonl4 小时前
你的 Pod 为什么 Pending:调度器两阶段
后端·kubernetes
zihan5184 小时前
自己做软件日记9/21 得到了一个良好的文件结构框架
后端·flutter·前端框架·android studio
乌暮5 小时前
Java 抽象类与接口详解:半成品图纸 vs 能力合同
java·开发语言·后端·学习
一条泥憨鱼5 小时前
苍穹外卖【day12| 工作台,通过Apache POI导入/导出运营数据】
java·后端·苍穹外卖
IT_陈寒5 小时前
Redis大key删除引发的服务雪崩,这次我真记住了
前端·人工智能·后端
努力的小雨5 小时前
10 个任务拆成 22 项能力,Seed 2.1 Pro 哪些方向值得用?
后端