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 错误,会话是否保持不断。

相关推荐
程序员清风1 小时前
AI不是万能的,大家要专注实践!
java·后端·面试
刘沅1 小时前
Redis的哨兵机制
后端·面试
AmazingEgg1 小时前
从 LIKE 到 Elasticsearch:博客搜索引擎可插拔改造全记录
后端
未秃头的程序猿1 小时前
MCP协议火了,但到底怎么用?我花了一个周末用Java接入了5个MCP Server
后端·ai编程·mcp
Cosolar1 小时前
Claude Opus 5 系统提示词被完整泄露,共 135027 字符、约 3.4 万 token
人工智能·后端·架构
Alan_751 小时前
RESTful API 落地的三个核心:资源建模、语义约束与工程化
后端
不一样的少年_1 小时前
原来 AI Agent 的核心循环这么简单:手搓一个 Agent Loop
前端·后端·agent
Conan在掘金1 小时前
鸿蒙报错速查:struct 里嵌 class 声明就炸,Unexpected token 编译报错,根因 + 真解法
后端
Conan在掘金1 小时前
鸿蒙报错速查:arkts-no-destruct-decls 禁用解构声明,const { x, y } = obj 就炸,根因 + 真解法
后端
她说彩礼65万2 小时前
ASP.NET Core 环境配置
后端·asp.net