Códigos de erro de VPN no Windows: qual etapa falhou e o que registrar
829, 703, 720, 691, 649: cada número nomeia uma etapa, e cada etapa tem as suas próprias provas. Registre uma tentativa, compare o log do gateway, mude uma camada.
Abra a caixa de diálogo da VPN do Windows depois de uma falha e ela lhe dará um número e uma frase, sendo a frase normalmente a metade menos útil. O número identifica qual etapa da conexão falhou, e a etapa determina qual log, qual configuração e qual equipe observar a seguir. Percorrer as etapas em ordem leva cerca de dez minutos e evita a sequência conhecida de reinstalar adaptadores, trocar protocolos e redefinir a pilha para consertar uma conta que nunca teve permissão de discar.
Leia o número como uma etapa
Uma conexão nativa passa por quatro marcos. Ela chega ao servidor e estabelece um enlace, negocia segurança, autentica o usuário e aplica endereçamento e roteamento. Uma falha em cada um deles deixa provas diferentes, e um código que pertence a uma etapa não diz nada útil sobre as outras.
O erro a evitar é tratar o código como gravidade. Uma falha de enlace e uma falha de autorização são lidas como "não foi possível conectar", e não têm mais nada em comum. A gravidade diz quão urgente algo é; a etapa diz o que abrir.
| Code family | Stage | Where the evidence lives |
|---|---|---|
| 829, 703 | Link or dial completion | Client event log, remote listener reachability |
| 720 | PPP negotiation and miniport binding | Adapter state, bindings, client log detail |
| 691, 649, 812 | Identity and authorization | Gateway or authentication server decision |
| Connected, no traffic | Addressing, routing and resolution | Route table and resolver configuration |
Etapa um: o enlace e a tentativa de discagem
829 significa que o enlace subjacente caiu. Não diz se o par remoto parou de responder, se um elemento intermediário matou a sessão ou se uma política no cliente a fechou. Um código de conclusão de discagem como 703 é ainda mais precoce: a tentativa nunca chegou a ter enlace, o que costuma apontar para o perfil, o estado do serviço ou uma política local.
Get-VpnConnection -Name 'Corp' | Select-Object Name,ServerAddress,TunnelType,AuthenticationMethod,ConnectionStatus
Test-NetConnection -ComputerName vpn.example.net -Port 443
Get-WinEvent -LogName Application -MaxEvents 200 | Where-Object ProviderName -match 'RasClient' | Select-Object -First 15 TimeCreated,Id,Message
A consulta de eventos é a parte que as pessoas pulam. Um registro do lado do cliente com carimbo de data e hora e nome de interface vale mais do que a caixa de diálogo, porque diz se a tentativa sequer saiu da máquina. Nenhum registro e nenhuma resposta do ouvinte é um problema de alcance, e nenhuma edição no cliente muda isso.
Se o mesmo perfil funciona em outra rede, pare aqui. O código descreve uma condição do caminho e não um erro de configuração, e a próxima comparação útil são as duas capturas e não outra reinstalação.
Etapa dois: PPP e a vinculação do miniporta
720 fica entre o enlace e o usuário. O túnel subiu e então a camada PPP não conseguiu negociar um endereço ou um protocolo de controle, o que muitas vezes é um problema de vinculação no cliente e não uma credencial recusada. Essa distinção é todo o valor do código: ele diz que a credencial nunca foi alcançada, então a conta não é a suspeita.
Get-NetAdapter -IncludeHidden | Where-Object InterfaceDescription -match 'WAN Miniport' | Select-Object Name,Status,ifIndex
Get-NetAdapterBinding | Where-Object ComponentID -match 'ms_pptp|ms_l2tp|ms_sstp|ms_agile' | Select-Object Name,ComponentID,Enabled
Ler essas duas saídas é mais informativo do que redefinir qualquer coisa. Um miniporta presente mas não iniciado, ou uma vinculação de protocolo desativada por outro software, produz exatamente a falha desta etapa. Ambos podem ser corrigidos sem tocar no resto da pilha. Uma redefinição completa, ao contrário, remove endereçamento e estado de filtragem que não tinham relação com a falha.
Etapa três: identidade e autorização
691 significa que as credenciais foram recusadas. 649 significa que a conta não tem permissão de discar, e 812 significa que uma política de acesso remoto recusou a conexão. São decisões, não falhas de transporte, e o cliente só pode relatá-las.
As provas estão do outro lado. Peça ao operador do gateway a tentativa naquele carimbo de data e hora e a política que correspondia; pergunte ao dono do diretório se a conta tem permissão de discagem e se está no grupo exigido pela política. Mudar o tipo de túnel ou reinstalar o cliente não pode alterar uma decisão tomada sobre uma identidade.
Um hábito útil nesta etapa é escrever no chamado a string exata da conta, incluindo qualquer prefixo de domínio. Um número surpreendente de casos 691 são credenciais salvas para o domínio errado, e isso aparece na string da conta e não nas configurações do protocolo.
Etapa quatro: conectado, e nada funciona
Uma conexão pode se completar e continuar inútil. Ela tem um endereço, o cliente relata sucesso e cada requisição do aplicativo expira. Nada na caixa de diálogo reflete isso, e não há código a consultar. Nesse ponto a caixa de diálogo acabou e as provas úteis estão em outro lugar.
Get-NetRoute -DestinationPrefix 10.24.0.0/16 | Select-Object DestinationPrefix,NextHop,InterfaceAlias
Resolve-DnsName files.corp.example.internal
Test-NetConnection -ComputerName 10.24.6.15 -Port 445
Se a rota falta, o servidor não a empurrou ou o cliente a descartou. Se a rota existe e o nome falha, o problema é a resolução. Se ambos funcionam e o aplicativo ainda falha, você passou do túnel e está na configuração do próprio aplicativo.
Mantenha as mudanças em uma camada por teste. Cada edição feita antes da próxima tentativa passa a fazer parte do contexto do próximo código, e um código que descreve sua última edição é pior do que nenhum código.
Uma tentativa, uma mudança, um registro
Seja qual for a etapa, o registro deve conter o código, a mensagem, o nome do perfil, o carimbo de data e hora e a rede em que você estava. Cinco campos, e cada um deles já está diante de você na caixa de diálogo ou no log do cliente. Esse conjunto é pequeno o bastante para colar num chamado e específico o bastante para outra pessoa reproduzir.
Depois coloque esse carimbo de data e hora ao lado do registro do outro lado. A tabela perto do topo desta página diz qual etapa possui cada divergência. Sem o segundo registro o código apenas estreita a busca; com ele, a etapa fica decidida. A comparação é o que transforma um número em diagnóstico e não em palpite.
Esse hábito cobre quase toda falha nativa de VPN no Windows, e nenhum dos ramos exige reinstalar qualquer coisa. A caixa de diálogo sempre dizia qual você tinha; o trabalho está em recusar tratar todas como o mesmo problema.