पहिलो सुरुवात /dev/net/tun वा खोल्न नसकिने TUN/TAP यन्त्रको सन्देशसँग असफल हुन्छ। प्रमाणपत्रहरू अझै पढिएका छैनन्, त्यसैले प्रोफाइलमा केही पनि दोषी छैन। डेमनले कर्नेलसँग यो गेस्टसँग नभएको वस्तु मागिरहेको छ।

त्यो वस्तु tun मोड्युलले दिने अक्षर यन्त्र हो। तपाईंले यो बनाउन सक्नुहुन्छ कि भन्ने कर्नेल कसको स्वामित्वमा छ भन्नेमा निर्भर गर्छ।

डेमनले कर्नेलसँग के माग्छ

OpenVPN ले /dev/net/tun खोल्छ र ड्राइभरसँग इन्टरफेस माग्छ। ड्राइभर tun मोड्युल हो, र यन्त्र नोड भनेको प्रयोगकर्ता ठाउँले त्यसमा पुग्न प्रयोग गर्ने ह्यान्डल हो। मोड्युल लोड नभएको खण्डमा नोड नहुन सक्छ वा खोल्न असफल हुन सक्छ। दुवै अवस्था server.conf सम्पादन गरेर सुधारिँदैन।

यो त्रुटि पहिले प्लेटफर्मको प्रश्नको रूपमा पढ्नुहोस्। कन्फिग त्रुटि यन्त्र खुलेपछि देखिन्छ, त्यसअघि होइन।

VM वा कर्नेल साझा गर्ने गेस्ट

KVM, Xen वा अर्को पूर्ण भर्चुअल मेसिनमा कर्नेल तपाईंको नियन्त्रणमा हुन्छ। तपाईं मोड्युल लोड गर्न र नोड बनाउन सक्नुहुन्छ। OpenVZ, Virtuozzo वा LXC शैलीको कन्टेनरमा गेस्टले होस्टको कर्नेल साझा गर्छ, त्यसैले भित्रको root ले होस्टले लोड नगरेको मोड्युल लोड गर्न सक्दैन।

त्यसैले एउटै असफलताका दुई धेरै फरक मालिक हुन्छन्। पहिलो अवस्थामा तपाईं यसलाई इन्स्टन्सको भित्रबाट सुधार्न सक्नुहुन्छ। दोस्रोमा तपाईं होस्ट वा प्रदायकलाई केही खुलाउन भनिरहनुभएको छ।

तपाईं कुन अवस्थामा हुनुहुन्छ भन्ने निर्णय गर्नुअघि ls -l /dev/net/tun, lsmod | grep tun र ip -brief link show चलाउनुहोस्।

VM मा बुटको समयमा मोड्युल लोड गर्नुहोस्

भर्चुअल मेसिनमा modprobe tun ले सामान्यतया यन्त्र नोड बनाउँछ। यो देखियो कि भनेर जाँच्नुहोस्, त्यसपछि एक पटक टाइप गरिएको आदेशमा भर नपरी वितरणको मोड्युल कन्फिगमार्फत लोड स्थायी बनाउनुहोस्। रिबुटपछि हराउने नोड अर्को महिना त्यही टिकट बन्छ।

तपाईंले बुट गरेको कर्नेलमा त्यो मोड्युल नै छ कि छैन पनि जाँच्नुहोस्। काटिएको विक्रेताको कर्नेलमा त्यो नहुन सक्छ।

नोड छ तर खोल्न अझै असफल हुन्छ भने अर्को शंका अनुमति र यन्त्रको major/minor नम्बर हुन्। ती स्थानीय सुधार हुन्, प्रदायकलाई अनुरोध होइन।

कन्टेनरमा यन्त्र होस्टको स्वामित्वमा हुन्छ

कन्टेनरमा यन्त्र र क्षमता दुई छुट्टै आवश्यकता हुन्। रनटाइमले /dev/net/tun पास गर्नुपर्छ, र कन्टेनरलाई इन्टरफेस बनाउन नेटवर्क क्षमता चाहिन्छ। दुवै नदिने rootless रनटाइमले प्रोफाइल जसरी लेखिए पनि त्यही खोल्ने त्रुटि दिइरहन्छ। धेरै OpenVZ होस्टले ग्राहक प्यानलमा TUN/TAP टगल दिन्छन्, र त्यो खोलेर रिस्टार्ट गर्दा प्रायः पूरै समाधान हुन्छ।

प्रदायकलाई दुई ठ्याक्कै प्रश्न सोध्नुहोस्: होस्टमा tun मोड्युल लोड छ कि छैन र यो इन्स्टन्सभित्र यन्त्र उपलब्ध छ कि छैन? अस्पष्ट टिकटले अस्पष्ट उत्तर पाउँछ।

मोड्युल पुनः बनाउनु किन विरलै सहयोग गर्छ

गेस्टभित्र मोड्युल बनाउनु विरलै सहयोग गर्छ। कम्पाइल गर्न ठ्याक्कै चलिरहेको कर्नेलको कन्फिग चाहिन्छ, र /proc/config.gz ऐच्छिक छ र न्यूनतम इमेजमा प्रायः हुँदैन। चल्ने मोड्युल पनि कन्टेनरको स्वामित्व नभएको कर्नेलमा हाल्न सकिँदैन।

यन्त्र देखिएपछि सेवा रिस्टार्ट गर्नुहोस् र ट्राफिक परीक्षण गर्नुअघि इन्टरफेस पुष्टि गर्नुहोस्। tun0 देखिनु भनेको डेमनले यन्त्र खोलेको हो। यसले फर्वार्डिङ, फायरवाल नियम वा ग्राहकले पाउने मार्गबारे अझै केही भन्दैन।

यी छुट्टाछुट्टै प्रमाण भएका छुट्टाछुट्टै प्रश्न हुन्। यन्त्र नहुनु पूर्वशर्तको असफलता हो; भएर पनि केही नबोक्ने सुरुङ नीतिको असफलता हो।

सम्बन्धित लेखहरू