yksi Linux Plumbers Conferencen viimeaikaisista kokemuksista vakuutti minut siitä, että jos haluat olla osa todellista avoimen lähdekoodin WebRTC-pohjaista vertaisverkon audio/video-vuorovaikutusta, tarvitset internetosoitteen, joka ei ole NAT: n takana. Todellisuudessa protokolla toimii edelleen niin kauan kuin voit ottaa yhteyttä tainnutuspalvelimeen kertoaksesi ulkoisen osoitteesi ja mahdollisesti kääntöpalvelimeen välityspalvelimen pakettien välittämiseksi, jos molemmat päätepisteet on Natoitu, mutta kaikki tämä ulkoisten palvelimien etsiminen vie aikaa kuin ne teistä, jotka valittivat echo-testistä, löysivät. Ratkaisu kaikkeen tähän on yhteyden muodostaminen IPv6: n kautta, jossa on tarpeeksi suuri osoiteavaruus tukemaan jokaista planeetan laitetta, jolla on oma osoite. Kaikki nykyaikaiset Linux-jakelut tukevat IPv6: ta kättelyssä, joten on todennäköistä, että olet käyttänyt sitä vahingossa huomaamattasi, mikä on yksi IPv6: n autokonfiguraation kaunottarista (sen pitäisi vain toimia).
kuitenkin muutin hiljattain, ja niin menetin valokuitu-internetyhteyteni kaapelille, mutta kaapeli, jossa oli IPv6-osoite, joten tämä on minun tarinani saada kaikki toimimaan. Jos et oikeasti välitä protokollan perusasioista, voit hypätä alas miten. Tämä opas on myös keskittynyt ”dual stack” kokoonpano (joka on sekä IPv6 ja IPv4 osoitteet). Puhtaat IPv6-kokoonpanot ovat mahdollisia, mutta koska jotkin Internetin osat ovat edelleen vain IPv4: ää, ne eivät ole täydellisiä, ellet aseta IPv4-kapselointisiltaa.
- IPv6: n perusasiat
- miten IPv6 vain toimii?
- Multicast and neighborhood Discovery
- Router Discovery
- Yleisosoitteen konfiguraatio
- Miten: Oman kotireitittimen määrittäminen
- etuliitteen delegaatio
- reitittimen määrittäminen etuliitteen Delegoinnille
- delegoitujen etuliitteiden jakaminen
- mainonta reitittimenä
- SLAAC tai DHCPv6 (tai molemmat)
- Palomuurikonfiguraatio
- kokoamalla: Asiakkaiden IPv6-yhteyden saaminen
- johtopäätös
IPv6: n perusasiat
IPv6 on ollut kypsä protokolla jo pitkään, joten erehdyin olettamaan, että siitä olisi kasapäin hyviä oppeja. Kuitenkin luettuani 20 erilaista kuvausta siitä, miten IPv6 128-bittinen osoiteavaruus toimii eikä juuri muuta, luovuin epätoivoissani ja luin sen sijaan RFC: t. Oletan, että olet lukenut ainakin yhden näistä ohjeista, joten minun ei tarvitse mennä IPv6-osoitteiden etuliitteisiin, suffikseihin, käyttöliittymätunnuksiin tai aliverkkoihin, joten aloitan siitä, mihin suurin osa ohjeista päättyy.
miten IPv6 vain toimii?
IPv4: ssä on protokolla nimeltä dynamic host configuration protocol (DHCP), joten niin kauan kuin löydät DHCP-palvelimen, saat kaikki tarvittavat tiedot (paikallinen osoite, reititin, DNS-palvelin, aikapalvelin jne.). Tämän palvelun on kuitenkin oltava jonkun perustama ja IPv6 on suunniteltu konfiguroimaan verkko ilman sitä.
ensimmäinen oletus IPv6 StateLess Address AutoConfiguration (SLAAC) tekee on, että se on /64 aliverkossa (joten jokainen IPv6: n aliverkko sisältää 1010 kertaa niin monta osoitetta kuin koko IPv4 internet). Tämä tarkoittaa sitä, että koska useimmat todelliset aliverkot sisältävät <100 järjestelmää, ne voivat yksinkertaisesti valita satunnaisen osoitteen ja on hyvin epätodennäköistä, että ne törmäisivät olemassa oleviin järjestelmiin. Itse asiassa on olemassa kolme nykyistä tapaa valita osoite /64:
- EUI-64 (RFC 4291) perustuu MAC-osoite, joka on periaatteessa MAC yhden bitin käännetään ja FF:fe sijoitettu keskelle.
- Staattinen yksityinen (RFC 7217), joka tuottaa staattiseen avaimeen, käyttöliittymään, etuliitteeseen ja laskuriin perustuvasta hajautuksesta (laskuria korotetaan, jos yhteentörmäys tapahtuu). Näitä pidetään parempina kuin Eui-64: ää, jotka antavat pois kaikki MAC-osoitteeseen liittyvät asetukset (kuten minkälainen verkkokortti sinulla on)
- Privacy Extension-osoitteet (RFC 4941), jotka ovat hyvin samanlaisia kuin vakaat Yksityiset osoitteet, paitsi että ne muuttuvat ajan myötä IPv6-osoitteen poistomekanismin avulla ja ovat asiakasjärjestelmille, jotka haluavat säilyttää anonymiteetin.
seuraava ongelma Linuxissa on, kuka määrittää käyttöliittymän? Ytimen IPv6-pino on itse asiassa suunniteltu tekemään se, ja tekee, ellei käsketä, mutta useimmat nykyaikaiset verkko-ohjaimet (kuten NetworkManager) ovat ohjaushulluja ja sammuttavat ytimen automaattisen kokoonpanon, jotta he voivat tehdä sen itse. Ne myös oletuksena vakaa yksityinen osoite käyttäen staattinen salaisuus ylläpidetään tiedostojärjestelmä (/var/lib/NetworkManager / secret_key).
seuraavaksi IPv6-osoitteista on ymmärrettävä, että ne on jaettu laajuuksiin, joista tärkein on link local (unrouteable) – osoitteet, joissa on perinteisesti aina etuliite fe80::/64. Linkin paikallinen osoite määritetään ensin jollakin edellä mainituista menetelmistä ja käytetään sitten verkon koettamiseen.
Multicast and neighborhood Discovery
toisin kuin IPv4: ssä, IPv6: ssa ei ole lähetysvalmiutta, joten kaikki löydöt tehdään multicastilla. Verkon tulevat solmut tilaavat tiettyjä multicast-osoitteita, erikoispakettien kautta, jotka kytkin sieppasi, eivätkä saa mitään multicast-osoitetta, johon niitä ei ole tilattu. Tavanomaisesti kaikilla linkkien paikallisilla monilähetysosoitteilla on etuliite ff02::/64 (muuntyyppisten monilähetysosoitteiden osalta katso RFC 4291). Kaikki solmut tilaavat” kaikki solmut ” monilastiosoitteen ff02::1 ja niiden on myös tilattava oma pyydetty solmun monilastiosoite osoitteessa ff02::1:ffXX:XXXX, jossa Viimeiset 24 bittiä vastaavat solmun IPv6-osoitteen alinta 24 bittiä. Tämä jälkimmäinen on välttää häiriöitä, joita ennen esiintyi IPv4 ARP lähetyksiä, koska nyt voit kohdistaa tietyn osajoukon solmut osoitteen resoluutio.
IPV6-osoiteratkaisuprotokollaa kutsutaan nimellä Neighbour Solicitation (NS), joka on kuvattu RFC 4861: ssä, ja sen käyttö SLAAC: n kanssa on kuvattu RFC 4862: ssa, ja se tehdään lähettämällä monilähetys löytämäsi solmun naapuripyyntöosoitteeseen, joka sisältää koko IPv6-osoitteen, jonka haluat tietää, solmu, jossa vastaava osoite vastaa linkkikerroksen (MAC) osoitteella Naapurimainoksen (NA) paketissa.
kun solmu on valinnut linkkinsä paikallisen osoitteen, se lähettää ensin NS-paketin valittuun osoitteeseensa nähdäkseen, vastaako kukaan, ja jos kukaan ei vastaa, se olettaa, että on OK pitää se muuten, se noudattaa sen tiettyyn osoitemuotoon liittyvää yhteentörmäyksen välttämisprotokollaa. Kun se on löytänyt ainutlaatuisen osoitteen, solmu määrittää tämän linkin paikallisen osoitteen ja etsii reitittimen. Huomaa, että jos IPv6-verkkoa ei ole, discovery pysähtyy tähän, minkä vuoksi useimmat verkkoliitännät näyttävät aina linkin paikallisen IPv6-osoitteen.
Router Discovery
kun solmulla on oma yksilöllinen linkin paikallinen osoite, Se käyttää sitä lähettääkseen Router Solicitation (RS) – paketteja ”all routers” – monilähetysosoitteeseen ff02::2. Jokainen verkon reititin vastaa reitittimen Mainospaketilla (Ra), joka kuvaa (muun muassa) reitittimen eliniän, verkon MTU, yhden tai useamman etuliitteen, josta reititin on vastuussa, reitittimen linkkiosoitteen ja joukon optiolippuja, mukaan lukien m (Managed) – ja O (Other Configuration) – lippu ja mahdollisesti joukko DNS-palvelimia.
jokainen mainostettu etuliite sisältää etuliitteen ja etuliitteen pituuden, joukon lippuja mukaan lukien A (autonominen konfiguraatio) ja L (paikallinen linkki) sekä joukon elinaikoja. Linkin paikalliset etuliitteet kertovat, mitä yleisliitteitä lähiverkon käyttäjät (niitä voi olla useampia) ja onko sinulla lupa tehdä SLAAC yleisliitteellä (jos A-lippu on selvä, sinun täytyy kysyä reitittimeltä osoite DHCPv6: lla). Jos reitittimen käyttöikä ei ole nolla, voit olettaa sen olevan aliverkon oletusreititin.
nyt kun solmu on löytänyt yhden tai useamman reitittimen, se voi määrittää oman maailmanlaajuisen osoitteensa (huomaa, että jokaisella Reititettävällä IPv6-solmulla on vähintään kaksi osoitetta: linkki paikallinen ja globaali). Miten se tekee tämän riippuu reitittimen ja etuliitteen lipuista
Yleisosoitteen konfiguraatio
ensimmäinen asia, jonka solmun täytyy tietää, onko käytettävä SLAAC yleisosoitteelle vai DHCPv6: lle. Tämä määräytyy täysin minkä tahansa Ra-paketissa olevan linkin paikallisen etuliitteen a-lipun perusteella. Jos A on asetettu, niin solmu voi käyttää SLAAC ja jos A on selkeä niin solmun täytyy käyttää DHCPv6 saadakseen osoitteen. Jos A on asetettu ja myös M (hallittu) – lippu, solmu voi käyttää joko SLAAC-tai DHCPv6-lippua (tai molempia) osoitteen saamiseksi ja jos M-lippu on selvä, mutta O (Muu Config) – lippu on läsnä, solmun on käytettävä SLAAC-lippua, mutta se voi käyttää DHCPv6-lippua saadakseen muuta tietoa verkosta (yleensä DNS).
kun solmulla on globaali osoite now tarvitsee oletusreitin. Se muodostaa oletusreittilistan RA-paketeista, joiden reitittimen käyttöikä ei ole nolla. Kaikki nämä on määritetty oletusarvoisiksi reiteiksi niiden linkkiosoitteeseen RA-määritetyn hop-määrän kanssa. Lopuksi solmu voi lisätä tiettyjä etuliitteitä Ra-paketeista, joissa on nollareitittimen elinikä, mutta ei linkitä paikallisia etuliitteitä.
DHCPv6 on melko monimutkainen konfiguraatioprotokolla (katso RFC 8415), mutta se ei voi määrittää etuliitteen pituutta (eli kaikki saadut osoitteet on määritetty /128: ksi) tai reittejä (nämä on saatava RA-paketeista). Tämä johtaa hienovaraisuus lähtevän osoitteen valinta, että tarkin on aina edullinen, joten jos määrittää sekä SLAAC ja DHCPv6, SLAAC osoite lisätään /64 ja DHCPv6 osoite /128 eli lähtevän IP-osoite on aina DHCPv6 yksi (vaikka jos ulkoinen yksikkö tietää SLAAC osoite, ne silti tavoittaa sinut sitä).
Miten: Oman kotireitittimen määrittäminen
yksi edellä mainituista asioista on, että IPv6 määrittää aina automaattisesti, ja vaikka onkin totta, että jos vain kytket kannettavan tietokoneen kaapelimodeemin ethernet-porttiin, se vain määrittää automaattisesti, useimmilla ihmisillä on monimutkaisempi kotireititin, johon liittyy reititin, joka tarvitsee erityistä suostuttelua ennen kuin se toimii. Tämä tarkoittaa, että sinun täytyy saada lisäominaisuuksia ISP käyttämällä erityisiä DHCPv6 pyyntöjä.
tämä osio on kirjoitettu omasta näkökulmastani: Minulla on melko monimutkainen IPv4-verkko, joka on täysin avoin, mutta kaistanleveys rajoitettu (epäluotettaviin asiakkaisiin) wifi-verkko, ja useita suojattuja sisäisiä verkkoja (yksi laboratoriooni, yksi puhelimiini ja yksi kotitalouksien videokameroihin), joten tarvitsen vähintään 4 aliverkkoa antamaan jokaiselle laitteelle kodissani IPv6-osoitteen. Käytän myös OpenWRT: tä reitittimen jakeluna, joten kaikki IPv6: n asetustiedot ovat hyvin spesifisiä sille (vaikka on huomattava, että NetworkManagerin kaltaiset asiat voivat myös tehdä kaiken tämän, jos olet valmis kaivamaan dokumentaatiosta).
etuliitteen delegaatio
koska DHCPv6 antaa vain /128-osoitteen, tämä ei riitä, koska se on itse reitittimen IP-osoite. Jotta voit tulla reitittimeksi, sinun on pyydettävä IPv6-osoiteavaruuden osan delegointia DHCPv6: n Identity Association for Prefix Delection (IA_PD) – vaihtoehdon kautta. Kun tämä on tehty, ISP olettaa reitittimen IP-osoitteen olevan kaikkien delegoitujen etuliitteiden reitti. Hienous tässä on, että jos haluat useamman kuin yhden aliverkon, sinun täytyy pyytää sitä erityisesti (asiakkaan on määritettävä tarkka etuliitteen pituus se etsii) ja koska se on etuliitteen pituus, ja oletusaliverkon pitäisi olla /64, jos pyydät etuliitteen pituus 64 sinulla on vain yksi aliverkon. Jos pyydät 63 sinulla on 2 ja niin edelleen. Ongelmana on, miten tiedät, kuinka monta aliverkkoa ISP on valmis antamaan sinulle? Valitettavasti ei ole mitään keinoa löytää tätä (minun piti tehdä internet-haku löytää minun ISP, Comcast, oli valmis delegoimaan etuliite pituus 60, eli 16 aliverkot). Jos haku ei kerro, kuinka paljon ISP on valmis delegoimaan, voit kokeilla alkaen 48 ja työskentely tiesi 64 välein 1 nähdä, mitä suurin delegaatio voit päästä pois (on raportoitu ISPs lukitsee sinut ensimmäinen delegoitu etuliitteen pituus, joten älä aloita 64). Lopullinen hienous on se, että etuliite, jonka olet delegoinut, ei välttämättä ole sama etuliite kuin reitittimen antama osoite (nykyinen comcast-määritykseni on reitittimeni 2001:558:600a:… mutta delegoitu etuliitteeni on 2601:600:8280:66d0:/60). Huomaa, että voit suorittaa odhcp6c: n manuaalisesti-P-valinnalla, jos sinun on tutkittava ISP: tä saadaksesi selville, minkä kokoisen etuliitteen voit saada.
reitittimen määrittäminen etuliitteen Delegoinnille
OpenWRT-ehdoin, reitittimen WAN DHCP(v6) määritystä ohjaa /etc/default/network. Sinulla on jo Wan-liitäntä (todennäköisesti nimeltään ’wan’) DHCPv4: lle, joten lisäät vain ylimääräisen ’wan6’ – käyttöliittymän saadaksesi ylimääräisen IPv6: n ja tulet dual stackiksi. Minun kokoonpanossani tämä näyttää
config interface 'wan6' option ifname '@wan' option proto 'dhcpv6' option reqprefix 60
pieni kummallisuus on ifname: @wan yksinkertaisesti kertoo config käyttää samaa ifname kuin’ wan ’ käyttöliittymä. Nimeäminen tällä tavalla on välttämätöntä, jos wan on silta, mutta se on hyvä käytäntö joka tapauksessa. Toinen vaihtoehto ”reqprefix” kertoo DHCPv6: n pyytävän /60-etuliitteen delegointia.
delegoitujen etuliitteiden jakaminen
tämä osoittautuu huomattavan yksinkertaiseksi. Ensinnäkin sinun täytyy määrittää delegoitu etuliite kunkin muita rajapintoja reitittimen, mutta voit tehdä tämän lisäämättä uutta OpenWRT käyttöliittymä jokaiselle niistä. Sisäisessä IPv4-verkossani on kaikki staattiset osoitteet, joten jokaiseen käyttöliittymään lisätään kolme ohjetta:
config interface 'lan' ... interface designation (bridge for me) option proto 'static' ... ipv4 addresses option ip6assign '64' option ip6hint '1' option ip6ifaceid '::ff'
ip6assign ’ N ’ tarkoittaa, että olet /n-verkko (joten tämä on aina /64 minulle) ja ip6hint ’n’ tarkoittaa, että käytä N: ää aliverkon tunnuksena ja ip6ifaceid ’S’ tarkoittaa, että käytä S:ää IPv6-loppuliitteenä (tämä oletusarvo on:: 1 joten jos olet OK sen kanssa, jätä tämä direktiivi pois). Joten koska minulla on 2601:600:8280: 66d0::/60 etuliite, tämän käyttöliittymän globaali osoite on 2601:600:8280: 66d1:: ff. Nyt happotesti, jos sait tämän oikein, tämän maailmanlaajuisen osoitteen pitäisi olla pingattavissa mistä tahansa IPv6 Internetissä (jos se ei ole, se on todennäköisesti palomuuri ongelma, katso alla).
mainonta reitittimenä
pelkkä delegoidun etuliitteen saaminen paikalliseen reititinliittymään ei riitä . Nyt sinun täytyy saada reititin vastaamaan reitittimen pyynnöt FF02:: 2 ja vaihtoehtoisesti tehdä DHCPv6. Valitettavasti, OpenWRT on kaksi mekanismia tehdä tämä, yleensä molemmat asennettu: odhcpd ja dnsmasq. Mitä löysin oli, että mikään minun direktiivit / etc/config/dhcp tulisi voimaan, kunnes poistin odhcpd täysin
/etc/init.d/odhcpd stop/etc/init.d/odhcpd disable
ja koska käytän dnsmasq laajasti muualla (split DNS sisäisten / ulkoisten verkkojen), että sopii minulle hyvin. Kuvaan ensinnäkin, mitä vaihtoehtoja tarvitset dnsmasq ja toiseksi, miten voit saavuttaa tämän käyttämällä merkintöjä OpenWRT / etc/config /dhcp tiedosto (minusta tämä hyödyllinen, koska se on aina viisasta tarkistaa, mitä OpenWRT on laittaa/var/etc / dnsmasq.conf-tiedosto).
ensimmäinen tarvitsemasi dnsmasq-vaihtoehto on ”enable-ra”, joka on yleinen parametri, joka ohjeistaa dnsmasq: ta käsittelemään reititinmainoksia. Seuraava tarvitsemasi parametri on käyttöliittymäkohtainen ’ra-param’, joka määrittää globaalit reitittimen mainosparametrit ja jonka on ilmestyttävä kerran jokaiselle käyttöliittymälle, jolla haluat mainostaa. Lopuksi ”dhcp-range” vaihtoehto mahdollistaa yksityiskohtaisemman kokoonpanon tyypin Ra liput ja valinnainen DHCPv6.
SLAAC tai DHCPv6 (tai molemmat)
monin tavoin tämä on henkilökohtainen valinta. Jos sallit SLAAC, isännät, jotka haluavat käyttää yksityisyyden laajennusosoitteita (kuten Android-puhelimet) voivat tehdä niin, mikä on hyvä asia. Jos sallit myös DHCPv6-osoitteen valinnan, sinulla on luettelo isännille osoitetuista osoitteista ja dnsmasq tekee DNS-päätöslauselman niille (vaikka se voi tehdä DNS SLAAC-osoitteille edellyttäen, että se saa kertoa niistä). ”Dhcp-range” – vaihtoehdolle on olemassa erityinen tagi ”constructor”, joka kertoo sen muodostavan toimitetun osoitteen (joko RA: lle tai DHCPv6: lle) määritellyn käyttöliittymän IPv6-etuliitteestä, mikä on tapa jakaa delegoidut etuliitteemme osoitteet. ”Dhcp-range” -moodit ovat ”Ra-only” DHCPv6: n hylkäämiseksi kokonaan, ”slaac” DHCPv6: n osoitteenvalinnan sallimiseksi ja ”Ra-stateless” DHCPv6: n osoitteenvalinnan hylkäämiseksi, mutta muut DHCPv6: n asetustiedot sallitaan.
yrityksen ja erehdyksen perusteella (ja lopuksi tutkimalla skriptausta /etc/init.d / dnsmasq) edellä mainittujen dnsmasq-vaihtoehtojen saavuttamiseksi vaadittavat OpenWRT-valitsimet ovat
config dhcp lan option interface lan option start 100 option limit 150 option leasetime 1h option dhcpv6 'server' option ra_management '1' option ra 'server'
”ra_management” avainvaihtoehtona ” 0 ”tarkoittaa SLAACIA DHCPv6-vaihtoehdoilla,” 1 ”tarkoittaa SLAACIA täydellä DHCPv6-vaihtoehdolla,” 2 ”tarkoittaa vain DHCPv6: ta ja” 3 ” tarkoittaa vain SLAACIA. Toinen OpenWRT kummallisuus on, että ei näytä olevan tapa asettaa vuokrasopimuksen alue: se aina oletuksena joko staattinen vain tai:: 1000:: ffff.
Palomuurikonfiguraatio
muun muassa se, että Linuxissa on kaksi täysin erillistä palomuuria: toinen IPv4: lle ja toinen IPv6: lle. Jos olet koskaan kirjoittanut omia sääntöjä heille, mahdollisuudet ovat teit sen OpenWRT/etc / palomuuri.käyttäjätiedosto ja käytit iptables-komentoa, mikä tarkoittaa, että lisäsit vain säännöt IPv4-palomuuriin. Jos haluat lisätä saman säännön IPv6: lle, sinun täytyy kopioida se ip6tables-komennolla. Toinen merkittävä ongelma, jos käytät yhteyden seuranta port knock detection kuten minä, on, että Linux-yhteyden seuranta on vaikeuksia IPv6 multicast, joten paketteja, jotka menevät ulos multicast mutta tulevat takaisin unicast (kuten useimmat discovery protokollia) saada väärä contrack valtion. Korjatakseni tämän, minulla oli lopulta oltava SYÖTTÖSÄÄNTÖ, joka vain hyväksyi kaikki ICMPv6 ja DHCPv6 (udp-portit 546 ja 547). Muut palomuuri näkökohdat ovat, että nyt jokaisella on oma IP-osoite, ei tarvitse NAT (OpenWRT voidaan suostutella huolehtimaan tästä automaattisesti, mutta jos olet päällekkäisiä IPv4 sääntöjä manuaalisesti, älä kopioi Nat sääntöjä). Viimeinen sopii minulle paremmin.: oma wifi-liitäntä on suunniteltu paikallisen Internetin jatkeeksi ja kaikkien siihen yhdistävien koneiden odotetaan pystyvän suojautumaan, koska ne siirtyvät sellaisiin vihamielisiin ympäristöihin kuin airport wifi, joten teen täydellisen wifi-liitettyjen laitteiden altistumisen yleiselle Internetille kaikissa porteissa, mukaan lukien porttikoettimet. Minun sisäisiä laitteita, minulla on asiaan liittyvä, vakiintunut sääntö varmistaa, että niitä ei tutkita, koska niitä ei ole suunniteltu siirtymään pois sisäisestä verkosta.
nyt ongelmat OpenWRT: n kanssa: koska haluat NAT IPv4 mutta ei IPv6 sinun täytyy olla kaksi erillistä wan vyöhykkeet heille: Jos yrität yhdistää ne (kuten minä ensin), sitten OpenWRT lisää IPv6-ctstate virheellinen sääntö, joka estää naapuri Discovery toimimasta, koska contrack ongelmia IPv6 multicast, joten minun wan alueet ovat (hyvin, tämä on valhe, koska minun palomuuri on nyt käsityönä, mutta tämä on mitä tarkistin työskenteli ennen kuin laitoin käsityönä palomuuri paikalleen):
config zone option name 'wan' option network 'wan' option masq '1' ...config zone option name 'wan6' option network 'wan6' ...
ja lan-alueen (täysin esteetön) reittisäännöt ovat
config forwarding option src 'lan' option dest 'wan'config forwarding option src 'lan' option dest 'wan6'config forwarding option src 'wan6' option dest 'lan'
kokoamalla: Asiakkaiden IPv6-yhteyden saaminen
nyt kun reititin on määritetty, kaiken pitäisi vain toimia. Jos näin kävi, kannettavan wifi-liittymäsi pitäisi nyt olla maailmanlaajuinen IPv6-osoite
ip -6 address show dev wlan0
jos se tulee takaisin tyhjänä, sinun täytyy ottaa IPv6 käyttöön jakelussasi. Jos siinä on vain linkki paikallinen (fe80:: etuliite) osoite, IPv6 on käytössä, mutta reititin ei ole mainonta (epäilyttävä palomuuri ongelmia discovery paketteja tai dnsmasq väärin). Jos näet globaalin osoitteen, olet mennyttä. Nyt pitäisi päästä https://testv6.com ja varmistaa pisteet 10/10.
palapelin viimeinen pala suosii uutta IPv6-yhteyttä, kun DNS tarjoaa valittavaksi IPv4-tai IPv6-osoitteita. Kaikkien nykyaikaisten Linux-asiakkaiden tulisi suosia IPv6: ta, kun se on saatavilla, jos se on liitetty dual stack-verkkoon, joten kokeile … jos ping, sano, www.google.com ja katso IPv6 osoite olet valmis. Jos ei, sinun on päästävä IPv6-osoitemerkintöjen (RFC 6724) ja gai: n hämärään maailmaan.conf.
johtopäätös
IPv6: n lisääminen ja olemassa oleva IPv4-asennus ei ole tällä hetkellä yksinkertainen plug in and go-toiminto. Kuitenkin, jos ymmärrät kourallinen eroja kahden protokollia, se ei ole ylitsepääsemätön ongelma joko. Olen myös kaunistellut monia ongelmia, joita saatat kohdata Internet-palveluntarjoajasi kanssa. Jotkut ovat kertoneet, että heidän Internet-palveluntarjoajansa jakavat vain yhden IPv6-osoitteen ilman etuliitteen delegaatiota, jolloin mielestäni uuden Internet-palveluntarjoajan löytäminen olisi viisainta. Toiset raportoivat, että ISP delegoi vain yhden /64-etuliitteen, joten valinta tässä on joko ajaa vain yksi aliverkko (todennäköisesti riittää paljon kotiverkkoja), tai aliverkko on suurempi kuin /64 ja kieltää SLAAC, joka ei todellakaan ole suositeltu kokoonpano. Kuitenkin, edellyttäen ISP on kohtuullinen, tämä blogikirjoitus pitäisi ainakin auttaa sinut alkuun.