La consola ofereix un commutador de túnel dividit, així que la decisió sembla una casella de verificació. No ho és. El que arriba realment al client és el conjunt de rutes publicades del punt final, i aquesta llista decideix quins prefixos privats fan servir el túnel, si el trànsit general d'internet es queda local o surt per AWS, i amb quin resolutor pot parlar encara el client. Tres preguntes resolen el disseny, i cadascuna es pot respondre malament mentre la connexió continua funcionant.

L'indicador de túnel dividit no és una llista de destinacions

AWS descriu el túnel dividit com l'addició de rutes del punt final a la taula de rutes del client en establir la connexió. Una ruta per a la VPC privada limita el túnel a aquesta destinació; la resta segueix el camí ordinari del client. Una ruta per defecte és una instrucció diferent amb un efecte diferent, i per això la documentació del túnel dividit adverteix contra publicar 0.0.0.0/0 en un punt final configurat per a aquest mode: sol trencar la connectivitat en lloc d'ampliar-la. La taula de rutes del punt final és la política, i la taula de rutes del client és el resultat que podeu inspeccionar.

Llegiu la taula de rutes del punt final i les rutes instal·lades del client alhora. L'etiqueta descriu una intenció; les rutes descriuen què passa.

Primera decisió: el trànsit general d'internet ha de quedar local?

Si la navegació ha d'utilitzar la connexió pròpia de l'usuari, publiqueu només les destinacions privades que necessita la feina i atureu-vos aquí. No afegiu una ruta d'internet perquè un tutorial de túnel complet n'incloïa una, i no assumiu que la ruta extra millora la seguretat. Canvia el camí, no afegeix cap política i normalment costa una latència que no havíeu pressupostat.

Si el trànsit d'internet ha de sortir per AWS, construïu l'arquitectura d'accés a internet documentada: ruta del punt final, regles d'autorització, el camí de la subxarxa associada, política de seguretat i una sortida superior que funcioni. Una ruta per defecte sola no aporta res d'això.

Segona decisió: quins prefixos privats, autoritzats per qui?

Publiqueu el conjunt més petit de destinacions que serveix la càrrega real, i comproveu que cada subxarxa associada hi pugui encaminar. L'objectiu de ruta del punt final i l'encaminament VPC de la subxarxa són capes diferents, i una ruta que existeix en una no és prova de l'altra. L'autorització torna a ser a part: una destinació pot ser accessible i tot i així denegada perquè el grup del client no té cap regla que la permeti.

Provar una sola sessió correcta demostra un sol camí. Comproveu cada subxarxa associada, perquè una associació de subxarxa afegida més tard és exactament on sol viure la ruta que falta.

Quan una destinació ha de ser accessible pel nom, tingueu present que la pregunta següent és la resolució de noms, no la de la ruta.

Tercera decisió: quin resolutor segueix el túnel?

Un client pot rebre un servidor DNS que només és accessible a través de la VPN, i aquest resolutor només funciona si la seva adreça és dins d'una ruta autoritzada. Verifiqueu les dues meitats: l'adreça del resolutor segueix una ruta publicada i el servidor respon als noms que demana l'aplicació. Una petició que té èxit per adreça mentre falla pel nom d'equip apunta a l'adreçament de noms, no a l'encaminament, i depurar el túnel en aquest cas malbarata la tarda.

Els noms públics s'han de resoldre com abans de la connexió, que és una altra raó per ser precisos sobre què publiqueu.

Canvieu el conjunt de rutes i després verifiqueu els dos mons

AWS documenta que canviar les rutes en un punt final de túnel dividit reinicia les connexions dels clients. Planifiqueu el canvi tenint-ho en compte: apliqueu-lo, torneu a connectar amb el client compatible i llegiu de nou les rutes instal·lades en lloc de confiar en l'estat aplicat abans de l'edició. Un estat aplicat obsolet és la raó més habitual perquè un canvi correcte sembli trencat.

Accepteu el disseny només quan un recurs privat i una destinació pública es comportin com cal, per nom i per adreça, a les famílies d'adreces que realment suporteu. Un túnel que autentica no és el mateix que un túnel que divideix correctament.

Escriviu la llista de rutes al runbook al costat del raonament, perquè la persona següent pugui distingir una exclusió intencionada d'una d'oblidada.

Articles relacionats