WireGuard AllowedIPs: ruta koju NetworkManager nikad nije dodao
Ispravan WireGuard profil može završiti rukovanje i ipak ne poslati ništa. Uporedite kernelovu tablicu s AllowedIPs, pa dajte putu rute jednog vlasnika.
Brojač rukovanja se ažurira, interfejs zadržava svoju adresu, a ping prema drugoj strani ne stiže nigdje. Ta kombinacija zbunjuje ljude jer uspješno rukovanje izgleda kao dokaz da je tunel spreman. Nije tako: tunel može biti potpuno dogovoren i ipak nemati rutu koja usmjerava saobraćaj u njega, a to su dva odvojena posla koja obavljaju dva odvojena dijela stanja. Popravka u potpunosti zavisi od toga koje od to dvoje nedostaje, pa je prvi korak otkriti to.
wg-quick obavlja oboje bez pitanja. Ugrađena podrška za WireGuard u NetworkManageru također po defaultu instalira rute prema peerovima, što sužava sumnjivce na onemogućenu opciju, drugu tablicu rutiranja ili konfiguraciju uvezenu kroz nešto drugo.
Potvrdite tunel prije nego što pojurite za rutom
wg show ispisuje interfejs, peera, endpoint i starost posljednjeg rukovanja, a ip addr show potvrđuje da je adresa prisutna. Nedavno rukovanje znači da ključevi, endpoint i UDP put rade. Sve što je pokvareno nalazi se nizvodno od njih: rutiranje, filtriranje ili razrješavanje imena.
Zatim pitajte kernel šta bi uradio sa stvarnim odredištem umjesto hipotetičkim: ip route get 10.42.7.9. Odgovor imenuje odlazni interfejs i izvornu adresu koju bi paket nosio. Kada imenuje fizički adapter, paket nikada ne ulazi u tunel koliko god rukovanje izgledalo zdravo.
AllowedIPs je filter i lista ruta
Prefiksi u AllowedIPs obavljaju dva posla. Odabiru koji peer nosi odlazno odredište i provjeravaju izvornu adresu dolaznih paketa, što je granica kriptoključnog rutiranja. U wg-quicku oni također pokreću automatsku instalaciju ruta, i to dodatno ponašanje je razlog zašto ista konfiguracija radi iz terminala, a ne iz desktop klijenta.
U slučaju koji stoji za ovim tekstom, profil je uvezen preko dodatka treće strane, a ne preko ugrađene podrške, i interfejs se podigao bez prefiksne rute. Popis tablice to odmah pokazuje: ip route show sadrži samo povezanu rutu za adresu interfejsa i ništa za udaljeni raspon.
Pitajte jesu li rute prema peerovima uopšte omogućene
Pročitajte postavku prije nego što bilo šta promijenite: nmcli -f wireguard.peer-routes,ipv4.route-table connection show work-wg. Kada peer-routes pokazuje no, podržana popravka je nmcli connection modify work-wg wireguard.peer-routes yes, nakon čega slijedi ponovno povezivanje. Dodavanje statične rute umjesto toga radi do sljedeće aktivacije i zatim tiho nestane. To nestajanje je znak: rutu koja se svako jutro vraća kao misterija ne instalira profil.
Ako je opcija već omogućena, provjerite živi li prefiks u drugoj tablici pomoću ip route show table all | grep 10. Ruta u tablici koja nije glavna ne nedostaje, ona je jednostavno nevidljiva pretrazi koja konsultuje samo glavnu tablicu. Popravite politiku rutiranja umjesto da na vrh naslažete duplikat zapisa.
Dodajte prefiks konekciji, a ne pokrenutom sistemu
U uređivaču konekcija stranica WireGuard drži peera i njegove AllowedIPs, a stranica IPv4 drži dodatne rute. Ruta dodana tamo preživljava ponovna povezivanja jer pripada profilu. U komandnoj liniji ekvivalent je dodavanje rute konekciji u obliku s praznim gatewayom, a zatim spuštanje i podizanje konekcije da bi se promjena primijenila.
Odaberite najuži prefiks koji pokriva hostove koji su vam potrebni. Kopiranje primjera /8 od provajdera može progutati lokalne raspone koji se slučajno nalaze unutar njega, a rezultirajući kvarovi izgledaju kao pokvaren tunel, a ne kao preširoka ruta.
O razdvojenom tuneliranju odlučuje lista prefiksa
Ne postoji prekidač za razdvojeni tunel; lista prefiksa je odluka. Peer s jednim rasponom za uredski LAN i jednim za laboratorijsku mrežu šalje tačno ta odredišta kroz tunel i sve ostalo ostavlja na miru. Jednom hostu treba /32, a rasponi koji se preklapaju na dvije lokacije trebaju prefikse hostova dok neko ne prenumeriše podmrežu.
Odabir da ništa ne šaljete kroz tunel vodi istu odluku do njenog limita: minimalna lista ostavlja vezu podignutom dok običan saobraćaj slijedi svoj uobičajeni put. Zapišite namjeru, jer će inače sljedeći čitalac kratku listu shvatiti kao propust i rado je proširiti.
Jedan vlasnik za tablicu ruta
wg-quick i NetworkManager oboje vjeruju da posjeduju rute interfejsa. Uvezite konfiguraciju napisanu za wg-quick i zatim također pokrenite wg-quick servis, i dobit ćete duplicirane ili sukobljene zapise čije ponašanje zavisi od toga koji je radio posljednji. Odaberite jednog vlasnika i uklonite drugog: ako NetworkManager upravlja konekcijom, onemogućite wg-quick jedinicu za taj interfejs i nikada ne dodajte drugi profil za isti uređaj.
Kada podjela mora slijediti fizički adapter umjesto odredišta, prešli ste u politiku rutiranja, a politika rutiranja također traži jednog autora. Provjerite ponavljanjem ip route get, a zatim dosezanjem hosta unutar udaljenog prefiksa nečim što ispisuje izvornu adresu koju je odabrao. Provjerite IPv6 i DNS odvojeno ako profil nosi bilo koje od toga.