Solucionar problemas do RDP Shortpath para redes públicas
Se você estiver tendo problemas ao usar o RDP Shortpath para redes públicas, use as informações deste artigo para ajudar a solucionar problemas.
Verificando a conectividade do servidor STUN/TURN e o tipo de NAT
Você pode validar a conectividade com os pontos de extremidade STUN/TURN e verificar se a funcionalidade UDP básica funciona executando o executável avdnettest.exe
. Aqui está um link para download da versão mais recente do avdnettest.exe.
Você pode executar avdnettest.exe
clicando duas vezes no arquivo ou executando-o a partir da linha de comando. A saída será semelhante a esta se a conectividade for bem-sucedida:
Checking DNS service ... OK
Checking TURN support ... OK
Checking ACS server 20.202.68.109:3478 ... OK
Checking ACS server 20.202.21.66:3478 ... OK
You have access to TURN servers and your NAT type appears to be 'cone shaped'.
Shortpath for public networks is very likely to work on this host.
Informações de erro registradas no Log Analytics
Aqui estão alguns títulos de erro que você pode ver conectados no Log Analytics e o que eles significam.
ShortpathTransportNetworkDrop
Para TCP, diferenciamos dois caminhos diferentes - o host de sessão para o gateway e o gateway para o cliente - mas isso não faz sentido para UDP, pois não há um gateway. A outra distinção para TCP é que, em muitos casos, um dos pontos de extremidade, ou talvez alguma infraestrutura no meio, gera um pacote TCP Reset (bit de controle RST), que causa um desligamento rígido da conexão TCP. Isso funciona porque TCP RST (e também TCP FIN para desligamento normal) é manipulado pelo sistema operacional e também alguns roteadores, mas não o aplicativo. Isso significa que, se um aplicativo falhar, o Windows notificará o correspondente de que a conexão TCP desapareceu, mas esse mecanismo não existe para UDP.
A maioria dos erros de conexão, como ConnectionFailedClientDisconnect e ConnectionFailedServerDisconnect, são causados por pacotes TCP Reset, não por um tempo limite. Não há como o sistema operacional ou um roteador sinalizar qualquer coisa com UDP, então a única maneira de saber que o par desapareceu é por uma mensagem de tempo limite.
ShortpathTransportReliabilityThresholdFailure
Esse erro é acionado se um pacote específico não passar, mesmo que a conexão não esteja desativada. O pacote é reenviado até 50 vezes, portanto, é improvável, mas pode acontecer nos seguintes cenários:
A conexão era muito rápida e estável antes de parar de funcionar repentinamente. O tempo limite necessário até que um pacote seja declarado perdido depende do tempo de ida e volta (RTT) entre o cliente e o host da sessão. Se o RTT for muito baixo, um lado pode tentar reenviar um pacote com muita frequência, de modo que o tempo que leva para atingir 50 tentativas pode ser menor do que o valor de tempo limite habitual de 17 segundos.
O pacote é muito grande. O tamanho máximo do pacote que pode ser transmitido é limitado. O tamanho do pacote é sondado, mas pode flutuar e, às vezes, encolher. Se isso acontecer, é possível que o pacote que está sendo enviado seja muito grande e falhe consistentemente.
ConexãoBrokenMissedHeartbeatThresholdExcedido
Este é um tempo limite de nível RDP. Devido à configuração incorreta, o tempo limite do nível RDP às vezes era acionado antes do tempo limite do nível UDP.