Tri stvari moraju se uskladiti prije nego Kerio tunel propusti saobraćaj: adresa na interfejsu kvnet, vrijednost koju je klijent zapisao u dnevnik i ono što očekuje serverska politika ili DHCP. Kada se ne usklade, tunel se ipak autentifikuje i ipak podiže, i upravo to čini kvar zbunjujućim. Interfejs se stvara za svako povezivanje, pa adresa postavljena ručno pripada toj sesiji i ničemu drugom. To je oblik problema, a rješenje je kuka, a ne konfiguracijska datoteka. Ostatak je gdje pročitati vrijednost i gdje je primijeniti.

Zašto se adresa stalno vraća

kvnet je virtuelni adapter koji klijent stvara kada veza počne i uklanja kada se završi. Ručni ip link set zato preživi tačno onoliko koliko i sesija na koju je primijenjen, a sljedeće povezivanje počinje od onoga što klijent dodijeli. Na računaru na kojem klijent ne uspije primijeniti očekivanu adresu, svako ponovno povezivanje vraća isto neslaganje, i pravilo zakupa ili pristupa ponovo odbija uređaj.

Taj obrazac je sam po sebi dijagnostički. Tunel koji radi jednu sesiju i padne na sljedećoj nije problem akreditiva, jer se akreditivi ne mijenjaju između povezivanja.

Pročitajte vrijednost iz klijenta, a ne iz interfejsa

Linux klijent upisuje detalje pregovaranja u svoj dnevnik za otklanjanje grešaka, a adresa koju namjerava koristiti pojavljuje se tamo kao posljednji token u obliku adrese u slijedu povezivanja. Uporedite to s onim što jezgro zaista drži, a to je jedan readlink udaljeno: cat /sys/class/net/kvnet/address.

Ako se njih dvije razlikuju, klijent je znao ispravnu vrijednost i nije je uspio primijeniti, a kuka koja je primijeni nakon što interfejs postoji zatvara taj jaz. Ako dnevnik uopšte ne sadrži adresu, problem je raniji i pripada verziji klijenta ili serverskom profilu, a ne skripti.

Primijenite je nakon što interfejs postoji

Korisnici NetworkManagera mogu staviti skriptu u njegov direktorij dispečera i djelovati samo kada se VPN interfejs podigne. Klijent kojim upravlja systemd zahtijeva više pažnje: drop-in koji se pokreće pri pokretanju servisa obično se aktivira prije nego adapter postoji, pa kuka mora čekati interfejs umjesto da ga pretpostavlja. Postavite adresu tada, i ako jezgro odbije dok je veza podignuta, spustite je, postavite adresu i ponovo je podignite. Pročitajte izdvojeni token natrag kroz MAC obrazac prije nego ga predate ip link-u, kako neočekivana linija dnevnika ne bi mogla postati argument.

Sve što se izvršava kao root iz dnevnika klijenta zaslužuje usko vlasništvo: datoteku u vlasništvu roota, koja nije upisiva za druge, i bez ikakve shell interpolacije osim provjerene adrese. Držite provjeru obrasca unutar skripte. Ne dopustite da sadržaj dnevnika odlučuje koja se naredba izvršava.

Provjerite zakup, a ne vezu

ip -4 -o addr show dev kvnet treba pokazati adresu u očekivanom rasponu, ip neigh show dev kvnet treba pokazati gateway, i jedna usluga iza VPN-a treba odgovoriti. Zatim se odspojite i ponovo povežite jednom; ako se adresa vrati, kuka se aktivira na pogrešan događaj ili se uopšte ne aktivira.

Interfejs koji se pojavi s ispravnom adresom i nikada ne dobije zakup ukazuje na serversku stranu. To je druga provjera i obično drugi tim. Potvrdite da je račun dozvoljen i da pool još ima adresu prije nego ponovo uredite kuku.

Preispitajte zaobilazno rješenje nakon nadogradnje

Verzija klijenta koja ispravno postavlja adresu ostavlja vašu kuku da primjenjuje zastarjelu vrijednost, što je nova greška koju je uvela ispravka. Također nikada ne kopirajte MAC s drugog računara ili forumske objave; koristite vrijednost koju ovaj klijent zapisuje za ovaj račun i zabilježite datum kada ste je provjerili.

Držite skriptu dovoljno kratkom da se pročita u jednom sjedenju. Zaobilazna rješenja koja parsiraju dnevnike privremena su po prirodi. Prežive ona koja budući čitalac razumije bez izvorne teme.

Povezani članci