Već imate klijenta koji se povezuje preko IPv4 i dolazi do privatnog IPv4 radnog opterećenja iza poslužitelja. Cilj je doći do privatnog IPv6 radnog opterećenja kroz isti tunel bez diranja vanjskog transporta. Taj je redoslijed važan: vanjski put ostaje IPv4, a mijenjaju se samo unutarnji plan adresa, ruta klijenta i povratni put od poslužitelja do LAN-a. Pet kontrolnih točaka, svaka s nečim konkretnim za provjeru prije nastavka.

Kontrolna točka prva: veza koja već radi

Povežite klijenta i potvrdite IPv4 put prije nego što bilo što dodate. Tunel koji radi daje vam osnovnu liniju koja odvaja novu IPv6 pogrešku od stare problema s povezivanjem. Također vam kaže koju instancu poslužitelja zapravo uređujete.

Zabilježite bazen, topologiju i potisnute rute na koje se već oslanjate. IPv6 rad proširuje tu konfiguraciju; ne zamjenjuje je.

Kontrolna točka druga: odaberite unutarnje prefikse

Odaberite ULA /48 za lokaciju i izrežite dva /64 iz nje: jedan za klijente tunela, jedan za LAN segment s IPv6 radnim opterećenjem. Generirajte 40-bitni globalni ID umjesto kopiranja primjera prefiksa, i provjerite obje podmreže prema svakoj mreži koju lokacija već usmjerava:

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

Dva neovisna /64 sprječavaju da se klijentski bazen izreže iz LAN segmenta, što je važno kasnije kada pišete povratnu rutu. Vrijednosti iznad su jedan razrađen primjer, ne prefiks za ponovnu upotrebu.

Kontrolna točka treća: dodajte pomoćnik i potisak rute

Pročitajte trenutačnu konfiguraciju poslužitelja prije nego što bilo što dopišete. Drugi primjerak postojeće direktive ne spaja se s prvim, a nastala pogreška imenuje direktivu, a ne IPv6. Uz postojeći IPv4 pomoćnik, dva retka ga proširuju. Svaki odgovara na drugo pitanje:

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

Prvi je praktični pomoćnik koji postavlja sučelje i klijentski bazen. Drugi imenuje LAN odredište do kojeg klijent treba doći. Davanje IPv6 adrese klijentu ne kaže mu koje mreže postoje iza poslužitelja, pa su potrebni oba retka.

Pomoćnik ne koegzistira sa statičnim IPv6 bazenom ni s nopool. Ako implementacija namjerno dodjeljuje adrese statički, zadržite tu politiku i eksplicitno dizajnirajte IPv6 ekvivalent umjesto brisanja politike da bi se uklopila u primjer.

Kontrolna točka četvrta: prosljeđivanje i ruta odgovora

Uključite IPv6 prosljeđivanje na poslužitelju kroz vlastitog vlasnika konfiguracije sustava, a ne jednokratnim zapisom u vremenu izvođenja koji ćete zaboraviti. Oblik u vremenu izvođenja koristan je za brzi test. Trajna konfiguracija pripada u drop-in datoteku koju čita mrežni vlasnik distribucije:

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

Prosljeđivanje mijenja IPv6 ponašanje hosta mimo usmjeravanja paketa. Host koji je kao klijent prihvaćao Router Advertisements prestaje to činiti na isti način kada počne prosljeđivati. Zato stroj čiji IPv6 uplink ovisi o RA treba jasan plan za taj uplink.

Zatim dajte LAN-u rutu natrag do bazena tunela. IPv6 gateway radnog opterećenja je LAN usmjerivač, a ne VPN poslužitelj, pa ruta pripada tom usmjerivaču i pokazuje na LAN adresu poslužitelja:

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

Zadržite ICMPv6 tipove koje veza treba, uključujući povratnu informaciju o MTU puta. IPv4 firewall pravilo ne podrazumijeva IPv6 pravilo, a potpuno blokiranje IPv6 kvari otkrivanje susjeda na način koji izgleda kao pogreška usmjeravanja.

Kontrolna točka peta: pročitajte klijenta, pa testirajte

Ponovno povežite klijenta i pročitajte adrese koje je doista dobio umjesto da ih izvodite iz pomoćne adrese poslužitelja. Popis sučelja pokazuje obje obitelji na istom uređaju:

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

Ruta koja odabere tunel dokazuje da klijent zna kamo poslati paket. Ne dokazuje da ga poslužitelj prosljeđuje, da LAN usmjerivač ima povratnu rutu ili da aplikacija smije odgovoriti.

Testirajte samu aplikaciju preko svake obitelji redom, pa ponovite nakon ponovnog povezivanja i nakon restarta hosta. Ruta ili sysctl koji preživi samo do restarta je test, a ne dizajn.

Objavite AAAA zapis tek kada IPv6 put odgovori od početka do kraja. DNS upitan preko IPv4 još može vratiti IPv6 adresu, pa razrješivo ime nije dokaz da nešto sluša. RFC 4193 ULA smjernice pokrivaju generiranje globalnog ID-a koji čini ove prefikse vašima, a ne kopijom.

Povezani članci