Ja teniu un client que es connecta per IPv4 i arriba a una càrrega de treball IPv4 privada darrere del servidor. L'objectiu és arribar a una càrrega de treball IPv6 privada pel mateix túnel sense tocar el transport exterior. Aquest ordre importa: el camí exterior continua en IPv4 i només canvien el pla d'adreces interior, la ruta del client i el camí de tornada del servidor a la LAN. Cinc punts de control, cadascun amb alguna cosa concreta per mirar abans de continuar.

Punt de control u: la connexió que ja funciona

Connecteu el client i confirmeu el camí IPv4 abans d'afegir res. Un túnel que funciona us dona una línia base que separa un error IPv6 nou d'un problema de connectivitat antic. També us diu quina instància de servidor esteu editant de veritat.

Anoteu el pool, la topologia i les rutes impulsades en què ja confieu. La feina d'IPv6 amplia aquesta configuració; no la substitueix.

Punt de control dos: trieu els prefixos interiors

Trieu una ULA /48 per al lloc i talleu-ne dues /64: una per als clients del túnel i una per al segment de LAN que allotja la càrrega IPv6. Genereu l'ID global de 40 bits en lloc de copiar un prefix d'exemple, i comproveu les dues subxarxes contra cada xarxa que el lloc ja encamina:

Outer transport: IPv4 OpenVPN UDP
IPv4 pool:       10.90.0.0/24
IPv6 VPN pool:   fd73:93bc:b6e9:77::/64
IPv6 LAN:        fd73:93bc:b6e9:60::/64
Server LAN IPv6: fd73:93bc:b6e9:60::1

Dues /64 independents eviten que el pool de clients es retalli del segment de LAN, cosa que importa més endavant quan escriviu la ruta de tornada. Els valors de dalt són un exemple resolt, no un prefix per reutilitzar.

Punt de control tres: afegiu l'auxiliar i l'impuls de ruta

Llegiu la configuració actual del servidor abans d'afegir-hi res. Una segona còpia d'una directiva existent no es fusiona amb la primera, i l'error resultant nomena la directiva, no IPv6. Amb l'auxiliar IPv4 existent, dues línies l'amplien. Cadascuna respon una pregunta diferent:

server-ipv6 fd73:93bc:b6e9:77::/64
push "route-ipv6 fd73:93bc:b6e9:60::/64"

La primera és un auxiliar còmode que configura la interfície i el pool de clients. La segona nomena la destinació de LAN que el client ha d'assolir. Assignar una adreça IPv6 a un client no li diu quines xarxes hi ha darrere del servidor, així que calen les dues línies.

L'auxiliar no conviu amb un pool IPv6 estàtic ni amb nopool. Si el desplegament assigna adreces estàticament a propòsit, manteniu aquesta política i dissenyeu l'equivalent IPv6 explícitament en lloc de suprimir la política per encaixar en un exemple.

Punt de control quatre: reenviament i la ruta de resposta

Activeu el reenviament IPv6 al servidor a través del propietari de la configuració del sistema, no amb una escriptura d'execució puntual que oblidareu. La forma d'execució és útil per a una prova ràpida. La configuració persistent va en un fitxer drop-in que llegeix el propietari de la xarxa de la distribució:

sysctl -w net.ipv6.conf.all.forwarding=1

El reenviament canvia el comportament IPv6 de l'amfitrió més enllà d'encaminar paquets. Un amfitrió que acceptava anuncis de router com a client deixa de fer-ho de la mateixa manera quan reenvia. Per tant, una màquina el enllaç IPv6 de la qual depèn dels RA necessita un pla explícit per a aquest enllaç.

Després doneu a la LAN una ruta de tornada al pool del túnel. La porta d'enllaç IPv6 de la càrrega és l'encaminador de la LAN, no el servidor VPN, així que la ruta va en aquest encaminador i apunta a l'adreça de LAN del servidor:

ip -6 route add fd73:93bc:b6e9:77::/64 via fd73:93bc:b6e9:60::1

Manteniu els tipus ICMPv6 que l'enllaç necessita, inclòs el retorn de MTU del camí. Una regla de tallafoc IPv4 no implica una regla IPv6, i un bloqueig total d'IPv6 trenca el descobriment de veins d'una manera que sembla una fallada d'encaminament.

Punt de control cinc: llegiu el client i després proveu

Torneu a connectar el client i llegiu les adreces que ha rebut realment en lloc d'inferir-les de l'adreça auxiliar del servidor. El llistat de la interfície mostra les dues famílies al mateix dispositiu:

ip -6 addr show tun0
ip -6 route get fd73:93bc:b6e9:60::20

Una ruta que tria el túnel demostra que el client sap on enviar el paquet. No demostra que el servidor el reenviï, que l'encaminador de la LAN tingui la ruta de tornada ni que l'aplicació tingui permís per respondre.

Proveu l'aplicació mateixa per cada família per torns, i repetiu-ho després d'una reconnexió i després d'un reinici de l'amfitrió. Una ruta o un sysctl que només sobreviu fins al reinici és una prova, no un disseny.

Publiqueu un registre AAAA només quan el camí IPv6 respongui d'extrem a extrem. Un DNS consultat per IPv4 encara pot retornar una adreça IPv6, així que un nom resoluble no és prova que hi hagi res escoltant. La guia RFC 4193 per a ULA cobreix la generació de l'ID global que fa que aquests prefixos siguin vostres i no una còpia.

Articles relacionats