ઇન્ટરફેસ ચાલુ છે પણ wg-quick નિષ્ફળ ગયું: હવે શું કરવું
નિષ્ફળ યુનિટ પાછળ અડધું રૂપરેખાંકિત ટનલ છોડી શકે છે. પ્રથમ નિષ્ફળ થયેલું પગલું વાંચો, સાફ કરવું કે સમારકામ કરવું તે નક્કી કરો, અને પછી વિનંતીથી તે સાબિત કરો.
યુનિટ લાલ છે, ઇન્ટરફેસ અસ્તિત્વમાં છે, અને ટનલ મોટે ભાગે કામ કરે છે, જે સૌથી મૂંઝવણભર્યું સંયોજન છે. સેટઅપ એક ક્રમ છે: પહેલા ઇન્ટરફેસ બને છે, પછી સરનામાં, રૂટ, રિઝોલ્વર સેટિંગ્સ અને કોઈપણ હૂક આદેશો આવે છે. ચોથા પગલામાં નિષ્ફળતા પ્રથમ ત્રણને જગ્યાએ રાખે છે, તેથી ઇન્ટરફેસનું નામ પુરાવો છે કે શરૂઆત થઈ, પૂર્ણ થઈ નહીં. એક વધારાની હકીકત આ મૂંઝવણ બચાવી હોત: જે પગલું નિષ્ફળ ગયું.
આંશિક સ્થિતિ એ સામાન્ય નિષ્ફળતા છે
આ વર્તનને ભ્રષ્ટાચાર ગણવાને બદલે અપેક્ષા રાખવી જોઈએ. ઇન્ટરફેસ સેટઅપનો સૌથી સસ્તો ભાગ છે અને પાછળ છોડવો સૌથી સહેલો છે, અને તે જ ભાગ છે જે મશીનને અડધું ચાલતું દેખાડે છે.
જે હજી અસ્તિત્વમાં નથી તે છે નિષ્ફળ પગલા પછી આવેલું બધું. જો નિષ્ફળતા રિઝોલ્વર તબક્કે હતી, તો સરનામાં અને રૂટ છે અને DNS નથી. જો તે રૂટ હતું, તો ટનલને સરનામું છે પણ તેમાંથી પસાર થવાનો કોઈ માર્ગ નથી.
પરિણામ એ મશીન છે જે કેટલીક કસોટીઓનો જવાબ આપે છે અને કેટલીકમાં નિષ્ફળ જાય છે, તેથી લોકો માને છે કે સેવા થરથરે છે જ્યારે તે ક્યારેય સફળતાપૂર્વક શરૂ જ નહોતી થઈ. જે સેવા ક્યારેય પૂર્ણ થઈ નથી તે થરથરી શકતી નથી. તે ફક્ત એ જ કારણસર વારંવાર નિષ્ફળ થઈ શકે છે.
પ્રથમ નિષ્ફળ પગલું શોધો
ફક્ત વર્તમાન સ્થિતિ નહીં, યુનિટનો જર્નલ વાંચો, અને તેને નિષ્ફળ રનની શરૂઆતથી વાંચો. છેલ્લી લાઇન તમને એક્ઝિટ કોડ કહે છે; પ્રથમ ભૂલ કહે છે કે શું સમારવું.
આ આદેશો યુનિટની સ્થિતિ, તે યુનિટનો બૂટ જર્નલ અને ટનલની જીવંત સ્થિતિ છાપે છે:
systemctl status wg-quick@wg0
journalctl -u wg-quick@wg0 -b --no-pager | tail -40
wg show
ip -4 addr show dev wg0રિઝોલ્વર ભૂલ, પહેલેથી અસ્તિત્વમાં હોય તેવો રૂટ, બિન-શૂન્ય કોડ સાથે નીકળેલો હૂક અને રૂપરેખાંકન પાર્સિંગની નિષ્ફળતા — બધા તે જ વિંડોમાં દેખાય છે, અને દરેક પોતાના ઘટકનું નામ આપે છે. ફક્ત ઇન્ટરફેસની સ્થિતિથી અનુમાન કરવું એ બધી માહિતીને અવગણે છે.
સમારકામ નક્કી કરતી ત્રણ શરતો
તમે સાફ કરી રહ્યા છો, જગ્યાએ સમારકામ કરી રહ્યા છો કે યુનિટને બૂટ પાથમાંથી દૂર કરી રહ્યા છો તે નક્કી કરો, અને કંઈપણ ટાઇપ કરતા પહેલા તે નક્કી કરો.
જો ઇન્ટરફેસ તૂટેલું છે પણ રૂપરેખાંકન સાચું છે, તો સાફ કરો અને ફરી શરૂ કરો. જો રૂપરેખાંકન ખોટું છે, તો તેને સુધારો અને તેમ છતાં પહેલા સાફ કરો, કારણ કે આંશિક સ્થિતિ પર બીજું મેનેજર શરૂ કરવાથી એક ઇન્ટરફેસ માટે બે માલિકો બને છે. જો નિષ્ફળતા એ મશીનમાં ન હોય તેવા રિઝોલ્વર સહાયક જેવા ગુમ થયેલા સિસ્ટમ ઘટકની હોય, તો યુનિટને ફરિયાદ બંધ ન થાય ત્યાં સુધી સંપાદિત કરવાને બદલે નિર્ભરતા જાણી જોઈને સ્થાપિત કરો અથવા દૂર કરો.
તે ત્રણ કિસ્સા રહસ્યમય લાલ યુનિટ જેવું લાગતું હોય તેના મોટા ભાગને આવરી લે છે. ભેદ પાડતો પ્રશ્ન એ છે કે શું એ જ નિષ્ફળતા સ્વચ્છ સ્થિતિવાળા મશીન પર પણ થાય, અને જવાબ સામાન્ય રીતે પ્રથમ ભૂલની લાઇનમાંથી આવે છે.
ફરી પ્રયાસ કરતા પહેલા સાફ કરો
હાલની સ્થિતિ પર ફરી પ્રયાસ નવા કારણસર નિષ્ફળ થઈ શકે છે અને મૂળ કારણ છુપાવી શકે છે. જે સાધનથી ઇન્ટરફેસ બન્યું તે જ સાધનથી તેને નીચે ઉતારો, પછી ખાતરી કરો કે કંઈ બાકી નથી.
અસંબંધિત ઇન્ટરફેસ ડિલીટ કરશો નહીં અને હોસ્ટનો નેટવર્કિંગ સ્ટેક રીસેટ કરશો નહીં. બંને નાની વસ્તુ સુધારવા માટેના મોટા પગલાં છે, અને તેઓ એક નિષ્ફળ ટનલને એવા મશીનમાં ફેરવે છે જેનાં અન્ય જોડાણો ફરી સ્થાપિત કરવા પડે. યોગ્ય વ્યાપ એક ઇન્ટરફેસ અને તેનું માલિક યુનિટ છે. આનાથી વિશાળ કંઈપણ થાય તે પહેલા લખેલું કારણ માગે છે.
યુનિટ નહીં, ટનલ સાબિત કરો
લીલું યુનિટ એટલે સ્ટાર્ટઅપ ક્રમ શૂન્ય સાથે નીકળ્યો. એનો અર્થ એ નથી કે પેકેટ બીજી બાજુ પહોંચ્યું, અને એ પણ નહીં કે રિઝોલ્વર તમે ઇચ્છ્યું હતું તેમ સેટ થયું.
ટનલમાંથી વિનંતી મોકલો અને તેને ઉત્પન્ન કરનારી સ્થિતિ વાંચો:
systemctl is-active wg-quick@wg0
wg show wg0 latest-handshakes
ping -c 3 10.63.0.1
resolvectl query internal.example.netજવાબ વગરનું હેન્ડશેક હજી પણ કહે છે કે ટનલ બની છે અને સામેની બાજુ શાંત છે, જે ક્યારેય શરૂ ન થયેલા યુનિટ કરતાં અલગ સમસ્યા છે. યુનિટની સ્થિતિ, હેન્ડશેક અને વિનંતીનું પરિણામ એક રેકોર્ડમાં રાખો, કારણ કે તેઓ સ્વતંત્ર રીતે નિષ્ફળ જાય છે અને ફક્ત સંયોજન જ સિસ્ટમનું વર્ણન કરે છે.