Dodajte zasebni IPv6 v laboratorij OpenVPN, eno kontrolno točko naenkrat
Pustite zunanji transport na IPv4 in razširite notranji načrt. Pet kontrolnih točk: predpone, pomočnik, potisk poti, posredovanje in preizkus na strani odjemalca.
Že imate odjemalca, ki se poveže prek IPv4 in doseže zasebno delovno obremenitev IPv4 za strežnikom. Cilj je doseči zasebno delovno obremenitev IPv6 skozi isti tunel, ne da bi se dotaknili zunanjega transporta. Ta vrstni red je pomemben: zunanja pot ostane IPv4, spremenijo pa se le notranji načrt naslovov, pot odjemalca in povratna pot od strežnika do LAN. Pet kontrolnih točk, vsaka z nečim konkretnim, kar velja pogledati, preden greste naprej.
Prva kontrolna točka: povezava, ki že deluje
Povežite odjemalca in potrdite pot IPv4, preden karkoli dodate. Delujoč tunel vam da osnovno črto, ki loči novo napako IPv6 od stare težave s povezljivostjo. Pove vam tudi, katero instanco strežnika v resnici urejate.
Zapišite bazen, topologijo in potisnjene poti, na katere se že zanašate. Delo z IPv6 to konfiguracijo razširja; ne nadomešča je.
Druga kontrolna točka: izberite notranje predpone
Izberite ULA /48 za mesto in iz nje izrežite dve /64: eno za odjemalce tunela, eno za segment LAN z delovno obremenitvijo IPv6. Ustvarite 40-bitni globalni ID, namesto da kopirate vzorčno predpono, in preverite obe podomrežji glede na vsako omrežje, ki ga mesto že usmerja:
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::1Dve neodvisni /64 preprečujeta, da bi se bazen odjemalcev izrezal iz segmenta LAN, kar je pomembno pozneje pri pisanju povratne poti. Zgornje vrednosti so en razdelan primer, ne predpona za ponovno uporabo.
Tretja kontrolna točka: dodajte pomočnika in potisk poti
Preberite trenutno konfiguracijo strežnika, preden karkoli dodate. Druga kopija obstoječe direktive se ne zlije s prvo, nastala napaka pa imenuje direktivo, ne IPv6. Ob obstoječem pomočniku IPv4 ga dve vrstici razširita. Vsaka odgovarja na drugo vprašanje:
server-ipv6 fd73:93bc:b6e9:77::/64
push "route-ipv6 fd73:93bc:b6e9:60::/64"Prva je priročen pomočnik, ki nastavi vmesnik in bazen odjemalcev. Druga imenuje cilj v LAN, ki ga mora odjemalec doseči. Če odjemalcu dodelite naslov IPv6, mu to ne pove, katera omrežja so za strežnikom, zato sta potrebni obe vrstici.
Pomočnik ne sobiva s statičnim bazenom IPv6 ali s nopool. Če uvedba namerno dodeljuje naslove statično, ohranite to politiko in eksplicitno zasnujte ustrezni IPv6, namesto da bi politiko izbrisali, da bi ustrezala primeru.
Četrta kontrolna točka: posredovanje in pot odgovora
Vklopite posredovanje IPv6 na strežniku prek lastnega upravitelja konfiguracije sistema, ne z enkratnim zapisom med izvajanjem, ki ga boste pozabili. Oblika med izvajanjem je uporabna za hiter preizkus. Trajna konfiguracija spada v datoteko drop-in, ki jo bere omrežni upravitelj distribucije:
sysctl -w net.ipv6.conf.all.forwarding=1Posredovanje spremeni vedenje gostitelja IPv6 bolj kot usmerjanje paketov. Gostitelj, ki je kot odjemalec sprejemal oznanila usmerjevalnika, tega preneha početi na enak način, ko začne posredovati. Zato naprava, katere vhodna povezava IPv6 je odvisna od RA, potrebuje izrecen načrt za to povezavo.
Nato dajte LAN pot nazaj v bazen tunela. Prehod IPv6 delovne obremenitve je usmerjevalnik LAN, ne strežnik VPN, zato pot spada na ta usmerjevalnik in kaže na naslov LAN strežnika:
ip -6 route add fd73:93bc:b6e9:77::/64 via fd73:93bc:b6e9:60::1Ohranite vrste ICMPv6, ki jih povezava potrebuje, vključno s povratno informacijo o MTU poti. Pravilo požarnega zidu IPv4 ne pomeni pravila IPv6, popolna blokada IPv6 pa pokvari odkrivanje sosedov tako, da je videti kot napaka pri usmerjanju.
Peta kontrolna točka: preberite odjemalca, nato preizkusite
Znova povežite odjemalca in preberite naslove, ki jih je dejansko prejel, namesto da bi jih sklepali iz pomožnega naslova strežnika. Seznam vmesnikov prikazuje obe družini na isti napravi:
ip -6 addr show tun0
ip -6 route get fd73:93bc:b6e9:60::20Pot, ki izbere tunel, dokazuje, da odjemalec ve, kam poslati paket. Ne dokazuje, da ga strežnik posreduje, da ima usmerjevalnik LAN povratno pot ali da sme aplikacija odgovoriti.
Preizkusite samo aplikacijo po vsaki družini po vrsti, nato ponovite po ponovni povezavi in po ponovnem zagonu gostitelja. Pot ali sysctl, ki preživi le do ponovnega zagona, je preizkus, ne zasnova.
Objavite zapis AAAA šele, ko pot IPv6 odgovori od začetka do konca. DNS, poizvedovan prek IPv4, lahko še vedno vrne naslov IPv6, zato razrešljivo ime ni dokaz, da nekaj posluša. Smernice RFC 4193 za ULA pokrivajo ustvarjanje globalnega ID, ki te predpone naredi vaše in ne kopije.