તમે જોડાઓ છો, ટનલ ઇન્ટરફેસ દેખાય છે, અને તમને જરૂરી એક પ્રીફિક્સ ફક્ત ટેબલમાં નથી. આગળનું પગલું સામાન્ય રીતે તેને ઉમેરતી સ્ક્રિપ્ટની શોધ છે. એ શોધ એવા જવાબો પર પહોંચે છે જે પ્રોફાઇલમાં OpenVPN સહાયક ચોંટાડે છે, અને એ જવાબોમાંથી અડધા પરિસ્થિતિને સુધારવાને બદલે વધુ ખરાબ કરે છે, કારણ કે ખૂટતા રૂટના ત્રણ સંભવિત માલિક હોય છે અને તેમાંથી ફક્ત એક ખૂટતી સ્ક્રિપ્ટ છે.

કંઈપણ લખતા પહેલાં નક્કી કરો કે કયો માલિક જવાબદાર છે.

ત્રણ માલિક, એક ખૂટતું પ્રીફિક્સ

પ્રીફિક્સ ગેરહાજર હોઈ શકે કારણ કે કોઈએ તે પ્રદાન કર્યું નથી, કારણ કે પ્રોફાઇલે તેને નકારી છે, અથવા કારણ કે તે એવી જગ્યાએ સ્થાપિત થયું છે જ્યાં તમે જોતા નથી. આ જુદા જુદા ખામી છે અને તેમના જુદા જુદા ઉપાય છે.

પ્રથમ તપાસવું સૌથી સહેલું છે: શું સર્વર અથવા પ્લગઇને ક્યારેય રૂટ ઓફર કર્યો? જે બેકએન્ડને ક્યારેય પ્રીફિક્સ મળ્યું નથી તે તેને સ્થાપિત કરી શકતું નથી, અને સહાયક સ્ક્રિપ્ટ એવી પહોંચ કલ્પી શકતી નથી જે સહભાગીએ ક્યારેય વર્ણવી નથી. બીજું પ્રોફાઇલ નીતિ છે, જે એવા રૂટ દબાવી શકે છે જે કનેક્શન અન્યથા લેત. ત્રીજું ટેબલ અથવા નિયમ છે, જે રૂટને એવી જગ્યાએ રાખી શકે છે જ્યાં ડિફોલ્ટ લુકઅપ ક્યારેય જોતું નથી.

ચોથો માલિક તમે છો, પછીથી: એક સ્ક્રિપ્ટ જે કનેક્શન વખતે રૂટ ઉમેરે છે પણ ડિસ્કનેક્ટ વખતે તેને દૂર કરતી નથી. તે એવું પ્રીફિક્સ બનાવે છે જે ટનલ કરતાં વધુ જીવે છે, મૃત ઇન્ટરફેસ તરફ નિર્દેશ કરે છે, અને મશીન ડિબગ કરનાર આગલી વ્યક્તિને મૂંઝવે છે.

કંઈપણ ઉમેરતા પહેલાં પ્રોફાઇલ વાંચો

સાચવેલા કનેક્શનના પોતાના ગુણધર્મોથી શરૂ કરો. રહસ્યો ઠાલવ્યા વિના તેમને વાંચો, અને જો પ્રોફાઇલનું નામ અસ્પષ્ટ હોય તો UUID વાપરો.

nmcli -f vpn.service-type,ipv4.never-default,ipv4.ignore-auto-routes,ipv4.route-table,ipv4.routes connection show office

vpn.service-type તમને કહે છે કયો બેકએન્ડ કનેક્શનનો માલિક છે, અને તે મહત્વપૂર્ણ છે કારણ કે પ્લગઇન ડેટા બેકએન્ડ-વિશિષ્ટ છે. એક પ્લગઇન સ્વીકારે તે કી બીજા માટે સમર્થિત સૂચના નથી, તેથી બીજા ક્લાયન્ટના દસ્તાવેજીકરણમાંથી નકલ કરેલો સ્નિપેટ કોઈ વસ્તુનો પુરાવો નથી.

ipv4.ignore-auto-routes અને ipv4.never-default જુદા જુદા પ્રશ્નોના જવાબ આપે છે. પ્રથમ એ રૂટ નકારી શકે છે જે કનેક્શન અન્યથા આપમેળે લેત, અને બીજું નિયંત્રિત કરે છે કે પ્રોફાઇલ ડિફોલ્ટ રૂટ બની શકે છે કે નહીં. જે પ્રોફાઇલ આપમેળે રૂટને અવગણે છે અને બીજા કશા પર આધાર રાખતું નથી તે સ્વચ્છ રીતે જોડાશે અને લગભગ કંઈપણ સ્થાપિત કરશે નહીં.

ip -4 rule show
ip -4 route show table all

