Comment supprimer une route obsolète laissée par un VPN Windows
Trouvez l’entrée réellement obsolète, prévisualisez sa suppression face au bon magasin de stratégies, et confirmez que la recherche choisit l’interface que vous attendez.
Votre session s’est terminée il y a des heures, l’adaptateur a disparu, et la route est toujours dans la table, pointant vers l’interface 42. Supprimer cette ligne coûte une commande ; décider que c’est la bonne ligne coûte quatre vérifications. Une table de routes est partagée, donc une suppression large retire des chemins que d’autres connexions utilisent encore, y compris celui qui porte le tunnel. Chaque étape ci-dessous resserre la cible jusqu’à ce qu’une seule entrée puisse correspondre.
1. Décidez si l’entrée est obsolète ou intentionnelle
Une entrée qui a survécu à un redémarrage a été écrite quelque part, et cet endroit est généralement une décision plutôt qu’un accident. Le tunneling divisé dépend de routes qui ressemblent exactement à des restes, et une stratégie qui pousse un préfixe dans le tunnel est indiscernable d’une entrée obsolète dans une seule liste. Demandez quand la route est apparue : une route qui n’existe que tant que le tunnel est monté appartient à la configuration du client, donc une commande de nettoyage est le mauvais outil. Supprimez une route délibérée et la connexion suivante échoue à l’étape que personne ne surveille.
La route de point de terminaison mérite son propre avertissement. Quand un client ajoute une route d’hôte vers le serveur VPN pour que les paquets chiffrés l’atteignent par la connexion locale, supprimer cette route fait s’effondrer le tunnel à la reconnexion suivante, et le symptôme se lit comme une panne de serveur. Comparez la destination avec l’adresse à laquelle le client se connecte avant de toucher à quoi que ce soit : une seule adresse publique qui correspond au serveur VPN est le chemin extérieur, pas un déchet.
2. Notez les quatre champs qui nomment l’entrée
Un préfixe seul n’est pas une identité, car deux interfaces peuvent détenir des routes vers la même destination. Notez le préfixe de destination, l’index d’interface, le saut suivant et le magasin de stratégies, puisque ces quatre valeurs décrivent exactement une entrée. Une seule liste vous les donne tous :
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetric
Trier par métrique fait remonter les routes que la machine préfère réellement, et c’est là qu’un reste se trouve d’ordinaire. Comparez l’entrée pendant que le tunnel est monté puis après sa chute : une route qui part avec l’adaptateur était celle du client, et celle qui reste a été écrite par autre chose. Le magasin de stratégies est le champ que les gens sautent, et c’est lui qui explique une réapparition, car une entrée retirée du magasin actif revient après la prochaine actualisation de stratégie. Notez les quatre valeurs avant d’exécuter quoi que ce soit qui change l’état.
3. Prévisualisez la suppression, puis supprimez une entrée
Remove-NetRoute accepte le même préfixe et le même index d’interface que ceux imprimés par Get-NetRoute, et il dispose d’un commutateur d’aperçu, donc rien n’a besoin d’être deviné. Exécutez la paire dans cet ordre :
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42 -WhatIf
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42
L’aperçu imprime l’objet qu’il supprimerait, donc comparez préfixe, interface et saut suivant avec vos notes avant de relâcher le commutateur. Aucune des deux lignes n’atteint une entrée persistante, car le magasin actif est celui par défaut ; ajoutez -PolicyStore PersistentStore lorsque la route identifiée y vit, sinon la suppression semble fonctionner et l’entrée revient à la prochaine actualisation de stratégie. Gardez un chemin de récupération hors bande lorsque la session est distante, car supprimer la route qui porte votre propre connexion la termine. Ne recourez jamais à une commande qui vide la table.
4. Trouvez quel composant la remet en place
Une suppression n’est pas un correctif tant que le propriétaire est encore configuré pour installer la route. Le propriétaire est généralement l’un des trois : le profil du client VPN avec sa liste de tunneling divisé, un script ou une tâche planifiée qui ajoute des routes à l’ouverture de session, ou une stratégie de domaine appliquée à la machine. Vérifiez d’abord le profil, car il s’exécute à chaque connexion :
Get-VpnConnection | Select-Object Name,SplitTunneling,ServerAddress
Get-NetRoute -PolicyStore PersistentStore
Les entrées persistantes sont visibles sans rien connecter, donc une route qui revient après un redémarrage sans session VPN vit presque toujours dans ce magasin ou dans un script de démarrage. Corrigez-y le propriétaire, et la suppression manuelle devient une vérification plutôt qu’un traitement.
5. Vérifiez la recherche, les voisins et la note
Un résultat propre n’est pas « la route a disparu » ; c’est une recherche qui choisit désormais l’interface que vous attendiez. Demandez à la machine où irait un paquet vers le préfixe touché, car un reste nomme encore l’index mort tandis qu’une réponse propre nomme l’interface sur le lien ou la bonne passerelle. Find-NetRoute répond à cela pour une adresse à la fois :
Find-NetRoute -RemoteIPAddress 10.20.4.7
Testez ensuite un voisin : choisissez un second préfixe dont un tunneling divisé a encore besoin et confirmez que sa recherche est inchangée, car retirer une route de trop est l’erreur que ce nettoyage invite à commettre. Relancez l’application qui avait échoué à l’origine, et notez quel composant possède le préfixe maintenant. La documentation Microsoft de Get-NetRoute énumère les champs que vous avez notés à la deuxième étape. Dans six mois, cette note est ce qui empêchera la même entrée d’être diagnostiquée deux fois.