Razdelitev vašega /64 ne usmerja IPv6 do odjemalcev VPN
Odjemalec VPN ima lahko globalni naslov IPv6 in vseeno nikoli ne prejme odgovora. Odločite se, ali upstream usmerja vaš sklad ali pričakuje odkrivanje sosedov.
Odjemalec prikazuje globalni naslov IPv6, rokovanje je končano in iz interneta se nič ne vrne. Nastavitev sklada je videti pravilna, ker je pravilna; naslov je veljaven in tunel ga prenaša. Kar odpove, je dostava, in dostava je odvisna od odločitve, sprejete nad strežnikom VPN, na katero nobena konfiguracija na strani odjemalca ne more vplivati.
Mit: del vašega /64 je že dosegljiv
Zgodba je privlačna: strežnik ima javni /64, razrežite ga na polovico, drugo polovico dajte skladu VPN in ti odjemalci so zdaj na internetu. Razdelitev predpone res dodeljuje naslove brez kolizij. Ne spremeni pa tega, kako se omrežje upstream odloča, kam naj gre paket za enega od teh naslovov.
IPv6 nima privzetega prevajalnega sloja, na katerega bi se oprl, zato mora povratna pot obstajati kot usmerjanje ali kot dostava na ravni povezave. Paket, naslovljen na tunelski naslov odjemalca, prispe do usmerjevalnika upstream in ta usmerjevalnik sprejme odločitev o posredovanju iz lastne tabele. Če tabela kaže na fizično povezavo, paket gre tja, ne glede na to, kaj meni vaš strežnik VPN.
To je celotna napaka: smer naprej deluje, ker jo pošilja vaš strežnik, povratna smer pa umre en preskok stran, ker se upstream nikoli ni naučil, da odjemalec obstaja.
Kaj dostava na povezavi v resnici zahteva
Ko upstream obravnava celoten /64 kot na fizični povezavi, vsak ciljni naslov razreši z odkrivanjem sosedov. Pošlje zahtevo na to povezavo in pričakuje, da bo lastnik naslova odgovoril. Odjemalec VPN za tunelom ni na tej povezavi in ne more odgovoriti, zato zahteva ostane brez odgovora in paket se zavrže.
Izrez /65 tega pričakovanja ne spremeni. Upstream še vedno obravnava obseg kot na povezavi, ker je edino, kar bi ga premaknilo, pot ali proxy, ki odgovarja v imenu odjemalca. Nobeno od obeh se ne pojavi, ker ste uredili konfiguracijo VPN. Prav ta vrzel pojasnjuje, zakaj lahko sklad popolnoma deluje med svojimi odjemalci in je vseeno nedosegljiv od koder koli drugje.
Odkrivanje sosedov prek proxyja je mehanizem, ki lahko poveže oba svetova. Prehod odgovarja na zahteve za določene naslove odjemalcev, ki jih ima, in posreduje promet v tunel. Deluje in mora biti omejeno točno na te naslove z življenjskim ciklom, ki sledi skladu, ker odgovarjanje za naslov, ki ga ne oskrbujete več, spremeni promet nekoga drugega v črno luknjo. Nekateri upstreami ne bodo sprejeli proxy odgovorov, ki jih niso pričakovali, zato ta zasnova potrebuje tudi soglasje ponudnika.
Kaj zahteva usmerjena dostava
Čistejša zasnova je dodelitev, ki jo upstream res usmeri na vaš prehod. To je lahko delegirana predpona ali statična pot za manjši blok, in zahteva je v obeh primerih enaka: tabela upstreama mora za obseg odjemalcev kazati na vaš strežnik. Potem povratni promet prispe na prehod in prehod ga posreduje v tunel.
Usmerjena dostava popolnoma odpravi vprašanje odkrivanja sosedov, zato se jo splača zahtevati od ponudnika, preden zgradite kaj prebrisanega. Zahtevajte pot pisno in potrdite, da je naslednji preskok naslov, ki ga upstream res lahko doseže.
Obe zasnovi še vedno potrebujeta omogočeno posredovanje IPv6 na prehodu in pravila požarnega zidu, ki dovoljujejo posredovani tok v obe smeri. Dostava je predpogoj, ne nadomestilo, za preostanek poti. Delujoča pot z izklopljenim posredovanjem ustvari natanko enako tišino kot manjkajoča pot, zato preverite oboje, preden kar koli preoblikujete.
Dve neodvisni poti, ki ju je treba pravilno nastaviti
Predpona sklada in lastna privzeta pot odjemalca sta ločeni nastavitvi, njuno mešanje pa ustvari delno povezljivost, ki je videti kot pokvarjen tunel. Sklad strežniku pove, katere naslove dodeliti. Poti odjemalca odločajo, na katere cilje odjemalec sploh pošilja promet v tunel.
server-ipv6 2001:db8:42:100::/64
push "redirect-gateway ipv6 !ipv4"Predpona zgoraj je dokumentacijski prostor in preusmeritev velja samo za IPv6, kar je točno tisto, kar dvojna namestitev pogosto želi, medtem ko se dostava IPv6 še popravlja. Preusmeritev IPv4 ne vzpostavi pokritosti IPv6 in nobena od nastavitev ne implicira druge.
Ohranjajte krmilni promet, od katerega je odvisen IPv6, delujoč pod katero koli politiko, ki jo uporabite. Sporočila Packet Too Big so klasična žrtev požarnega zidu, ki dovoljuje samo TCP in UDP, njihovo zavrženje pa ustvari povezave, ki se vzpostavijo in nato obtičijo pri večjih prenosih.
Obvestila usmerjevalnika so tretji gibljivi del. Če prehod začne oglaševati na zgornji povezavi, lahko spremeni, kaj si odjemalci in sosedje mislijo o predponah na povezavi, kar lahko tiho razveljavi zasnovo, ki ste jo pravkar dokumentirali.
Zapišite zasnovo, da jo ponovna gradnja ponovi
Zapišite tri objekte ločeno: dodelitev odjemalca, ciljno pot odjemalca in način dostave dodelitve s strani upstreama. Bralec, ki ima vse tri, lahko ponovno zgradi namestitev; bralec, ki ima samo nastavitev sklada, bo ponovil prvotno napako.
Nato izrecno preizkusite povratno smer s paketom, ki se mora vrniti od zunaj. Priročnik openvpn(8) pokriva možnosti server-ipv6 in redirect, potrditev usmerjanja pri vašem ponudniku pa pokriva tisto polovico, ki je priročnik ne more.