दूरस्थ उपयोगकर्ताओं को किसी भौतिक LAN पर एक प्रिंटर और एक फ़ाइल सर्वर तक पहुँचना होता है, और हमेशा चालू रहने वाला अकेला Linux बॉक्स एक VirtualBox VM है। उस VM को उस LAN पर ब्रिज करना पहला आधा हिस्सा है। दूसरा आधा हिस्सा एक वापसी रूट है जिसे LAN का हर डिवाइस वास्तव में उपयोग करेगा, और यही वह भाग है जो अधिकांश सेटअप छोड़ देते हैं। जब यह नहीं होता, तो टनल जुड़ जाती है, क्लाइंट गेटवे को पिंग करता है, और कोई और उत्तर नहीं देता।

ऐसे पते इस्तेमाल करें जहाँ पहुँचा जा सके

VM के LAN एडाप्टर को उस नेटवर्क के लिए स्वीकृत Bridged Adapter अटैचमेंट पर सेट करें, और सामान्य आवंटन प्रक्रिया से उसे एक पता दें। तब VM भौतिक LAN पर किसी भी अन्य होस्ट की तरह दिखाई देता है। उसका डिफ़ॉल्ट रूट अब भी असली गेटवे का उपयोग करना चाहिए, ताकि VPN पीयर तक एन्क्रिप्टेड ट्रांसपोर्ट पहुँच योग्य रहे। VirtualBox के डिफ़ॉल्ट NAT पते को LAN के अगले हॉप के रूप में उपयोग न करें, क्योंकि वह पता एक वर्चुअल NAT के पीछे रहता है और होस्ट या LAN की अन्य मशीनों के लिए on-link नहीं है।

LAN router:          192.168.70.1/24
VirtualBox host:     192.168.70.5/24
VPN gateway VM:      192.168.70.10/24
Example LAN service: 192.168.70.40
VPN client pool:     10.80.0.0/24

पूल चुनने से पहले दूरस्थ उपयोगकर्ताओं के घरेलू नेटवर्क के साथ ओवरलैप जाँचें। ओवरलैप रूटिंग की ऐसी अस्पष्टता बन जाता है जिसे कोई भी सर्वर कॉन्फ़िगरेशन ठीक नहीं करता।

LAN की घोषणा करें, फिर फ़ॉरवर्ड करें

ऐसे सर्वर के लिए जिसका प्रमाणीकरण और ट्रांसपोर्ट पहले से प्रबंधित है, नेटवर्किंग पंक्तियाँ ऐसी दिखती हैं। push स्वीकार करने वाले क्लाइंट को बताता है कि LAN तक कैसे पहुँचना है, और यह अपने आप VM से कुछ भी फ़ॉरवर्ड नहीं कराता।

dev tun
topology subnet
server 10.80.0.0 255.255.255.0
push "route 192.168.70.0 255.255.255.0"

VM के स्थायी नेटवर्क कॉन्फ़िगरेशन में IPv4 फ़ॉरवर्डिंग सक्षम करें, और क्लाइंट पूल को VM की फ़ॉरवर्डिंग सीमा पर इच्छित LAN सेवाओं तक पहुँचने दें। VPN श्रोता तक पहुँचने की अनुमति एक अलग नियम है, और यदि टनल ऊपर आ गई है तो वह पहले से काम कर रही है।

वापसी रूट LAN राउटर पर होता है

LAN के डिवाइस अपने डिफ़ॉल्ट गेटवे से उत्तर देते हैं, जो 192.168.70.1 पर LAN राउटर है। उस राउटर को पता ही नहीं होता कि 10.80.0.0/24 कहाँ है, जब तक उसे बताया न जाए। पूल रूट को राउटर के समर्थित स्थायी कॉन्फ़िगरेशन में जोड़ें, जो VM के LAN पते की ओर इंगित करे। इसे केवल VirtualBox होस्ट पर जोड़ने से वे पथ ठीक होते हैं जो उस होस्ट से पूछते हैं, और वह LAN का हर डिवाइस नहीं है।

ip route add 10.80.0.0/24 via 192.168.70.10

गंतव्य के अपने फ़ायरवॉल को अब भी क्लाइंट पूल को स्रोत के रूप में अनुमति देनी होगी। रूट पैकेट ले जाता है; यह सेवा नहीं देता।

यदि LAN राउटर बदला नहीं जा सकता, तो VM पर सीमित स्रोत अनुवाद विकल्प है। यह उत्तरों को रूट के बिना वापस लाता है, और LAN सेवा से अलग-अलग क्लाइंट पते छिपा देता है।

एक पैकेट को शुरू से अंत तक ट्रेस करें

10.80.0.25 पर एक क्लाइंट टनल से 192.168.70.40 पर भेजता है। VM पैकेट को LAN पर फ़ॉरवर्ड करता है। सेवा अपने राउटर को उत्तर देती है, जो क्लाइंट पूल के लिए VM चुनता है, और VM पैकेट को OpenVPN से वापस भेजता है। उस वाक्य में हर हॉप एक ऐसी जगह है जहाँ डिज़ाइन विफल हो सकता है।

दूरस्थ क्लाइंट से असली एप्लिकेशन के साथ परीक्षण करें, फिर VM और राउटर दोनों पर प्रबंधित कॉन्फ़िगरेशन पुनः लोड करने के बाद दोहराएँ।

यदि क्लाइंट VM तक पहुँचता है लेकिन सेवा तक नहीं, तो पहले राउटर का रूट जाँचें। यदि सेवा अनुरोध प्राप्त करती है और क्लाइंट कभी उत्तर नहीं देखता, तो वापसी पथ ही संदिग्ध है।

संबंधित लेख