Ena /24 za laboratorijski tiskalnik izgine med dvema klicema ip route show, dnevnik odjemalca pa samo pravi, da se je omrežje spremenilo. S ukazom, predpono ali vašimi pravicami ni bilo nič narobe. Podjetniški odjemalec, ki ima v lasti model usmerjanja gostitelja, ta model znova vsili vsakič, ko ga nekdo drug uredi, zato se vnos, ki ste ga dodali, odstrani kot vsiljivec. Boj proti njemu v isti tabeli je izgubljen položaj. Rešitev je, da se povsem prenehate potegovati za to tabelo in izjemo postavite tja, kamor nadzornik nikoli ne pogleda.

Nadzornik pojasni manjkajočo pot

Pokažite to, preden karkoli preoblikujete: preberite tabelo, dodajte predpono, počakajte nekaj sekund, preberite znova. Če vnosa ni in niste ničesar vnesli, da bi ga odstranili, nekdo bedi. Poiščite proces, ki ima to vedenje, in preberite njegov dnevnik okoli trenutka, ko pot izgine, saj ista storitev običajno vzdržuje tunel, paketne filtre in konfiguracijo razreševalnika. Ubiti ga, da bi pot ostala, je menjava, ki jo boste ob naslednji ponovni povezavi obžalovali.

ip route show
ip route add 192.168.2.0/24 dev enp0s31f6
sleep 5; ip route show

Predpona in vmesnik zgoraj sta ogradi. Kopiranje imena vmesnika iz delujočega primera na drugem stroju je najpogostejši razlog, da ta predstavitev ne da prav ničesar.

Druga tabela je nadzorniku nevidna

Agent obnovi samo tabelo, ki jo ima v lasti. Dajte izjemi lastno tabelo in pravilo, ki ustrezne cilje pošilja tja, glavna tabela pa se nikoli ne spremeni, zato agent nima česa popraviti. To je vsa ideja: en imenski prostor poti, ki ga vzdržuje nekdo drug, in eden, ki se ga dotaknete samo vi.

Menjava je vzdrževanje. Dva predmeta se lahko razideta, položaj pravila na seznamu pa je enako pomemben kot pot v tabeli, ki jo izbere.

Zgradite izjemo in jo nato pustite zmagati

Ustvarite tabelo, namestite pot in dodajte pravilo, ki za ta cilj izbere tabelo. Prednost odloči, ali se vaše pravilo preveri pred pravili, ki jih je vstavil odjemalec, ali za njimi, pravilo, razvrščeno pozneje, pa ni nikoli doseženo, zato je številka del zasnove, ne okras. Nato vprašajte jedro, kaj bi v resnici naredilo, kar je drugo vprašanje od tega, kar ste konfigurirali.

ip rule add to 192.168.2.0/24 table 110 pref 30010
ip route add 192.168.2.0/24 dev enp0s31f6 table 110
ip route get 192.168.2.50

ip route get razreši pot, ki bi jo jedro uporabilo, vključno z napravo in izvornim naslovom. Ne izpiše identifikatorja tabele, zato ga povežite z ip rule show, ko morate potrditi, katera tabela je zmagala. Skupaj odgovorita na edino pomembno vprašanje: ali promet do tega naslova odhaja tja, kamor ste nameravali?

Druge oblike iste ideje

Vzorec se posploši, ko nehamte razmišljati v ciljih. Lokalna podomrežje lahko ostane dosegljivo, medtem ko tunel ohranja privzeto pot. Odgovori SSH strežnika, povezanega v LAN, lahko odidejo skozi vmesnik, po katerem so prišli, namesto da izginejo v tunelu. Pravilo, ki temelji na vmesniku, pa lahko porine v tunel vse, kar pride na brezžični vmesnik, medtem ko promet, ki ga ustvari gostitelj sam, ostane na Ethernet:

ip rule add iif wlan0 table 10
ip route add default dev tun0 table 10

Zadnji primer ustreza vhodnemu vmesniku, ne cilju, kar je drug tip pravila in drug miselni model. Posredovani promet potrebuje tudi omogočen net.ipv4.ip_forward, oddaljeni konec pa mora izvorni obseg usmeriti nazaj ali ga prevesti; pravilo na enem stroju nikoli ne ustvari druge polovice poti.

Pravilo obravnavajte kot enkratno

Pravila in tabelne poti živijo v pomnilniku. Po ponovni povezavi se lahko naprava tunela preimenuje, dodeljeni naslov se lahko premakne in pravilo s staro vrednostjo tiho preneha ustrezati. Znova uporabite celotno spremembo iz ene skripte, ki jo ima v lasti, nato znova preverite ip rule show, trenutno ime naprave in svež ip route get proti resničnemu cilju, preden zaupate izjemi.

Dve meji preživita vsako skrbnost. Odjemalec še vedno nadzoruje svoja lastna pravila filtriranja in konfiguracijo razreševalnika, usmerjevalna izjema pa ne nadomesti nobenega od obeh. Če odjemalec izbriše tudi vaše pravilo pravilnika, so podprte poti njegova lastna politika razdeljenega tunela ali odjemalec, ki vam omogoča upravljanje poti, kot je OpenConnect; popravljanje dobaviteljeve binarne datoteke, da bi utišali njegov nadzornik, je zaveza k vzdrževanju s priloženim preverjanjem celovitosti.

Zapišite številko tabele, prednost in cilj v opombo ob skripti. Sicer bo naslednja oseba našla pravilo, ki preglasi tunel, in ne bo mogla vedeti, zakaj.

Sorodni članki