El CIDR de client d'AWS Client VPN no pot solapar-se amb el rang de la VPC
AWS fixa el pool de Client VPN en crear-lo, i el solapament es decideix per rangs, no per adreces lliures. Cinc comprovacions abans de construir-lo.
Un endpoint d'AWS Client VPN reparteix adreces de client des d'un pool que tu tries, i AWS comprova aquest pool contra la xarxa de destinació abans de crear l'endpoint. La comprovació no és si una subxarxa sembla lliure. És si el pool se solapa amb el rang de la VPC, i la resposta és la mateixa tant si una instància EC2 fa servir aquestes adreces avui com si no. El solapament és una qüestió de rangs, no d'assignacions.
Recorre cinc comprovacions en ordre. Atura't a la primera que falli, perquè cap pas posterior pot reparar una decisió anterior.
El solapament és una prova de rangs, no una prova d'adreces lliures
Comença pel CIDR de la VPC, no per la subxarxa que vols associar. Un pool de 172.20.0.0/22 queda dins d'una VPC de 172.20.0.0/16 i es rebutja encara que cap subxarxa l'ocupi, perquè el solapament és una propietat dels rangs i no de les assignacions actuals. Després afegeix les destinacions cap a les quals encamina l'endpoint: VPCs aparellades, una passarel·la de trànsit i rangs locals per una connexió site-to-site. Qualsevol rang al qual un client pugui necessitar arribar pertany a la llista.
Recull-los del compte i no de la memòria: aws ec2 describe-vpcs --query "Vpcs[].CidrBlock", més les entrades de la taula d'encaminament de la subxarxa que vols associar.
La mida del pool es decideix abans de construir
AWS accepta un pool de clients IPv4 entre /22 i /12 a Client VPN. Una /24 és massa petita, una /8 queda fora del rang documentat, i tots dos errors venen de dimensionar el pool com una subxarxa de càrrega de treball. Dimensiona'l pels clients simultanis esperats més un marge, i després arrodoneix a un prefix permès.
Comprova l'aritmètica abans d'escriure-la a la consola, perquè un prefix mal escrit canvia la mida del pool sense cap avís:
python3 -c "import ipaddress; p=ipaddress.ip_network('172.16.0.0/22'); print(p.num_addresses, p.prefixlen, p.overlaps(ipaddress.ip_network('172.20.0.0/16')))"Això imprimeix el nombre d'adreces, la longitud del prefix i si el candidat xoca amb el rang de la VPC, cosa més ràpida que raonar sobre màscares de xarxa al final d'una finestra de canvi.
El resolutor té el seu propi paper d'adreça
El resolutor de la VPC respon a l'adreça base del rang de la VPC més dos, que no és necessàriament dins de la subxarxa que has associat. Suposar que el resolutor ha de viure al pool de clients, o construir una subxarxa al voltant d'aquesta adreça, afegeix objectes sense canviar res. L'important és que l'endpoint porti un paràmetre DNS que el client pugui aplicar i que el resolutor sigui abastable des del túnel.
Enregistra el resolutor, el pool de clients i la subxarxa associada com tres elements separats al pla d'adreces. Fallen de manera independent, i que un sigui correcte no diu res sobre els altres dos.
Quatre camps que fixes en crear-lo
El CIDR IPv4 del client queda fixat en crear-lo. Canviar el servidor DNS, afegir una associació, intercanviar el grup de seguretat, editar regles d'autorització o alterar rutes de split-tunnel són edicions ordinàries, i cap d'elles canvia el nom del pool. Aquesta asimetria és la raó per la qual això mereix una revisió: els paràmetres barats són els que voldràs canviar després, i el car és el que fixes primer. Llegeix la descripció de l'endpoint abans de planificar una finestra de canvi.
Inspecciona l'endpoint desplegat abans de suposar una reconstrucció. aws ec2 describe-client-vpn-endpoints retorna el pool, el DNS, l'indicador de split-tunnel i les associacions en una sola resposta, que normalment n'hi ha prou per descartar una reconstrucció.
Substitueix l'endpoint en lloc d'apedaçar-lo
Un endpoint nou és un endpoint nou, no una migració. Les sessions existents no hi passen, els perfils de client apunten a un altre nom, i cada paràmetre que donaves per fet s'ha de recrear: certificat del servidor, autenticació, associacions, rutes, grups d'autorització i registre. Valida amb un client contra un servei privat obligatori i contra una destinació que s'ha de denegar, i després amplia l'accés. Tot el que saltis es converteix més tard en un tiquet de suport.
Mantén l'endpoint antic en marxa fins que passi aquesta validació, i conserva un camí administratiu que no depengui del nou.
Un límit que val la pena esmentar: això cobreix el pool de clients IPv4. Els paràmetres de trànsit dual-stack i IPv6 a Client VPN segueixen el seu propi model d'adreçament, així que no copiïs aquesta llista sense llegir la documentació d'aquest mode.