Rutas enviadas por OpenVPN non instaladas: tempos, permisos ou política
Unha ruta enviada pode desaparecer nunha carreira de tempos, por permisos ausentes ou por unha política do cliente. Compare primeiro a lista de envío do servidor coa táboa real.
O servidor di que enviou a ruta, o cliente di que está conectado, e o destino segue sendo inalcanzable. Tres causas producen exactamente esa imaxe. A adición da ruta executouse antes de que existise o dispositivo, ao cliente faltábanlle permisos para cambiar a táboa, ou unha política indicoulle ao cliente ignorar as opcións enviadas.
Desde fóra parecen idénticas e necesitan correccións distintas. Lea o rexistro do cliente no punto onde se toma a decisión da ruta.
Demostre que a ruta está ausente, non só rota
Comece demostrando que a ruta está ausente en lugar de rota. En Linux, ip route show dev tun0 enumera o que o cliente instalou no dispositivo de túnel. En Windows, route print ou Get-NetRoute mostra o mesmo en forma de táboa.
Unha ruta que existe pero non reenvía tráfico é un problema distinto. Iso traslada a investigación ás regras de reenvío e cortalumes, non á instalación da ruta.
Tempos: a adición executouse antes de que existise o dispositivo
O cliente analiza o PUSH_REPLY do servidor despois de que a canle de control estea activa e de que configurase a interface. Só entón toca a táboa de encamiñamento, co mecanismo que proporcione a plataforma. Linux pasa por netlink; Windows usa unha API que necesita un token elevado. Un script ou un cliente que engade rutas en canto le a configuración pode executarse antes de que exista o dispositivo TUN/TAP, e o núcleo rexeita a adición.
A mesma carreira explica por que unha ruta escrita a man funciona mentres que a automática non: cando a escribe, a interface xa está activa.
route-delay existe para este caso, e route-up nomea un script que se executa despois de configurar a interface e as rutas. Poña as rutas que dependen do enderezo do túnel nese gancho en lugar de nunha etapa temperá.
Permisos: quen pode cambiar a táboa
Cambiar a táboa de encamiñamento de Windows necesita un token elevado. Unha GUI iniciada por un usuario estándar pode establecer o enderezo do adaptador a través do servizo e aínda así non poder engadir unha ruta. O rexistro mostra entón un erro do tipo acceso denegado en lugar dun envío ausente.
Iniciar a GUI como administrador, ou usar o cliente baseado en servizo, cambia ese resultado. Unha tarefa programada que inicia o cliente sen o token requirido non o fai.
Comprobe con que conta se executa realmente o cliente antes de cambiar nada. A versión e o modo de servizo deciden que causas son posibles, así que anote ambas xunto á saída da ruta.
Política: as rutas enviadas poden descartarse a propósito
route-nopull fai que o cliente ignore as rutas que envía o servidor, incluída unha ruta predeterminada enviada, mentres o enderezo do túnel segue aceptándose. As opcións de DNS e DHCP enviadas descártanse pola mesma directiva. Ese cliente non é defectuoso; espera liñas de ruta explícitas na súa propia configuración.
route-noexec é un control distinto: detén o cliente por completo de executar cambios de ruta. Unha topoloxía que o cliente non pode mapear pode producir un resultado similar, coa ruta rexistrada como rexeitada en lugar de engadida. Lea a liña do rexistro que informa da decisión en lugar de adiviñar cal das tres se aplica. Despois comprobe o perfil efectivo, porque un importador ou unha ferramenta de xestión pode engadir opcións que o usuario nunca editou.
Un perfil que parece limpo nun editor de texto pode seguir levando unha directiva engadida en tempo de execución.
Compare a lista de envío coa táboa
Tras conectar, poña a lista de envío do servidor xunto á táboa do cliente. En Linux iso é ip route show dev tun0; en Windows, route print ou Get-NetRoute. Se a ruta está ausente, corrixa primeiro a instalación. Se está presente e o tráfico falla, pase á política de reenvío e cortalumes.
Anote a versión do cliente, a conta coa que se executa e se está baseado en servizo. Esas tres realidades din á seguinte persoa que causas quedaron descartadas.