“File exists” na OpenVPN akan hanya ba matsalar fayil ba ce
Sakon yana fitowa daga teburin hanya na kernel, ba daga tsarin fayil ba. Karanta sashin da ya riga ya mallaki prefix din kafin ka canza manufar LAN.
Fara daga inda sakon ya bayyana. Abokin ciniki ya hada, rami ya tashi, sannan log din ya ba da rahoton cewa umarnin kara hanya na Linux ya kasa da File exists. Babu wani abu a cikin wannan jumlar da ke nufin takardar shaida, maballi ko fayil din saiti, ko da kalmomin suna nuna haka. Kernel yana bayyana teburin hanyoyinsa, kuma prefix din da ka nemi a girka yana da shigarwa tuni.
Bi tsarin abokin ciniki din kansa: abin da ya nema, abin da teburin ya riga ya kunsa, wanda ya ajiye wannan shigarwar a wurin, sannan daga baya abin da za a canza. Kowane mataki yana cire wani mai yiwuwa.
Abin da abokin ciniki ke nema a zahiri
Kafin gazawar, abokin ciniki yana rubuta hanyar da yake son karawa, yawanci a matsayin manufa, abin rufe cibiyar sadarwa, kofar shiga da wani lokacin a matsayin metric ko tebur. Wannan layin shine neman. Kuskure da ke biyo baya shine amsar kernel gare shi, kuma ya kamata a karanta duka biyun tare.
journalctl -u openvpn-client@office -b --no-pager | grep -nE 'route|File exists'
openvpn --config /etc/openvpn/client/office.ovpn --verb 4 --log /tmp/ovpn.log
Matsayin fita da ba sifili ba daga mataimakin hanya ba shi da bayani fiye da rubutun da ke kasa, saboda amsoshi daban-daban na kernel suna samar da matsayi marar sifili. Ka rike ainihin sakon; bambanci tsakanin shigarwar da take akwai da kofar da ba za a iya isa ba shine ke yanke hukuncin wane sashe na gaba zai shafi.
Karanta hanyar da take akwai, ba adireshin kawai ba
Neman teburin don irin wannan hudun mai digo bai isa ba. Ana gane abin hanya ta hanyar dangin adireshinsa, teburinsa, prefix din manufa, metric, protocol da na'urar fitarwa, kuma shigarwar da ke raba prefix daya na iya kasancewa tare bisa doka idan wadannan halayen sun bambanta. Abin da ke karo shine dukan abin, ba rubutun ba.
ip -4 route show table all | grep -F '10.40.'
ip -4 route show match 10.40.0.0/16
ip -4 route get 10.40.0.5
Umarni na karshe yana amsa wata tambaya dabam da biyun farko: ba abin da ke akwai ba, amma wane shigarwa kernel zai zaba don wannan manufa a yanzu. Duk ra'ayoyin biyu suna da amfani, kuma suna sabawa sau da yawa har ya cancanci kwatanta su kafin ka yanke wani hukunci. Rashin daidaitawa tsakanin su shine lamarin mai ban sha'awa, ba kuskuren zagaye ba.
Rubuta prefix din, teburin, metric da na'urar kusa da neman da ya kasa. Idan shigarwar da take akwai tana da halaye iri daya da tsalle na gaba iri daya, kana da umarni mai kwafi ba matsalar hanya ba.
Masu shi hudu da prefix zai iya samu
Hanyoyin da aka hada suna fitowa daga adireshin da aka ware kuma tsarin yana sake kirkira su a duk lokacin da wannan adireshin ya kasance. Abokin ciniki na DHCP ko manajan hadi yana girka hanyoyi a matsayin bangare na zagayen rayuwarsa. Watakila wani abokin ciniki na VPN yana dauke da wannan prefix din tuni. Kuma kugiya ko script na gida na iya kara wanda babu wani abin da ya sani game da shi.
Kowane mai shi yana bukatar gyara dabam. Hanyar da aka hada ba naka ba ce don sharewa; cire ta na iya karya isa ga gida kafin rami ya zama mai amfani, kuma kernel zai mayar da ita. Hanyar da manaja ya mallaka ya kamata a canza ta hanyar wannan manajan, ba da ip route del na hannu wanda sake hadawa na gaba zai soke ba.
Interface din da aka rike yana saukaka irin wannan rikicewar. Lokacin da na'urar rami ta tsira daga sake hadawa, hanyoyin da kod din saitin da aka kebance ya girka na iya kasancewa har yanzu a gudun biyu, don haka script din da ke daukan yanayi mai tsabta yana kasawa a karo na biyu kuma yana aiki a karo na farko. Ko ka share shigarwar da ta tsufa da gangan ko ka mai da kod din saiti idempotent.
block-local yana amsa wata tambaya dabam
Lokacin da profile ke aika duk zirga-zirga ta rami, abokin ciniki dole ya yanke shawarar abin da zai faru da cibiyar sadarwar gida. Alamar block-local tana canza wannan shawarar ta hanyar bin diddigin LAN din gida ta rami yayin da take rike kebewar da aka rubuta don kofar LAN; wannan zabi ne na manufar zirga-zirga mai ganuwa sakamako ga isa.
Ba ya bayyana dalilin da ya sa kara hanya ya dawo da kuskuren shigarwar da take akwai, kuma daukar sa a matsayin gyara na gama-gari yana boye ainihin rikici a bayan canjin manufa. Idan albarkatun gidanka suka daina isa bayan gyaran profile, wannan alama tana daya daga cikin abubuwan farko da za a duba; idan kara hanya ya kasa, ba ita ce amsar ba.
Ka dauke shi a matsayin shawara kan wadanne manufofi za su kasance na gida, wanda aka yanke da gangan kuma aka rubuta. Ba maballi ba ne da za a gwada lokacin da log din ya yi kama da mai tsoratarwa.
Rufe da'irar: cire kwafin a tushensa
Da zarar ka san wane mai shi ne ke rike shigarwar, cire umarnin da aka kwafa a inda aka bayyana shi. Yana iya zama layin route a cikin profile, push daga uwar garke, ko kugiya da ba ta bukatar gudana kuma.
ip -4 route show match 10.40.0.0/16
ip -4 route get 10.40.0.5
journalctl -u openvpn-client@office -b --no-pager | tail -n 15
Sannan sake hadawa kuma tabbatar da abubuwa uku: rami ya tashi, manufar da aka yi niyya ta warware zuwa hanyar da kake so, kuma gazawar ta tafi ba tare da wata sabuwa ta bayyana a wurinta ba. Log mai tsabta tare da hanyar da aka zaba ba daidai ba ba gyara ba ne.
Idan prefix din yana nufin LAN din gida a gefe daya kuma cibiyar sadarwa mai nisa a daya gefen, matsalar ita ce haduwar adireshi ba kwafi ba, kuma babu wani adadin gogewa da zai sa duka ma'anoni biyu su zama gaskiya a lokaci daya. Wannan lamarin yana bukatar wani shiri dabam ga daya daga cikin cibiyoyin sadarwa biyu. Yanke shawarar wane gefe za a sake lambobi kafin ka taba kowane daya.