I circuiti privati sono facili da descrivere e difficili da sostituire, perché il contratto copriva più di un cavo. Portava una consegna, un piano di indirizzamento, un'aspettativa di latenza e un accordo di supporto, e il tunnel che lo sostituisce eredita tutti e quattro, che qualcuno li abbia scritti o no. Le migrazioni falliscono quando il team copia la configurazione di routing e chiama il resto un problema operativo. Partite dai requisiti, poi dimostrate ciascuno sul nuovo percorso prima che il vecchio venga disdetto.

Trasformate il circuito in un elenco di proprietà

La prima domanda è cosa ha consegnato davvero il vecchio servizio: un collegamento instradato con una sottorete piccola, o un segmento di livello 2 condiviso tra sedi. Questa distinzione decide se un tunnel IP può riprodurlo, perché un tunnel trasporta pacchetti tra due indirizzi e non trasporta scoperta broadcast né EtherTypes arbitrari. Un circuito che si presentava come una porta di switch è una migrazione diversa da uno che presentava una /30.

Annotate i prefissi delle sedi, gli indirizzi di gateway, le applicazioni che incorporano indirizzi nella propria configurazione e i prefissi che si sovrappongono altrove nell'ambiente. Un piano di indirizzamento che sopravvive alla migrazione è un risultato di progettazione, non un'ipotesi. Quei quattro elenchi diventano poi anche i criteri di accettazione, quindi teneteli dove i collaudatori possono leggerli.

Instradate il nuovo percorso in entrambi i sensi

Un tunnel che sale è solo metà percorso. Il lato remoto ha bisogno di una rotta di ritorno verso ogni prefisso locale, e il lato locale deve preferire il tunnel per quei prefissi senza rubare traffico che deve ancora uscire da internet. L'inoltro asimmetrico è il sintomo abituale di aver azzeccato una di queste metà. Ispezionate la tabella del lato remoto con la stessa cura della vostra, perché la rotta di ritorno è quella che nessuno ha configurato.

ip route get 10.20.0.10

Il routing basato su policy rende esplicita la separazione: marcare il traffico che appartiene alla coppia di sedi e dargli una tabella il cui valore predefinito è il tunnel. IPsec fornisce l'associazione protetta e la policy che decide cosa vi entra, ma non le rotte che la circondano, come l'architettura IPsec descrive. Quando il marcatore corrisponde troppo ampiamente, anche il traffico web ordinario della sede entra nel tunnel ed esce dall'uscita sbagliata.

Passate con un rollback che avete già collaudato

Due percorsi attivi con proprietari diversi invitano all'inoltro asimmetrico, quindi alzate il nuovo entro una finestra definita e spostate i prefissi in un ordine dichiarato. Lasciate configurato il vecchio circuito e mantenete un percorso di gestione fuori banda che non dipenda da nessuno dei due tunnel. Spostate un prefisso alla volta dove le applicazioni lo consentono, e osservate la tabella delle sessioni tra uno spostamento e l'altro.

Decidete in anticipo quali prove autorizzano il passaggio e quale condizione fa scattare il rollback. Un rollback che richiede di riparare il nuovo VPN attraverso la connessione guasta non è un rollback. Enunciate il trigger come condizione misurabile e non come sensazione nella stanza.

Accettate con il traffico che il circuito portava davvero

Ping dimostra la raggiungibilità e poco altro. Provate la risoluzione dei nomi, le sessioni di lunga durata, i flussi negati e le dimensioni dei pacchetti che il vecchio percorso gestiva senza frammentazione. L'MTU è dove i tunnel più spesso differiscono da un circuito, perché l'incapsulamento consuma byte che l'applicazione dava per disponibili. Misurate il payload più grande che passa senza frammentazione in entrambi i sensi, non solo verso il server.

ping -M do -s 1400 -c 3 10.20.0.10

Se un payload di 1400 byte passa e 1472 no, il massimo del percorso è più piccolo di quanto le applicazioni si aspettano e avete trovato una regressione reale, non cosmetica. Confrontate quel risultato con i requisiti scritti nel primo passo e dismettete il circuito solo quando i proprietari di quelle applicazioni accettano la misura. È quella firma che trasforma un test riuscito in una migrazione accettata.

Articoli correlati