Talvez um pouco atrasado para outro tipo de resposta, mas vou jogar aqui mesmo assim. Eu também tenho outra pegadinha na minha configuração.
Acabei de encontrar exatamente o mesmo problema e segui as migalhas de logs dos quatro servidores (rdgw, ts01, ts02 e rdbroker). Eu também uso auto-certificados emitidos em todos os servidores, mas o RDGW e os avisos de popa realmente fornecem um meio para estimar onde o atraso é para além de olhar para os logs. Meu cenário é como um cartaz original que há um enorme atraso no evento de um redirecionamento. Promts de certificado mostram que o cliente está rapidamente conectado ao TS / redirecionador inicial. Se este é o TS onde a sessão reside, tudo bem. Se o cliente for redirecionado, a conexão ao TS correto leva exatamente 23 segundos. Toda vez!
Veja a explicação passo a passo da Microsoft ( link ) na etapa 6, a conexão inicial TS emite um comando de redirecionamento para o cliente e fornece o endereço IP do TS correto. Aqui está a questão do jeito que eu vejo. A conexão inicial por meio de RDGW é feita usando o FQDN interno do TS / redirecionador inicial. A conexão redirecionada é feita usando o endereço IP interno do TS correto, não o FQDN. Na verdade, posso reproduzir esse atraso usando o endereço IP interno do TS / redirecionador inicial. Ou qualquer outro stand alone TS no meu domínio e domínios filho. Nesse caso, também recebo um atraso de 23 segundos na conexão inicial.
A minha opinião sobre esta questão é que
- O redirecionamento é feito por endereço IP, não pelo FQDN
- A implementação do RDGW ou do cliente tem um problema de atraso usando o endereço IP
- A pegadinha: o cliente RDP do Windows 8.1 (6.3.9600) falha ao conectar-se ao servidor redirecionado. Nenhum evento de logon é registrado no TS onde a sessão do usuário reside. O cliente RDP simplesmente fica sempre tentando se conectar - não tem tempo limite.
editar;
Mas sim, o "Bypass RD Gateway Server para endereços locais" fez o truque. Tipo de idiota como o endereço IP retornado não é perto de estar em qualquer sub-rede local em meus clientes. Felizmente, eu gero arquivos RDP com um script para meus clientes, então poderei contornar esse problema com bastante facilidade.