AllowedIPs je seznam usmerjanja, ne pravilo požarnega zidu
Izbere sopotnika za odhodni promet in preveri vhodne vire. Ni seznam dostopa, in izklop upravljanja poti ne popravi razdeljenega tunela.
Večina ljudi bere AllowedIPs kot seznam dovoljenj, nabor naslovov, ki se lahko povežejo s sopotnikom, približno kot pravilo požarnega zidu, napisano za tunel. Ni tako. Polje je usmerjevalna tabela, ki deluje v obe smeri: izbere sopotnika za odhodni paket in preveri vir vhodnega. Branje kot seznama dostopa ustvari konfiguracije, ki usmerjajo promet, ki ga nihče ni zahteval.
Eno polje, dva bralca: izbira odhoda in preverjanje vira
Pri odjemalcu predpone določajo, katere cilje potujejo k temu sopotniku in katere ostanejo v običajnem omrežju. Zato vnos za 0.0.0.0/0 zajame vsak cilj IPv4, in zato uvoz profila polnega tunela pošlje običajno brskanje skozi oddaljeni stroj. Ozki vnosi naredijo nasprotno: usmerjajo samo navedena omrežja, vse drugo pa pustijo tam, kjer je bilo. Razdelek o usmerjanju kriptoključev v dokumentaciji WireGuard navaja obe nalogi na enem mestu: izbiro odhodnega sopotnika in preverjanje vhodnega vira.
Na strežniku isto polje opisuje, katere izvorne naslove lahko uporablja vsak sopotnik. To je kriptografska kontrola in ne filter paketov: paket, katerega notranji vir se ne ujema s seznamom sopotnika, se zavrže znotraj WireGuarda, preden ga vidi katera koli požarna pregrada gostitelja. Obe nalogi si delita en seznam, in prav zato se seznam, kopiran od drugod, obnaša napačno na mestu, ki ga niste upoštevali.
Odjemalčev blok je mesto, kjer se začne večina te zmede. Razdeljen tunel navaja oddaljena omrežja, polni tunel pa je isto polje s privzeto predpono:
[Peer]
# split tunnel: only these networks
AllowedIPs = 10.77.0.0/24, 192.168.30.0/24
[Peer]
# full tunnel: everything, both families
AllowedIPs = 0.0.0.0/0, ::/0
Obe obliki sta sami po sebi popolni in sta alternativi, ne koraki. Prva pošlje skozi tunel le tisti dve omrežji; druga pošlje vsak cilj, vnos ::/0 pa doda IPv6 k privzetemu IPv4. Katero koli izberete, so te predpone celotna odločitev o usmerjanju za tega sopotnika, ko wg-quick začne nameščati poti.
Zvezdišče potrebuje drugačen seznam
Zvezdišče navaja naslov tunela vsakega odjemalca kot predpono gostitelja, poleg tega pa vsako omrežje, ki resnično stoji za tem odjemalcem. Kopiranje širokega seznama odjemalca na vsakega sopotnika zvezdišča pove zvezdišču, da lahko mnogi sopotniki uporabljajo iste naslove kot vir, in to ni načrt naslovov. Polje Endpoint spada v povsem drug sloj: navaja zunanji naslov in vrata sopotnika, nikoli cilja znotraj tunela.
[Peer]
# laptop: tunnel address 10.77.0.2, office LAN behind it
AllowedIPs = 10.77.0.2/32, 192.168.30.0/24
Predpona gostitelja nosi naslov tunela, omrežna predpona pa nosi tisto, kar je za odjemalcem, in obe sta potrebni. Brez predpone gostitelja zvezdišče ne more vrniti lastnega prometa odjemalca, brez omrežne predpone pa LAN za njim ostane nedosegljiv; sopotnik, za katerim ni ničesar, prejme le predpono gostitelja.
Izpuščanje namestitve poti pušča vrzel
wg-quick, pomočnik, ki dvigne vmesnik iz konfiguracijske datoteke, namesti naslove vmesnika in poti kot del tega dela. Nastavitev Table = off pove pomočniku, naj izpusti delo s potmi, kar ne namesti nadomestil in ne naredi zasebnega omrežja dosegljivega. Ko samodejne poti delo že opravijo, je navajanje potrebnih predpon jasnejša konfiguracija. Izklopiti upravljanje poti in pustiti nadomestilo nenapisano ni zasnova, ampak opustitev.
Osnovno orodje wg se obnaša drugače: konfigurira vmesnik in se nikoli ne dotakne poti, zato namestitev, zgrajena neposredno na njem, potrebuje svoje ukaze za poti. Navodila, napisana za eno orodje, so lahko videti napačna, ko jih upoštevate z drugim. Uspešen ping je tudi šibek dokaz, ker preizkusi eno pot, ne pa vsake poti aplikacije, ki jo potrebujete.
DNS in IPv6 se odločata ločeno
Preverite naslov strežnika DNS, ki ga tunel oglašuje, in potrdite, da skozi izbrane predpone obstaja pot do tega naslova. Nastavitev razreševalnika ne naredi razreševalnika dosegljivega, in zoženje tunela lahko tiho odstrani pot, ki je vodila tja. Preglejte tudi IPv6 posebej, ker pravilna delitev IPv4 ne pove ničesar o privzeti poti IPv6, ki še vedno kaže na fizično povezavo. Tri ločene odločitve se lahko spremenijo hkrati, ko uredite en blok sopotnika.
Nato odprite en zasebni vir in eno običajno spletno mesto iz znane začetne konfiguracije. Če se vir odzove in brskanje še vedno izhaja skozi lokalno povezavo, delitev naredi tisto, kar ste zahtevali. Če se brskanje zlomi v istem trenutku, je tunel prevzel privzeto pot in seznam predpon je mesto, kjer je treba pogledati.