Windows वर, पत्ता घेणारा, तो सोडणारा आणि दर काही सेकंदांनी ते पुन्हा करणारा OpenVPN ॲडॉप्टर सहसा DHCP बग नसतो। ॲडॉप्टरला असा पत्ता वापरण्यास सांगितले जाते ज्याला आधीच दुसरे काहीतरी प्रतिसाद देत आहे, म्हणून Windows तो निरुपयोगी म्हणून चिन्हांकित करते आणि क्लायंट पुन्हा सुरू होतो। संघर्ष त्याखाली, ऑपरेटिंग सिस्टमच्याच नेटवर्क स्टॅकमध्ये सुटत असल्याने क्लायंट लॉग शांत राहतो।

हा फरक महत्त्वाचा आहे, कारण टनेल कॉन्फिगरेशनकडे लक्ष्य असलेले प्रत्येक समस्या-निवारण पाऊल सर्व्हर बाजूचा डुप्लिकेट पत्ता दुर्लक्षित करेल।

क्लायंट लॉगपासून नाही, Windows इव्हेंट लॉगपासून सुरुवात करा

Windows पत्ता संघर्ष सिस्टम लॉगमध्ये इव्हेंट ID 4198 आणि 4199 सह नोंदवते। पहिले पत्त्यासाठी आढळलेल्या संघर्षाची नोंद करते, दुसरे इंटरफेसला तो ज्या पत्त्यासह कॉन्फिगर केला होता तो वापरता आला नाही अशी नोंद करते। दोन्हीपैकी कोणतेही OpenVPN चा उल्लेख करत नाही, आणि म्हणूनच ते दुर्लक्षित करणे सोपे आहे।

अलीकडील घटना काढा आणि त्यांच्या वेळमुद्रा ॲडॉप्टरच्या नूतनीकरण चक्राशी तुलना करा: Get-WinEvent -FilterHashtable @{LogName='System'; Id=4198,4199} -MaxEvents 40 | Format-Table TimeCreated,Id,Message -Wrap। दर पंधरा सेकंदाला होणारा संघर्ष त्या पत्त्याला प्रतिसाद देत राहणाऱ्या मालकाविरुद्ध तोच पत्ता पुन्हा प्रयत्न करणाऱ्या क्लायंटशी जुळतो। कनेक्शनच्या वेळीचा एकटा संघर्ष मात्र एकवेळच्या टक्करीकडे निर्देश करतो। कोणत्याही स्थितीत, पुढचा प्रश्न हा आहे की पत्ता दुसऱ्या कोणाकडे आहे।

तीन रचना दोन होस्ट एका पत्त्यावर ठेवतात

