Come rimuovere una rotta obsoleta lasciata da una VPN Windows
Trova la voce davvero obsoleta, visualizza in anteprima la rimozione rispetto all’archivio dei criteri corretto e verifica che la ricerca scelga l’interfaccia che ti aspetti.
La sessione è terminata ore fa, l’adattatore è sparito, eppure la rotta è ancora nella tabella e punta all’interfaccia 42. Cancellare quella riga richiede un comando; stabilire che sia la riga giusta ne richiede quattro controlli. La tabella delle rotte è condivisa, quindi una rimozione ampia elimina percorsi che altre connessioni usano ancora, compreso quello che porta il tunnel. Ogni passo seguente restringe il bersaglio finché solo una voce può corrispondere.
1. Stabilisci se la voce è obsoleta o intenzionale
Una voce sopravvissuta a un riavvio è stata scritta da qualche parte, e quel luogo di solito è una decisione, non un incidente. Il split tunneling dipende da rotte che sembrano esattamente residui, e un criterio che spinge un prefisso attraverso il tunnel è indistinguibile da una voce obsoleta in un unico elenco. Chiediti quando è comparsa la rotta: una che esiste solo mentre il tunnel è attivo appartiene alla configurazione del client, quindi il comando di pulizia è lo strumento sbagliato. Rimuovi una rotta intenzionale e la connessione successiva fallisce al passo che nessuno osserva.
La rotta dell’endpoint merita un avvertimento a parte. Quando un client aggiunge una rotta host verso il server VPN perché i pacchetti cifrati possano raggiungerlo tramite la connessione locale, cancellare quella rotta fa crollare il tunnel alla riconnessione successiva, e il sintomo viene letto come un guasto del server. Confronta la destinazione con l’indirizzo a cui si connette il client prima di toccare qualcosa: un singolo indirizzo pubblico che corrisponde al server VPN è il percorso esterno, non spazzatura.
2. Registra i quattro campi che nominano la voce
Un prefisso da solo non è un’identità, perché due interfacce possono avere rotte verso la stessa destinazione. Annota il prefisso di destinazione, l’indice dell’interfaccia, il prossimo salto e l’archivio dei criteri, perché quei quattro valori descrivono esattamente una voce. Un solo elenco te li fornisce tutti:
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetricOrdinare per metrica solleva le rotte che la macchina preferisce davvero, ed è lì che di solito si trova un residuo. Confronta la voce mentre il tunnel è attivo e di nuovo dopo che cade: una rotta che parte con l’adattatore era del client, e quella che resta è stata scritta da qualcos’altro. L’archivio dei criteri è il campo che la gente salta, ed è quello che spiega una riapparizione, perché una voce rimossa dall’archivio attivo ritorna dopo il successivo aggiornamento dei criteri. Annota i quattro valori prima di eseguire qualsiasi cosa che cambi lo stato.
3. Visualizza in anteprima la rimozione, poi rimuovi una voce
Remove-NetRoute accetta lo stesso prefisso e lo stesso indice di interfaccia stampati da Get-NetRoute, e ha un interruttore di anteprima, quindi non serve indovinare nulla. Esegui la coppia in questo ordine:
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42 -WhatIf
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42L’anteprima stampa l’oggetto che cancellerebbe, quindi confronta prefisso, interfaccia e prossimo salto con i tuoi appunti prima di rilasciare l’interruttore. Nessuna delle due righe raggiunge una voce permanente, perché l’archivio attivo è quello predefinito; aggiungi -PolicyStore PersistentStore quando la rotta identificata vive lì, altrimenti la rimozione sembra funzionare e la voce ritorna al successivo aggiornamento dei criteri. Mantieni un percorso di ripristino fuori banda quando la sessione è remota, perché cancellare la rotta che porta la tua stessa connessione la interrompe. Non ricorrere mai a un comando che svuota la tabella.
4. Trova qualunque componente che la rimetta
Una cancellazione non è una correzione finché il proprietario è ancora configurato per installare la rotta. Il proprietario di solito è uno di tre: il profilo del client VPN con la sua lista di split tunnel, uno script o un’attività pianificata che aggiunge rotte all’accesso, oppure un criterio di dominio applicato alla macchina. Controlla prima il profilo, perché viene eseguito a ogni connessione:
Get-VpnConnection | Select-Object Name,SplitTunneling,ServerAddress
Get-NetRoute -PolicyStore PersistentStoreLe voci permanenti sono visibili senza connettere nulla, quindi una rotta che ritorna dopo un riavvio senza sessione VPN quasi sempre vive in quell’archivio o in uno script di avvio. Correggi lì il proprietario, e la cancellazione manuale diventa verifica invece di trattamento.
5. Verifica la ricerca, i vicini e la nota
Un risultato pulito non è la rotta sparita; è una ricerca che ora sceglie l’interfaccia che ti aspettavi. Chiedi alla macchina dove andrebbe un pacchetto verso il prefisso colpito, perché un residuo nomina ancora l’indice morto mentre una risposta pulita nomina l’interfaccia on-link o il gateway corretto. Find-NetRoute risponde per un indirizzo alla volta:
Find-NetRoute -RemoteIPAddress 10.20.4.7Poi prova un vicino: scegli un secondo prefisso che un split tunnel richiede ancora e conferma che la sua ricerca sia invariata, perché togliere una rotta di troppo è l’errore che questa pulizia invita. Riprova l’applicazione che aveva fallito in origine, e annota quale componente possiede ora il prefisso. La documentazione di Microsoft su Get-NetRoute elenca i campi che hai annotato al secondo passo. Fra sei mesi quella nota è ciò che impedisce alla stessa voce di essere diagnosticata due volte.