La rotta GCP VPN funziona solo in una regione: controllate l'instradamento dinamico
Una VPC globale non rende globali le rotte apprese tramite BGP. Leggete la modalità di instradamento, cambiatela una volta e verificate cosa annuncia il lato remoto.
Il carico di lavoro statunitense raggiunge il prefisso dell'ufficio tramite la HA VPN senza problemi, mentre il carico europeo nella stessa VPC non riceve nulla. La sua tabella di routing non contiene alcuna voce per il prefisso, nessun tunnel è caduto e nessuna regola del firewall è cambiata. Il tunnel e la sua sessione BGP sono integri in entrambe le direzioni. Una VPC che copre più regioni non è la stessa cosa delle sue rotte apprese che coprono più regioni, e proprio questo divario spiega l'intero sintomo.
Qui si confondono due proprietà: dove risiedono le sottoreti e dove può essere usato un next hop appreso.
Da dove viene l'ambito regionale
Cloud Router installa le rotte apprese con un ambito che segue la modalità di instradamento dinamico della VPC. In modalità regionale, una rotta appresa in una regione è utilizzabile solo dalle risorse di quella regione, per questo la tabella europea è vuota invece di mostrare un next hop rotto. In modalità globale, le rotte apprese idonee diventano disponibili alle risorse di ogni regione della VPC. Leggete il valore attuale prima di cambiare qualcosa, perché il regionale è il valore predefinito. L'impostazione risiede sulla rete, non sul tunnel né sul router.
Il comando di inventario è di sola lettura e vi risponde in una riga:
gcloud compute networks describe VPC_NAME --format='value(routingConfig.routingMode)'
Eseguitelo nel progetto host quando la VPC è condivisa. La rete appartiene a quel progetto, e un ruolo di visualizzatore nel progetto del carico di lavoro potrebbe non mostrare nemmeno la configurazione di instradamento. Una risposta rapida dal progetto sbagliato è peggio di nessuna risposta.
Il cambiamento è un comando e una direzione
Il passaggio è una modifica del piano di controllo sull'intera VPC, non una scorciatoia per VM: gcloud compute networks update VPC_NAME --routing-mode=GLOBAL. È anche a senso unico, perché una rete impostata su globale non può tornare a regionale. Controllate ancora una volta il nome del progetto e della rete prima di eseguirlo, dato che il comando non chiede conferma. Il cambiamento merita una nota di manutenzione e l'approvazione del proprietario della rete, non un esperimento rapido su una VPC condivisa.
Ogni collegamento Cloud Router, VPN e Interconnect di quella rete eredita subito il nuovo ambito. Ciò include i collegamenti che nessuno ha menzionato nella richiesta di modifica. Le regioni che non avevano mai avuto la rotta iniziano a riceverla non appena il cambiamento entra in vigore, per questo non esiste un rilascio graduale per questo passaggio.
Globale è un ambito, non una garanzia
Idoneità e preferenza sono separate dall'ambito. Una rotta che entra in conflitto con un prefisso più specifico, perde la selezione del percorso migliore o viene filtrata da una policy si comporta esattamente come prima. La modalità globale amplia dove una rotta può essere usata, ma non decide quale rotta vince. Una rotta appresa può essere nell'ambito e perdere comunque contro un percorso statico o più specifico nella stessa VPC.
Questa distinzione conta perché il cambio di modalità è facile da incolpare in seguito. Se la sottorete europea è ancora senza rotta dopo il passaggio, la domanda è se la rotta esiste ed è idonea, non se l'ambito ha avuto effetto. I conflitti di prefisso e la salute del next hop sono le due cose successive da leggere.
Anche il lato remoto annuncia in modo diverso
Il comportamento di annuncio segue la stessa impostazione. Con il comportamento predefinito, un router in modalità regionale annuncia le sottoreti della propria regione, mentre la modalità globale annuncia le sottoreti della VPC in modo più ampio. Cambiare la modalità modifica quindi non solo ciò che le vostre regioni possono usare, ma anche ciò che il lato remoto installa.
Un elenco di annunci personalizzato non si amplia quando cambia la modalità. Se il router locale conserva un elenco di intervalli scritto a mano, il prefisso europeo resta assente. Il percorso di ritorno resta rotto in quel caso anche se la rotta in uscita ora esiste. Controllate cosa ha installato il lato remoto invece di cosa avete esportato.
Ciò che la modalità non riparerà mai
L'instradamento globale non concede accesso a internet pubblico, transito tra VPC non correlate né rotte statiche mancanti. Non modifica le regole del firewall né IAM, quindi una connessione rifiutata dalla policy resta rifiutata.
Questi guasti sembrano uguali dall'interno di un carico di lavoro e non hanno nulla a che fare con l'ambito delle rotte.
Provate dalla regione remota verso il servizio reale, poi confermate che la risposta torni dal tunnel previsto. Annotate la modalità, la configurazione degli annunci e la destinazione provata. Se il test fallisce ancora, confrontate la tabella BGP del router remoto con l'elenco delle rotte della VPC prima di toccare di nuovo la modalità. Allora il prossimo rapporto tra regioni partirà dai fatti e non da un cambio di modalità.