सर्व्हरला विचारा की त्याच्या मते पत्ता कोणाकडे आहे, मग नेटवर्कला विचारा की त्याला कोण प्रतिसाद देतो। grep -H ifconfig-push /etc/openvpn/ccd/* प्रत्येक पिन केलेला टनेल पत्ता आणि तो ज्या प्रमाणपत्राचा आहे ते सूचीबद्ध करते। ip -4 neigh show dev tap0 ब्रिजने दुसऱ्या स्तरावर काय शिकले ते दाखवते। या दोन याद्या तुलना केल्यास बहुतेक डुप्लिकेट एका मिनिटात सापडतात।

तीन रचना जवळपास सर्वांचे स्पष्टीकरण देतात: client-config-dir मधील नोंद दोन प्रमाणपत्रांसाठी एक पत्ता पिन करते, ब्रिज केलेला tap विभाग दुसऱ्या होस्टकडे आधीच स्थिरपणे असलेला पत्ता मशीनला देतो, किंवा जुनी भाडेपट्टी फाइल असा पत्ता परत करते जो अजून जोडलेला क्लायंट स्वतःचा मानतो। तिसरी स्थिती सर्वात धूर्त आहे, कारण ifconfig-pool-persist ज्ञात क्लायंटसाठी पत्ते जाणूनबुजून पुन्हा वापरते।

पत्त्यासाठी शर्यत लावण्याऐवजी तो अद्वितीय करा

बूट क्रम आज कोण जिंकेल एवढेच ठरवतो, म्हणून रीस्टार्ट क्रमावर आधारित कोणताही उपाय तात्पुरता माना। प्रत्येक क्लायंटला त्याची स्वतःची ifconfig-push ओळ द्या, किंवा कोणतेही ब्रिज किंवा सर्व्हर इंटरफेस न स्पर्श करणाऱ्या श्रेणीतून स्थिर पत्ते वाटप करा। क्लायंट यादीत डुप्लिकेट सामान्य नावेही तपासा, कारण duplicate-cn दोन सत्रांना एक ओळख आणि त्यामुळे एक पिन केलेला पत्ता सामायिक करू देतो। ब्रिज केलेल्या उपकरणाला खरोखर स्थिर पत्ता हवा असल्यास ते त्याच्या स्वतःच्या सबनेटमध्ये हलवा किंवा सर्व्हर जिथे नोंदवतो तिथे पूलमधून राखून ठेवा।

persist फाइल कोणत्या भाडेपट्ट्या आहेत हे कळल्यावरच हटवा, अन्यथा पुढचे पुन्हा कनेक्शन तेच पत्ते पुन्हा वाटेल।

योग्य क्रमाने पुन्हा सुरू करा आणि प्रत्येक पत्त्यासाठी एक मालक असल्याची खात्री करा

बदल आधी सर्व्हरवर लागू करा, मग क्लायंट पुन्हा जोडा, जेणेकरून प्रत्येक सहभागी दुरुस्त केलेल्या पूलविरुद्ध नोंदणी करेल। क्लायंट आधी पुन्हा सुरू केल्यास ते सर्व्हर अजूनही व्यापलेले मानत असलेल्या पत्त्यांसह राहतील। पुन्हा सुरू केल्यावर स्टेटस फाइल वाचा आणि प्रत्येक सामान्य नाव एका पत्त्यासह एकदाच दिसत असल्याची खात्री करा। एका नावासाठी दोन नोंदी म्हणजे जुने सत्र कधीच बंद झाले नाही, पूल तुटलेला आहे असे नाही।

क्लायंट अजूनही त्याचा पत्ता ठेवू शकत नसेल, तर त्याच होस्टवरील ब्रिज इंटरफेस तो वाहत आहे का ते तपासा। विक्रेत्याच्या उपकरणाकडून पत्ता वारसाहक्काने मिळालेला ब्रिज, VPN सर्व्हरने तो पत्ता क्लायंटला दिला असतानाही त्यासाठी ARP उत्तर देईल।

तिकीट बंद करण्यापूर्वी पूर्ण नूतनीकरण चक्र पाहा

एक स्वच्छ वाचन काहीही सिद्ध करत नाही। किमान दहा मिनिटे ॲडॉप्टर पाहा आणि मध्ये पुन्हा कनेक्शन सक्तीने करा: Get-NetIPAddress -InterfaceAlias "OpenVPN*" | Select-Object IPAddress,AddressState। पत्ता पुन्हा कनेक्शन टिकून राहिला पाहिजे आणि प्राधान्य स्थितीत राहिला पाहिजे।

मग पहिल्या पायरीतील इव्हेंट क्वेरी पुन्हा चालवा आणि ती नवीन काहीही परत देत नाही याची खात्री करा। पुन्हा कनेक्शनभर शांत लॉग हा संघर्ष गेल्याचा पुरावा आहे, तर एका कनेक्शननंतरचा शांत लॉग म्हणजे शर्यत अजून झाली नाही एवढेच। शेवटी, टनेल ज्या संसाधनासाठी आहे ते तपासा, कारण पत्ता गमावलेला ब्रिज VPN स्वतः निरोगी दिसत असतानाही विक्रेत्याचा मार्ग तोडू शकतो।

पूलची श्रेणी, प्रत्येक पिन केलेला पत्ता आणि तो असलेला होस्ट सर्व्हरच्या टिपांमध्ये नोंदवा। मग पुढची टक्कर शोधायला काही मिनिटे पुरतील, पुन्हा शोधायला पूर्ण दुपार लागणार नाही।

संबंधित लेख