Working from home challenges–Remote Desktop Gateway Server does not work

The customer reported this issue
RemoteApp Disconnected.  Your computer can't connect to the Remote Desktop Gateway server.  Contact your network administrator for assistance.

from their Windows 10 v1909 laptop, connecting to a outsider vendors (OV) Windows 2016 RD Web Access box.

Before we get onto what the Outside Vendor recommended, here’s the fix I’d suggest:

Server-side fix

Set the EnforceChannelBinding registry value to 0 (zero) to ignore missing channel bindings on the Gateway server. To do this, locate the following registry subkey, and use the given specifications:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\TerminalServerGateway\Config\Core

Type: REG_DWORD
Name: EnforceChannelBinding
Value: 0 (Decimal)
Note By default, the EnforceChannelBinding value does not exist on the Gateway server. You must create this value.

Microsoft: Terminal Services client connection error 0xC000035B when you use LmCompatibility

The Outside Vendor’s IT team advised:

Client-side fix
Please try to add this entry:
HKCU\Software\Microsoft\Terminal Server Client\
RDGClientTransport     REG_DWORD     0x00000001

So what does RDGClientTransport do?

Well it sets which Remote Desktop transport to use, which with Windows 10 could be either

  • HTTP
  • UDP
  • RPC over HTTP (fallback)

The Remote Desktop Protocol v8 introduced the HTTP & UDP transports.

So the values for the RDGClientTransport registry key?

0 (default - HTTP) (also known at "negotiate NLA using TLS"
1 RPC over HTTP (also known as "RDP Security")
2 remoteDesktopGateway (WinHTTP)


Reference(s)

What’s new in Windows Server 2012 Remote Desktop Gateway
RemoteFX for WAN: Overview of Intelligent and Adaptive Transports in Windows 8 and Windows Server 2012
Lemmermann.tech – RDSH Troubleshooting
How to improve Remote Desktop performance for remote users through an RDS Gateway Server
K45440934: RDG not working with native RDP resources when using RDG-RPC
Remote Desktop Windows 10 Clients RDGClientTransport = 1 registry fix/hack?