એ બે આદેશો ત્રીજી શક્યતા નક્કી કરે છે. તમારું પ્રીફિક્સ દરેક ટેબલમાં શોધો, ફક્ત main માં નહીં, અને તપાસો કે નીતિ નિયમ સંબંધિત લુકઅપને બીજે ક્યાંક મોકલે છે કે નહીં. જો પ્રીફિક્સ બીજા ટેબલમાં છે અને કંઈપણ તેને પૂછતું નથી, તો તમારી પાસે ખૂટતો રૂટ નથી; તમારી પાસે એવું લુકઅપ છે જે ક્યારેય તે સુધી પહોંચતું નથી.

સ્ક્રિપ્ટ શું સુધારી શકતી નથી

સહાયક સ્ક્રિપ્ટ ઉમેરવાથી NetworkManager ના vpn.data ને ચલાવવા માટે પ્રોગ્રામ મળે છે. તે વાસ્તવિક માળખું છે, અને આ મોટાભાગના કિસ્સાઓ માટે તે ખોટું છે, કારણ કે સ્ક્રિપ્ટને નિયંત્રણ પ્રોફાઇલની પોતાની નીતિ પહેલેથી નક્કી કર્યા પછી મળે છે કે શું સ્વીકારવું.

OpenVPN નું script-security બીજી પુનરાવર્તિત મૂંઝવણ છે. તે OpenVPN સેટિંગ છે જે નક્કી કરે છે કે ક્લાયન્ટ કઈ સ્ક્રિપ્ટ ચલાવી શકે છે અને તેમના પર્યાવરણમાં શું મૂકી શકે છે; સ્તર 3 પર્યાવરણ દ્વારા ઓળખપત્રો પસાર કરવાની મંજૂરી આપે છે, જે રૂટિંગ સુધારા કરતાં રહસ્યોની સંભાળનો નિર્ણય છે. તેને એવી પ્રોફાઇલમાં ચોંટાડવું જેનું બેકએન્ડ OpenVPN નથી, અથવા જ્યારે કોઈ સ્ક્રિપ્ટને તેની જરૂર નથી ત્યારે તેને વધારવું, રૂટ ઉમેર્યા વિના જોખમ ઉમેરે છે.

પછી રીસ્ટાર્ટનો પ્રતિક્રિયા છે. NetworkManager સેવાને ફરી શરૂ કરવાથી દરેક સંચાલિત લિંક તૂટે છે અને ફરી બને છે, જેમાં તમે દૂરથી કામ કરો છો તો જે લિંક દ્વારા જોડાયેલા છો તે પણ. તે વિક્ષેપકારક ક્રિયા છે, નિર્દોષ નિદાન નહીં, અને સર્વર પર તે ટકી રહેતા સત્ર અને ન ટકતા સત્ર વચ્ચેનો ફરક હોઈ શકે છે.

નિર્ણય, ક્રમમાં

ક્રમમાં ત્રણ પ્રશ્નો પૂછો. શું સહભાગીએ પ્રીફિક્સ પ્રદાન કર્યું, જે બેકએન્ડનો લોગ અથવા તેનું પોતાનું સ્થિતિ આઉટપુટ બતાવશે? જો હા, તો પ્રોફાઇલ રૂટ સ્વીકારવા અને સ્થાપિત કરવા માટે ગોઠવાયેલું છે, કે તેમને દબાવી રહ્યું છે? જો રૂટ ક્યાંક છે, તો તમે જે ટ્રાફિક ચકાસી રહ્યા છો તેના માટે લુકઅપ પથ સાચો છે?

ફક્ત ત્યારે જ જ્યારે પ્રથમ જવાબ હા હોય, બીજો હા હોય અને ત્રીજો સાચો હોય ત્યારે પૂરક સ્ક્રિપ્ટ વાજબી બને છે, અને ત્યારે પણ તમારે પૂછવું જોઈએ કે બેકએન્ડ રૂટને મૂળભૂત રીતે સમર્થન આપે છે કે નહીં. VPN સેટિંગ્સ સંદર્ભ service-type અને પ્લગઇન-વિશિષ્ટ ડેટા શબ્દકોશનું દસ્તાવેજીકરણ કરે છે, અને કી અસ્તિત્વમાં છે એમ ધારવા પહેલાં ત્યાંથી જ શરૂ કરવું જોઈએ.

મંજૂર કરેલા સુધારા પછી, ફરી જોડાઓ અને સ્થળને સરનામાથી અને પછી નામથી ચકાસો, પછી ડિસ્કનેક્ટ થાઓ અને ફરી જોડાઓ જેથી ખાતરી થાય કે સ્થિતિ પુનરાવર્તનીય છે. એક માલિક, એક ટેબલ, અને ટનલ સાથે અદૃશ્ય થતો રૂટ એ જ ઇચ્છનીય પરિણામ છે.

સંબંધિત લેખો