प्राइवेट नेटवर्क (VPC) आपके सर्वरों को आपकी अपनी IP रेंज पर, इंटरनेट से अलग, आपस में जोड़ता है। सर्वर बिना पब्लिक IP के प्राइवेट नेटवर्क पर रह सकते हैं; NAT गेटवे उन्हें बाहर की ओर इंटरनेट एक्सेस देता है, और जब किसी सर्वर तक बाहर से पहुंचना ज़रूरी हो तो Elastic IP उस पर एक पब्लिक एड्रेस मैप करता है।
इसका इस्तेमाल कब करें
- डेटाबेस, कैश और क्यू, जिन्हें कभी पब्लिक रूप से खुला नहीं होना चाहिए।
- लोड बैलेंसर के पीछे ऐप सर्वर, जो नेटवर्क के ज़रिए सिर्फ़-प्राइवेट सर्वरों तक पहुंच सकता है।
- कम पेड IPv4 एड्रेस: सिर्फ़ एंट्री पॉइंट को ही इनकी ज़रूरत होती है।
- सर्वरों के बीच का आंतरिक ट्रैफ़िक, जो पब्लिक इंटरफ़ेस से दूर रहता है।
नेटवर्क बनाएं
- कंसोल में Networks खोलें और Create network चुनें।
- उसे नाम दें, जैसे
prod। - एक IP रेंज चुनें, जैसे
10.0.0.0/16। - उसे बनाएं।
नीचे दिए उदाहरण उस रेंज के भीतर 10.0.1.0/24 के एड्रेस इस्तेमाल करते हैं।
ऐसी रेंज चुनें जो आपके ऑफ़िस नेटवर्क या जिस VPN को आप जोड़ने वाले हैं, उससे ओवरलैप न करे, क्योंकि ओवरलैप होने वाली रेंज को ठीक से रूट नहीं किया जा सकता।
सर्वर जोड़ें
- नए सर्वर: सर्वर बनाएं के नेटवर्किंग चरण में नेटवर्क चुनें। सर्वर को सिर्फ़-प्राइवेट बनाने के लिए पब्लिक IPv4 और IPv6 का चयन हटा दें।
- मौजूदा सर्वर: सर्वर खोलें, Networking में जाएं और उसे नेटवर्क से जोड़ें।
सर्वर पर प्राइवेट एड्रेस उसके अपने इंटरफ़ेस पर दिखता है:
ip -brief address
एक सर्वर से दूसरे तक टेस्ट करें:
ping -c 3 10.0.1.5 # उदाहरण प्राइवेट एड्रेस
सर्विस को प्राइवेट एड्रेस से बांधें
आंतरिक सर्विस को सिर्फ़ प्राइवेट इंटरफ़ेस पर सुनने दें। उदाहरण:
# PostgreSQL: /etc/postgresql/16/main/postgresql.conf
listen_addresses = '10.0.1.5'
# Redis: /etc/redis/redis.conf
bind 10.0.1.6
और pg_hba.conf, UFW या किसी फ़ायरवॉल में सिर्फ़ नेटवर्क रेंज को अनुमति दें:
sudo ufw allow from 10.0.0.0/16 to any port 5432 proto tcp
NAT गेटवे: प्राइवेट सर्वरों के लिए इंटरनेट
सिर्फ़-प्राइवेट सर्वर अपने-आप अपडेट डाउनलोड नहीं कर सकता और न ही बाहरी API को कॉल कर सकता है। NAT गेटवे इसका हल है:
- कंसोल में नेटवर्क के लिए एक NAT गेटवे बनाएं।
- पुष्टि करें। अब नेटवर्क के सर्वरों का बाहर जाने वाला ट्रैफ़िक गेटवे के पब्लिक एड्रेस से निकलता है।
किसी प्राइवेट सर्वर से जांचें:
curl -4 https://ifconfig.me
sudo apt update
NAT गेटवे सिर्फ़ अंदर से शुरू हुए कनेक्शन संभालता है। इंटरनेट पर कोई भी इसके ज़रिए आपके प्राइवेट सर्वरों से कनेक्शन नहीं खोल सकता।
Elastic IP: बाहर से किसी एक प्राइवेट सर्वर तक पहुंचें
Elastic IP एक पब्लिक IP है जो NAT के ज़रिए प्राइवेट नेटवर्क पर मौजूद किसी सर्वर से जुड़ता है। इसका इस्तेमाल तब करें जब किसी एक प्राइवेट सर्वर को इंटरनेट से कनेक्शन स्वीकार करने हों, जैसे मेल रिले या VPN एंडपॉइंट, और आप उसे पब्लिक इंटरफ़ेस नहीं देना चाहते।
- कंसोल में एक Elastic IP बनाएं।
- उसे नेटवर्क के किसी प्राइवेट सर्वर को असाइन करें।
- सर्वर के फ़ायरवॉल में ज़रूरी पोर्ट खोलें।
एक एड्रेस के पीछे कई सर्वरों के लिए आम तौर पर लोड बैलेंसर बेहतर विकल्प है।
प्राइवेट सर्वरों से कनेक्ट करें
पब्लिक एड्रेस वाले एक जंप होस्ट का इस्तेमाल करें:
ssh -J [email protected] [email protected] # उदाहरण एड्रेस
या किसी एक सर्वर पर VPN चलाएं और नेटवर्क रेंज को उसके ज़रिए रूट करें; देखें WireGuard गाइड। ब्राउज़र कंसोल भी हर सर्वर के लिए काम करता है, चाहे वह पब्लिक हो या नहीं।
लेआउट की योजना बनाएं
एक आम छोटा प्रोडक्शन लेआउट:
| सर्वर | पब्लिक | प्राइवेट |
|---|---|---|
| लोड बैलेंसर | हां (मैनेज्ड) | 10.0.1.0/24 तक पहुंचता है |
web-1, web-2 |
नहीं | 10.0.1.11, 10.0.1.12 |
db-1 |
नहीं | 10.0.1.20 |
| NAT गेटवे | हां | web और db को आउटबाउंड एक्सेस देता है |
bastion |
IPv4 वाला छोटा सर्वर | 10.0.1.5 |
आप ठीक यही लेआउट Composer में बना सकते हैं, मासिक लागत देख सकते हैं और उसे क्रम से लागू कर सकते हैं।
API
नेटवर्क API के ज़रिए https://api.wolkra.com/v1/networks पर उपलब्ध हैं। देखें API टोकन।
प्रोडक्ट पेजों पर और जानकारी: प्राइवेट नेटवर्क, NAT गेटवे और IP एड्रेस।
अक्सर पूछे जाने वाले सवाल
क्या किसी सर्वर के पास बिल्कुल भी पब्लिक IP न हो, ऐसा हो सकता है?
हां। उसे सिर्फ़ एक प्राइवेट नेटवर्क से जोड़ें। वह NAT गेटवे के ज़रिए इंटरनेट तक पहुंच सकता है, और आप उससे जंप होस्ट, VPN या लोड बैलेंसर के ज़रिए जुड़ते हैं।
मुझे कौन-सी IP रेंज इस्तेमाल करनी चाहिए?
RFC 1918 की कोई भी प्राइवेट रेंज, जैसे 10.0.0.0/16, बशर्ते वह उन दूसरे नेटवर्क से ओवरलैप न करे जिन्हें आप जोड़ना चाहते हैं, जैसे आपका ऑफ़िस या कोई VPN।
Elastic IP और फ़्लोटिंग IP में क्या फ़र्क है?
फ़्लोटिंग IP एक पब्लिक एड्रेस है जो सीधे सर्वर को दिया जाता है और सेकंडों में एक सर्वर से दूसरे पर ले जाया जा सकता है। Elastic IP एक पब्लिक एड्रेस है जो NAT के ज़रिए ऐसे सर्वर से जुड़ता है जो सिर्फ़ प्राइवेट नेटवर्क पर है।
क्या प्राइवेट नेटवर्क के ट्रैफ़िक का बिल लगता है?
Wolkra पर ट्रैफ़िक अनमीटर्ड है, पब्लिक और प्राइवेट दोनों इंटरफ़ेस पर।