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

相关推荐
高频因子挖掘机4 小时前
回测收益为什么可能不真实?从时间戳、数据可用性到未来函数检查
后端·github·api
行百里er13 小时前
Redis 完结篇——Redis 热点问题在 Spring Boot 项目中实战
redis·后端
高频因子挖掘机14 小时前
只取最近 60 个交易日,却每次拉全历史:量化脚本变慢的原因与改法
后端·github·api
孟健14 小时前
从5000亿Token到83%字节匹配:AI逆向工程与重构的工程闭环实践
后端·架构·ai编程
码事漫谈15 小时前
丢得静悄悄,谈一谈 Agent 的记忆是怎么没的
后端
迪飞特科技15 小时前
智慧物业平台实战:Spring Boot 整合小程序实现报修巡检费用全流程
spring boot·后端·小程序
考虑考虑15 小时前
@JsonInclude注解使用
spring boot·后端·spring
IT_陈寒16 小时前
Vite的这个问题坑了我三天,原来如此解决!
前端·人工智能·后端
网易云信16 小时前
大模型能上岗做销售吗?我们让 12 款国产模型交了 420 份作业
前端·后端
CCblandy16 小时前
HTTP 长连接 3 类故障实测:[WinError 10053]、99 个 TIME_WAIT、69 次多余握手,4 种对策怎么选
后端·python·网络协议·http·云原生·性能优化·架构