Dolazak do štampača na uredskoj lokalnoj mreži preko ZeroTier člana zvuči kao jedno pravilo, a zapravo su to tri odluke na tri različita mjesta. Overlay mora znati gdje je lokalna mreža, Linux host mora biti voljan prosljeđivati pakete, a lokalna mreža mora znati kako poslati odgovor natrag. Ulazno pravilo koje otvara port na gatewayu ne dira nijedno od toga. To je pogrešan alat na ispravnom hostu.

Tri posla, tri vlasnika

Upravljana ruta pripada konfiguraciji ZeroTier mreže. Ona govori članovima da je prefiks dostupan preko određene adrese člana.

Prosljeđivanje pripada Linux kernelu i onome ko posjeduje politiku njegovog firewalla. Ono odlučuje hoće li paket koji stigne na overlay ponovo izaći na fizičko sučelje. Host koji ne prosljeđuje tiho će odbaciti paket nakon što ga prihvati. Pošiljalac vidi istek vremena i u dnevniku usluge ništa se ne pojavljuje.

Put povratka pripada lokalnoj mreži. Njeni hostovi i njen ruter moraju znati da je overlay prefiks dostupan preko LAN adrese vašeg gatewaya, ili nešto mora prevesti promet tako da se to pitanje uopće ne postavi.

Svako od toga može biti ispravno dok ostala zakažu, i zato test koji samo pinga gateway ne dokazuje ništa o usluzi iza njega.

Usmjerite upravljanu rutu na člana

Dodajte rutu za željeni prefiks lokalne mreže preko overlay adrese gatewaya, a ne preko njegove LAN adrese. Overlay adresa je ona do koje drugi članovi mogu doći; LAN adresa ima smisla samo na žici.

Članovi moraju prihvatiti upravljane rute da bi dizajn radio, a njihove vlastite lokalne mreže ne smiju već koristiti prefiks koji oglašavate. Udaljeni laptop koji je kod kuće na 192.168.60.0/24 ne može također usmjeravati 192.168.60.0/24 preko overlayja.

Držite oglašeni prefiks što užim koliko zadatak dopušta. Oglašavanje većeg agregata radi utjecaja na preferenciju može također tražiti adresni prostor koji ne posjedujete, a nastali sukob pojavljuje se na uređajima koji su spojeni na obje mreže. To može i natjerati člana da preferira put koji nikamo ne vodi. Držite rutu iskrenom i pustite politiku da uradi ostalo.

Upišite prefiks i adresu člana u istu bilješku kao firewall pravila, jer je najčešći kvar ruta koja pokazuje na pogrešnog člana.

Omogućite tranzit u kernelu

Pročitajte trenutnu vrijednost prosljeđivanja prije nego što išta promijenite, pa postavku učinite trajnom kroz mehanizam koji vaš sistem već koristi, a ne kroz jednokratnu komandu koja nestaje pri restartu.

Ako politiku posjeduje UFW, njegova pravila rute izražavaju prosljeđivanje za par izvora, odredišta i sučelja. Ona su odvojena od ulaznih pravila koja otvaraju uslugu na samom gatewayu:

sysctl net.ipv4.ip_forward
sudo ufw route allow in on zt3f2a1c9d out on eth0 proto tcp to 192.168.60.20 port 443
sudo ufw status verbose

Naziv sučelja je stvarni overlay uređaj na tom hostu, koji možete pročitati iz ip link; to nije fiksni niz u svim instalacijama. Ako host prosljeđuje po zadanom i UFW nije na putu, pravilo rute bit će ignorirano i postavke kernela su ono što je važno.

Odaberite kako se odgovori vraćaju

Uz očuvanje izvora, usluga u lokalnoj mreži vidi pravu overlay adresu i odgovara na nju. To zahtijeva rutu na hostu lokalne mreže ili na njegovom ruteru koja usmjerava overlay prefiks na vaš gateway, a to je promjena izvan Linux kutije.

Kada se ta ruta ne može dodati, ograničeno prevođenje izvora čini da zahtjev izgleda kao da dolazi s gatewaya u lokalnoj mreži. Odgovori se tada vraćaju lokalno i nije potrebna promjena usmjeravanja lokalne mreže, po cijeni gubitka izvornog izvora u dnevnicima usluge.

Ograničite prevođenje na overlay izvor i konkretno odredište u lokalnoj mreži. Prevođenje svega što napušta LAN sučelje je šira verzija koja kasnije iznenadi svakoga ko čita pravila, a i skriva promet koji je trebao biti blokiran.

Nijedan izbor ne daje neželjeni pristup iz lokalne mreže natrag na proizvoljne overlay članove. Ako se to želi, to je zasebno pravilo s vlastitim pregledom.

Testirajte s pravog člana

Povežite se s drugog člana, a ne s gatewaya, i zatražite jednu dozvoljenu uslugu. Zatim pokušajte uslugu koja mora ostati zatvorena, pa ponovite oba testa nakon ponovnog povezivanja i nakon restarta gatewaya.

Član koji prijavi ONLINE, ili uspješan ping na overlay adresu gatewaya, ne potvrđuje rutu, pravilo prosljeđivanja ni put povratka:

zerotier-cli listnetworks
ip -4 route get 192.168.60.20
sudo ufw status numbered

Druga komanda pokazuje koje bi sučelje paket koristio za host lokalne mreže, a treća pokazuje postoji li pravilo rute u obliku koji ste namjeravali. Ako oboje izgleda ispravno, a usluga i dalje istekne, put povratka je preostali sumnjivac.

Povezani članci