इन्टरफेस चालु छ तर 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जवाफ नभएको ह्यान्डसेकले पनि सुरुङ बन्यो र परको छेउ शान्त छ भनी बताउँछ, जुन कहिल्यै सुरु नभएको युनिटभन्दा फरक समस्या हो। युनिटको अवस्था, ह्यान्डसेक र अनुरोधको नतिजा एउटै रेकर्डमा राख्नुहोस्, किनकि ती स्वतन्त्र रूपमा असफल हुन्छन् र केवल संयोजनले प्रणालीको वर्णन गर्छ।