Erro de VPN 10051: a rota, não a palavra-passe
WSAENETUNREACH descreve uma operação de socket que não encontrou nenhum caminho de rede. Verifique o ponto final, a família de endereços e a rota selecionada antes de tocar na confiança.
Um túnel Windows falha e o registo oferece o número 10051. Isso é WSAENETUNREACH, comunicado quando uma operação de socket não encontra nenhum caminho utilizável até ao destino. Não é uma palavra-passe rejeitada, um certificado expirado nem a prova de que o servidor viu um pacote do túnel e o recusou.
Duas operações diferentes podem produzi-lo na mesma sessão. Significam coisas diferentes e pertencem a donos diferentes.
O que o código comunica e o que não
O erro descreve uma decisão local: a pilha não conseguiu encontrar uma rota para o destino pedido, pelo que a operação nunca saiu da máquina. É uma afirmação sobre o caminho, não sobre a opinião da outra parte quanto às suas credenciais. Lê-lo como uma falha de autenticação envia-o para armazéns de certificados e reposições de conta por um problema que não podem causar. O código também não diz nada sobre se uma firewall mais abaixo teria permitido o pacote, porque não foi enviado nenhum pacote.
Guarde as linhas de registo em volta quando o anota. O número sozinho perde o destino, o transporte e o momento, e são esses três factos que tornam a entrada interpretável uma semana depois.
Que operação falhou, e quando
Um erro enquanto o cliente alcança o ponto final exterior da VPN é um caso diferente de uma falha de aplicação depois de o túnel estar estabelecido. No primeiro, o caminho de transporte até ao servidor falta ou foi retirado. No segundo, o túnel existe e algo lá dentro não consegue resolver ou encaminhar o destino pedido. Mesmo código, camada diferente, dono diferente. A marca temporal relativa à tentativa de ligação decide normalmente qual tem.
Cite a operação que falhou em vez de apenas o erro: ligação a que endereço, por que transporte e em que ponto da sequência. É essa formulação que permite a uma segunda pessoa reproduzir a decisão.
Compare o ponto final e a família de endereços
Registe o destino resolvido, o transporte e a porta. Se o nome devolver tanto um endereço IPv4 como um IPv6, uma verificação IPv4 que funciona não explica nada sobre uma tentativa IPv6 falhada. O cliente pode estar a tentar a família que nunca testou, e forçar a outra família altera a experiência em vez de a corrigir.
Resolve-DnsName vpn.example.net -Type A,AAAA
Find-NetRoute -RemoteIPAddress 198.51.100.62
Get-NetConnectionProfile
A consulta de rota devolve o melhor endereço local e a rota para esse destino no estado atual, por isso execute-a enquanto a falha estiver presente. Um adaptador desligado, uma rede alterada ou uma rota inesperada parecem todos diferentes depois de tudo ser reiniciado. Um segundo túnel ativo também pode capturar o caminho do ponto final, o que produz este código para um cliente e não para o outro.
Lembre-se do que é uma resposta de rota: uma decisão local, não uma autorização para enviar. Não lhe pode dizer se uma firewall aceitaria o datagrama nem se algo está à escuta no extremo distante.
Outros erros de socket e a passagem
O erro 10054 é um relatório diferente e, numa receção UDP, pode revelar um ICMP de porta inalcançável associado a um envio anterior. É uma mensagem sobre uma porta de destino específica, não uma afirmação de que não existe rota, e os dois levam a investigações diferentes. Tratar cada número de socket como uma variação de ligação falhada é a forma como uma rota em falta é 'reparada' reinstalando um cliente.
A passagem útil contém o código exato, a operação falhada, o ponto final e a família de endereços, a rota selecionada e a hora de qualquer alteração de rede. Corrija o problema de caminho demonstrado através de quem possui essa configuração. Substituir certificados ou desativar a verificação da outra parte não pode fornecer uma rota que não existe, e ambas tornam o diagnóstico final mais difícil.