यदि आपका सर्वर अभी IPv6 पर उत्तर नहीं देता, तो संभवतः पता असाइन तो है पर सिस्टम में कॉन्फ़िगर नहीं हुआ है। यह गाइड दिखाती है कि Ubuntu, Debian और AlmaLinux पर उसे स्थिर रूप से कैसे सेट करें, कनेक्टिविटी कैसे टेस्ट करें और फ़ायरवॉल से कैसे सुरक्षित करें। यह IPv6 आवंटन वाले हर VPS Linux Infrawire पर लागू होती है।
📋 पूर्वापेक्षाएँ
- root SSH एक्सेस वाला VPS, जिसमें Ubuntu 24.04, Debian 12 या AlmaLinux 9 / Rocky 9 चल रहा हो। क्लाइंट एरिया से आपको IP और root पासवर्ड मिल जाता है।
- आपका IPv6 पता, प्रीफ़िक्स लंबाई और गेटवे, जो नीचे
VPS_IPV6,PREFIX(अक्सर64) औरIPV6_GATEWAYके रूप में लिखे हैं। - इंटरफ़ेस का नाम (इन उदाहरणों में
eth0):
Baship -br link ip -6 addr show ip -6 route show
नेटवर्क फ़ाइलें संपादित करते समय दूसरा SSH सत्र खुला रखें, ताकि गलती होने पर आप बाहर न रह जाएँ।
🟠 Ubuntu 24.04: Netplan
Netplan फ़ाइलें /etc/netplan/ में होती हैं। क्लाउड इमेज पर यह फ़ाइल अक्सर cloud-init बनाता है और रीबूट पर ओवरराइट हो सकती है, इसलिए पहले उसका नेटवर्क प्रबंधन बंद करें:
Bashsudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
YAMLnetwork: {config: disabled}
फिर अपनी Netplan फ़ाइल (उदाहरण: /etc/netplan/50-cloud-init.yaml) संपादित करें और IPv6 पता व रूट जोड़ें। मौजूदा IPv4 पंक्तियाँ रहने दें:
YAML1network: 2 version: 2 3 ethernets: 4 eth0: 5 addresses: 6 - VPS_IP/IPV4_PREFIX 7 - VPS_IPV6/PREFIX 8 routes: 9 - to: default 10 via: IPV4_GATEWAY 11 - to: default 12 via: IPV6_GATEWAY 13 nameservers: 14 addresses: [1.1.1.1, 2606:4700:4700::1111]
Bashsudo chmod 600 /etc/netplan/*.yaml sudo netplan try
यदि आप पुष्टि नहीं करते तो netplan try 120 सेकंड बाद अपने आप पुरानी स्थिति में लौट आता है, जो गलत कॉन्फ़िगरेशन से आपको बचाता है। Enter से पुष्टि करें, या निश्चिंत होने पर sudo netplan apply चलाएँ।
🔴 Debian 12: /etc/network/interfaces
Bashsudo nano /etc/network/interfaces
उसी इंटरफ़ेस के लिए एक ब्लॉक जोड़ें:
INIiface eth0 inet6 static address VPS_IPV6/PREFIX gateway IPV6_GATEWAY dns-nameservers 2606:4700:4700::1111
dns-nameservers पंक्ति तभी काम करती है जब resolvconf पैकेज इंस्टॉल हो; अन्यथा रिज़ॉल्वर को /etc/resolv.conf में रखें। बदलाव लागू करें:
Bashsudo systemctl restart networking
सेवा रीस्टार्ट करने से कनेक्शन क्षण भर के लिए टूट सकता है। यदि इंटरफ़ेस का IPv4 DHCP से चलता है और आप केवल IPv6 जोड़ना चाहते हैं, तो कंसोल से sudo ifdown eth0 && sudo ifup eth0 भी चला सकते हैं।
🔵 AlmaLinux 9 / Rocky 9: nmcli
इंटरफ़ेस को NetworkManager संभालता है। पहले कनेक्शन के नाम देखें:
Bashnmcli connection show
जो नाम दिखे (CON_NAME, जैसे System eth0 या cloud-init eth0) उसे इस्तेमाल करें:
Bashsudo nmcli connection modify 'CON_NAME' ipv6.method manual \ ipv6.addresses VPS_IPV6/PREFIX \ ipv6.gateway IPV6_GATEWAY \ ipv6.dns 2606:4700:4700::1111 sudo nmcli connection up 'CON_NAME'
बदलाव कनेक्शन प्रोफ़ाइल में सहेजा जाता है और रीबूट के बाद भी बना रहता है।
✅ कनेक्शन टेस्ट करें
Baship -6 addr show dev eth0 ip -6 route show default ping -6 -c 3 IPV6_GATEWAY ping -6 -c 3 2606:4700:4700::1111 curl -6 -I https://www.debian.org
पुराने सिस्टम पर ping6 वही काम करता है जो ping -6। IPv6 वाली किसी दूसरी मशीन से अपने VPS पते के साथ भी जाँचें:
Bashping -6 -c 3 VPS_IPV6 ssh root@VPS_IPV6
🔥 IPv6 के लिए फ़ायरवॉल
जो नियम केवल IPv4 के लिए है, वह IPv6 पक्ष को खुला छोड़ देता है। UFW के साथ सुनिश्चित करें कि IPv6 सपोर्ट चालू है:
Bashgrep IPV6 /etc/default/ufw # IPV6=yes दिखना चाहिए sudo ufw allow 22/tcp sudo ufw allow 80,443/tcp sudo ufw enable sudo ufw status verbose
हर नियम तब दो बार दिखता है, एक बार (v6) के साथ। AlmaLinux पर firewalld उन्हीं कमांड से दोनों परिवारों को कवर करता है:
Bashsudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload
🛠️ समस्या निवारण
पता मौजूद है पर गेटवे पर ping विफल है। प्रीफ़िक्स लंबाई और गेटवे जाँचें। कुछ नेटवर्क fe80::1 जैसा लिंक-लोकल गेटवे इस्तेमाल करते हैं; ऐसे में गेटवे इसी मान पर रखें और यदि आपका टूल माँगे तो रूट में dev eth0 जोड़ें।
अगले रीबूट तक चलता है। कोई दूसरा टूल कॉन्फ़िगरेशन को दोबारा लिख रहा है: Ubuntu पर cloud-init (पहला भाग देखें), या कोई ip -6 addr add कमांड जो कभी कॉन्फ़िगरेशन फ़ाइलों तक पहुँची ही नहीं। ip से चलाई गई कमांड अस्थायी होती हैं।
IPv6 ping पर चलता है पर वेबसाइट पर नहीं। फ़ायरवॉल या सेवा केवल IPv4 पर सुन रही है। ss -tlnp से जाँचें: वेब सर्वर को केवल 0.0.0.0:80 नहीं, [::]:80 भी दिखाना चाहिए। nginx में server ब्लॉक में listen [::]:80; जोड़ें।
🚀 आपका VPS अब IPv6 बोलता है: एक AAAA रिकॉर्ड प्रकाशित करें और आपकी सेवाएँ दोनों प्रोटोकॉल पर पहुँच योग्य होंगी।