Заморозка RDP через VPN: ввод всё ещё работает, поэтому проверьте транспорт
Замёрзшая картинка RDP с работающим вводом — не упавший туннель. Проверьте транспорт клиента, политику UDP и случай одного узла, прежде чем менять маршруты.
Когда картинка перестаёт обновляться, но мышь всё ещё скользит по удалённому рабочему столу, очевидный вывод — VPN отвалился. Этот вывод обычно неверен. Замёрзший кадр с работающим вводом означает, что сеанс и его канал ввода живы, и это смещает неисправность в сторону транспорта графики, а не маршрутизации или учётных данных. Два быстрых наблюдения разделяют три неисправности, которые пользователи описывают одним словом.
Чего заморозка вам не говорит
Удалённый рабочий стол передаёт ввод и обновления экрана по TCP 3389, а текущие клиенты Windows могут добавить транспорт UDP для графически тяжёлой части потока. В туннеле, который фрагментирует или отбрасывает более крупные датаграммы, надёжный канал продолжает нести нажатия клавиш, пока графический канал застревает. Результат — странное сочетание застывшей картинки и отзывчивой клавиатуры. Это также объясняет, почему переподключение иногда лечит симптом на минуту, а затем возвращает его.
Сеанс, который отключается и подключается снова, — это другая неисправность, а тот, который вообще не открывается, — третья. Если сначала назвать форму, вы не будете проверять не тот уровень.
Разделите три неисправности двумя командами
Исключить доступность дёшево. Проверьте порт RDP с клиента, затем прочитайте состояние сеанса на узле.
Test-NetConnection rdp-host.example.com -Port 3389
query user /server:rdp-hostНеудачный тест TCP означает, что сеанс так и не открылся, поэтому рассматривайте это как проблему брандмауэра, области или службы, а не как заморозку. Успешный тест с активным сеансом подтверждает, что канал управления существует, и это как раз случай замёрзшей картинки. Запускайте запрос к узлу из учётной записи, которой разрешено видеть сеансы, потому что ошибка прав выглядит как пустой список. Запишите ID и состояние сеанса, так как отключённый сеанс, сохраняющий свой ID, не то же самое, что активный.
Отключите транспорт UDP и сравните
Если застревает только изображение, сравнивайте транспорт клиента по одному изменению за раз. Встроенный клиент и клиент из Store не разделяют один стек, а политика ниже убирает UDP из встроенного клиента.
reg query "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client" /v fClientDisableUDPЗначение 1 означает, что UDP для этого клиента уже отключён, поэтому заморозка, переживающая эту настройку, не является проблемой пути UDP. Если значение отсутствует, включите политику, переподключитесь и повторите в точности то действие, которое замерло раньше. Проверяйте клиент из Store отдельным шагом, а не объединяйте оба изменения, иначе вы не узнаете, какое имело значение. Сохраняйте версию клиента в заметках, потому что поведение транспорта менялось между выпусками Windows.
Когда замерзает один узел, а остальные в порядке
Единственный сбойный узел в остальном здоровой подсети указывает в сторону от туннеля. Проверьте MTU пути и стек удалённого отображения, прежде чем трогать настройки VPN.
ping -f -l 1472 rdp-host.example.comОтвет доказывает, что путь несёт пакет полного размера без фрагментации при этом размере, а сбой с флагом запрета фрагментации говорит о том, что MTU туннеля требует внимания. Если 1472 байта проходят и замерзает только этот узел, смотрите на его графический драйвер и нагрузку, а не на сеть. Быстрое копирование файла на ту же машину говорит о пропускной способности, а не о графическом канале RDP. Меняйте по одной переменной и повторяйте одно и то же действие на экране, чтобы сравнение что-то значило.
Если сеанс вообще не открывается, остановитесь здесь, потому что это доступность, а не заморозка. В противном случае сохраните настройку транспорта, изменившую симптом, и запишите её вместе с версией клиента.