मैं दूरदराज के भवनों पर स्थित कई LAN कनेक्ट करना चाहता हूं।
"केंद्रीय" साइट में ओपनवीपीएन पर चलने वाला एक लिनक्स कंप्यूटर है। प्रत्येक दूरस्थ साइट OpenVPN भी चलाती है।
- केंद्रीय साइट पर 192.168.0.0/24 की एक लैन संख्या है
- कई दूरस्थ साइटें भी 192.168.0.0/24 नंबर पर हैं
- मैं LAN नंबरिंग को संशोधित / संशोधित नहीं कर सकता / नहीं करना चाहता / कर सकती
- अधिकांश रिमोट ओपनवीपीएन पर मेरा नियंत्रण नहीं है
फिर मुझे इसकी आवश्यकता है:
1. वर्चुअल LAN को परिभाषित करें
। प्रत्येक साइट के
लिए 1: 1 NAT कॉन्फ़िगर करें। 1: 1 NAT को केंद्रीय राउटर पर कॉन्फ़िगर करना होगा।
।
इसलिए प्रत्येक साइट पर 10.10.x.0 / 24 LAN है।
जब कोई कंप्यूटर 12 साइट पर 192.168.0.44 पर पहुंचना चाहता है, तो उसे 10.10.12.44 पर एक पिकेट भेजना होगा।
वीपीएन का संचालन मेरे लिए कोई समस्या नहीं है। मैं वर्तमान में 60+ साइटों को जोड़ता हूं। लेकिन मुझे यह करने का एक सरल तरीका नहीं मिला 1: 1 NAT।
यहां केंद्रीय साइट से दूरस्थ साइट पर भेजे गए पैकेट का एक उदाहरण है, और इसकी प्रतिक्रिया पैकेट:
मैंने iptables NETMAP के साथ कुछ परीक्षण किए लेकिन मैं इसे काम करने का प्रबंधन नहीं कर सकता क्योंकि मुझे निर्णय लेने के बाद स्रोत + गंतव्य को संशोधित करने का कोई तरीका नहीं मिलता है।
मैं नए --client-nat
OpenVPN की सुविधा से बचना पसंद करता हूं ।
शायद मुझे रूटिंग के साथ मजबूर होना पड़ेगा ip route
? या नेटवर्क स्टैक में दो बार लूप के साथ veth
?
नोट: मैं बहाना का उपयोग नहीं करना चाहता। केवल 1/1 NAT।
संपादित करें:
यह एक नियमित ओपन वीपीएन सेटअप के साथ संभव नहीं है। क्योंकि एक दूरस्थ साइट से एक पैकेट किसी अन्य साइट के पैकेट से अप्रभेद्य है: दोनों के समान स्रोत और गंतव्य पते हैं, और दोनों एक ही ट्यून (या टैप) इंटरफ़ेस से आते हैं। इसलिए इसे स्रोत-एनएटी के लिए संभव नहीं है।
समाधान 1: दूरस्थ स्थलों पर NAT करें। मेरे मामले में संभव नहीं है। मुझे यह केवल केंद्रीय साइट पर करना होगा।
समाधान 2: प्रत्येक दूरस्थ साइट के लिए एक वीपीएन सेटअप करें। इसलिए मेरे पास प्रत्येक के लिए एक ट्यून होगी। मुझे लगता है कि यह ठीक हो सकता है। बहुत स्मृति कुशल नहीं है, लेकिन ठीक है।
समाधान 3: प्रत्येक साइट के लिए वीपीएन के अंदर एक (अनएन्क्रिप्टेड) सुरंग स्थापित करें। यह प्रत्येक के लिए एक इंटरफ़ेस देगा। सरल सुरंगें क्रॉस-प्लेटफ़ॉर्म (मेरी गाँठ तक) नहीं हैं। उदाहरण के लिए, लिनक्स के लिए जीआरई या आईपिप या सिट ठीक है, लेकिन कुछ दूर की साइटें केवल एक विंडोज कंप्यूटर चला रही हैं, इसलिए इसके लिए ओपन वीपीएन स्थापित है। तो एक साधारण सुरंग को स्थापित करना असंभव है। अन्य विकल्प एक अधिक जटिल सुरंग (विच?) का उपयोग करना है, लेकिन सिस्टम पर उपरि और sysadmin पर कई वीपीएन होने से बड़ा हो सकता है
समाधान 4: नवीनतम ओपनवीपीएन संकलित करें, क्योंकि इसमें 1: 1 NAT सुविधा शामिल है। मैं इस सप्ताह इसका परीक्षण करता हूं।