IP रेंज को CIDR ब्लॉक में कैसे बदलें?
CIDR ब्लॉक हमेशा अपने आकार के गुणज पर शुरू होता है और उसमें दो की घात जितने पते होते हैं (RFC 4632), इसलिए कोई भी मनचाही शुरू–अंत रेंज आम तौर पर कई ब्लॉक माँगती है: शुरुआत से वह सबसे बड़ा ब्लॉक लें जो वहीं शुरू हो और अंत से आगे न जाए, फिर दोहराएँ। जैसे 10.0.0.128 से 10.0.1.63 तक की रेंज 10.0.0.128/25 और 10.0.1.0/26 है। इसी नियम से सूची मर्ज होती है: ओवरलैप या सटी हुई रेंज जोड़ें, फिर हर जुड़े हिस्से को सबसे कम ब्लॉकों में लिखें — फ़ायरवॉल या अलाउ-लिस्ट के लिए सबसे छोटी सटीक सूची यही है।
सुरक्षा नोट: मर्ज और समेटना नियम को चौड़ा कर सकते हैं: अलाउ-लिस्ट या फ़ायरवॉल लाइनों की जगह कम ब्लॉक रखने से पहले जाँच लें कि नतीजा ठीक वही पते मिलाता है, कोई बड़ा ब्लॉक नहीं।
IP रेंज कैलकुलेटर कैसे इस्तेमाल करें
- रेंज को सूची में हर लाइन में एक के हिसाब से पेस्ट करें — जैसे किसी फ़ायरवॉल कॉन्फ़िगरेशन या क्लाउड प्रोवाइडर की प्रकाशित रेंज से; # के बाद का टेक्स्ट अनदेखा होता है।
- तालिका पढ़ें: हर लाइन रेंज के रूप में और CIDR ब्लॉकों के रूप में।
- ओवरलैप और चेतावनियाँ देखें, फिर मर्ज की हुई CIDR सूची कॉपी या डाउनलोड करें।
- किसी ख़ास क्लाइंट से मेल खाने वाली एंट्री देखने के लिए उसका पता «खोजने के लिए पता» में लिखें।
IP रेंज कैलकुलेटर की खूबियाँ
- CIDR ब्लॉक (प्रीफ़िक्स लंबाई या डॉटेड नेटमास्क के साथ), -, –, to या .. से लिखी शुरू–अंत रेंज, 10.0.1.10-99 जैसी छोटी रेंज, 192.168.1.* जैसे IPv4 वाइल्डकार्ड और अकेले पते पढ़ता है — एक ही सूची में IPv4 और IPv6
- हर एंट्री का पहला और आख़िरी पता, पतों की संख्या और उसे ठीक-ठीक ढकने वाले CIDR ब्लॉक, पतों के क्रम में
- ओवरलैप जाँच: साझा पतों वाली एंट्री का हर जोड़ा, साझा रेंज के साथ, और यह कि एक दूसरे को समेटे है, दोनों एक ही हैं या सिर्फ़ आंशिक ओवरलैप है
- मर्ज की हुई CIDR सूची जो सूची के हर पते को ठीक एक बार ढकती है — फ़ायरवॉल, सिक्योरिटी ग्रुप या अलाउ-लिस्ट में पेस्ट करने लायक और टेक्स्ट फ़ाइल में डाउनलोड होने लायक
- सारी IPv4 या सारी IPv6 एंट्री को समेटने वाला सबसे छोटा अकेला ब्लॉक, और वह कितने फ़ालतू पते भी ढकेगा
- पता खोज, जो उस पते वाली हर एंट्री बताती है, और जिन एंट्री को पढ़ा नहीं जा सका या जिनके सिरे उलटने पड़े उनके लिए लाइन-दर-लाइन नोट
इनपुट और आउटपुट
इनपुट
- IP रेंज, CIDR ब्लॉक या पते: हर लाइन में एक, 2,000 लाइनों तक, IPv4 और IPv6 मिलाकर; # से टिप्पणी शुरू होती है।
- खोजने के लिए पता (वैकल्पिक): सूची में खोजने के लिए एक IPv4 या IPv6 पता।
आउटपुट
- एक नज़र में: पढ़ी गई एंट्री, अलग-अलग IPv4 और IPv6 पते, एक से ज़्यादा बार आए पते, और मर्ज के बाद CIDR ब्लॉक।
- हर एंट्री रेंज और CIDR ब्लॉकों के रूप में (CSV डाउनलोड), मर्ज की हुई CIDR सूची (टेक्स्ट डाउनलोड) और ओवरलैप होने वाली एंट्री उनकी साझा रेंज के साथ।
- सार: हर फ़ैमिली का सबसे छोटा अकेला ब्लॉक और उसके फ़ालतू पते, मर्ज के बाद अलग रेंज की संख्या, और खोजे गए पते वाली एंट्री।
IP रेंज कैलकुलेटर का उदाहरण
ओवरलैप वाली रेंज के साथ अलाउ-लिस्ट साफ़ करना
इनपुट:
10.0.0.0/24
10.0.0.128 - 10.0.1.63
10.0.1.64/26
10.0.2.10-50
2001:db8::/126
खोजने के लिए पता: 10.0.1.20आउटपुट:
लाइन 2 (10.0.0.128 - 10.0.1.63) = 10.0.0.128/25, 10.0.1.0/26 · लाइन 4 (10.0.2.10-50) = 6 ब्लॉकों में 41 पते
ओवरलैप: 1. 10.0.0.0/24 और 2. 10.0.0.128 - 10.0.1.63, साझा रेंज 10.0.0.128 – 10.0.0.255, 128 पते, आंशिक ओवरलैप
मर्ज की हुई CIDR सूची (9 ब्लॉक): 10.0.0.0/24, 10.0.1.0/25, 10.0.2.10/31, 10.0.2.12/30, 10.0.2.16/28, 10.0.2.32/28, 10.0.2.48/31, 10.0.2.50/32, 2001:db8::/126
सबसे छोटा अकेला ब्लॉक (IPv4): 10.0.0.0/22, जो आपकी एंट्री के बाहर के 599 पते भी ढकता है · इसमें शामिल: 2. 10.0.0.128 - 10.0.1.63IP रेंज कैलकुलेटर के नतीजे कैसे पढ़ें
एक से ज़्यादा बार आए पते हर उस पते को गिनते हैं जिसे दो या ज़्यादा एंट्री ढकती हैं — हर पता एक बार, चाहे कितनी भी एंट्री में हो; शून्य का मतलब है कि किन्हीं दो एंट्री में कोई साझा पता नहीं।
"दूसरी को समेटे है" आम तौर पर फ़ालतू लाइन बताता है: छोटी एंट्री कुछ नहीं जोड़ती। "आंशिक ओवरलैप" पर ध्यान देना चाहिए, क्योंकि दोनों लाइनें शायद सटने के लिए लिखी गई थीं, ओवरलैप के लिए नहीं।
मर्ज के बाद ब्लॉक आपकी सूची की लाइनों से कम हों तो सूची छोटी की जा सकती है और मिलान नहीं बदलेगा; ज़्यादा हों तो कुछ एंट्री ऐसी रेंज हैं जिन्हें कोई अकेला CIDR ब्लॉक नहीं लिख सकता।
बहुत सारे फ़ालतू पतों वाला सबसे छोटा अकेला ब्लॉक चेतावनी है, सुझाव नहीं: उसे लेने पर ऐसे पते भी मिलेंगे जो आपकी किसी एंट्री में नहीं हैं।
IP रेंज कैलकुलेटर कब इस्तेमाल करें
- प्रोवाइडर की प्रकाशित शुरू–अंत रेंज को ऐसे फ़ायरवॉल, सिक्योरिटी ग्रुप या WAF के लिए CIDR ब्लॉकों में बदलना जो सिर्फ़ CIDR लेता है।
- अलाउ-लिस्ट या ब्लॉकलिस्ट लागू करने से पहले उसमें दोहराई और ओवरलैप होने वाली लाइनें जाँचना।
- किसी घटना या सपोर्ट टिकट के दौरान यह बताना कि "क्या यह क्लाइंट पता हमारी अलाउ-लिस्ट में है, और किस लाइन में?"
- पतों और छोटी रेंज की लंबी सूची को राउटर प्रीफ़िक्स-लिस्ट या ACL के लिए सबसे कम सटीक ब्लॉकों में समेटना।
समस्या निवारण
- "IPv4 या IPv6 पता, रेंज या CIDR ब्लॉक नहीं है": कोई फ़ालतू अक्षर, छूटा हुआ बिंदु या होस्टनेम तो नहीं — नाम रिज़ॉल्व नहीं होते, सिर्फ़ पते पढ़े जाते हैं।
- "रेंज के दोनों सिरे अलग-अलग एड्रेस फ़ैमिली के हैं": रेंज IPv4 से IPv4 या IPv6 से IPv6 तक होती है; दो लाइनें लिखें।
- "* सिर्फ़ आख़िरी हिस्सों की जगह ले सकता है": 10.*.1.* रेंज नहीं है; उसे अलग लाइनों या CIDR ब्लॉकों में लिखें।
- कोई लाइन "उलट दी गई": रेंज अंत से शुरू करके लिखी गई थी (10.0.0.9 - 10.0.0.1); कैलकुलेटर ने सिरे बदल दिए और यह बताया।
IP रेंज कैलकुलेटर के बारे में अक्सर पूछे जाने वाले सवाल
एक रेंज कई CIDR ब्लॉक क्यों बन जाती है?
CIDR ब्लॉक हमेशा अपने आकार के गुणज पर शुरू होता है और उसमें दो की घात जितने पते होते हैं, इसलिए ज़्यादातर रेंज एक ब्लॉक नहीं होतीं। 10.0.0.128 से 10.0.1.63 तक की रेंज 10.0.0.128/25 और 10.0.1.0/26 है। कैलकुलेटर हर कदम पर समाने वाला सबसे बड़ा ब्लॉक लेता है, जिससे सबसे छोटी सूची बनती है (RFC 4632 का एग्रीगेशन)।
मर्ज की हुई CIDR सूची में क्या होता है?
हर वह पता जिसे कम से कम एक एंट्री ढकती है, सिर्फ़ एक बार: ओवरलैप और सटी हुई एंट्री जोड़ी जाती हैं, फिर हर जुड़ा हिस्सा सबसे कम CIDR ब्लॉकों में लिखा जाता है। इसे फ़ायरवॉल, सिक्योरिटी ग्रुप या अलाउ-लिस्ट में मूल लाइनों की जगह पेस्ट करें — मिलान वही रहेगा।
ओवरलैप कैसे दिखाए जाते हैं?
साझा पतों वाली एंट्री का हर जोड़ा साझा रेंज, उसके पतों की संख्या और इस बात के साथ दिखता है कि एक एंट्री दूसरी को समेटे है, दोनों एक ही रेंज हैं या ओवरलैप सिर्फ़ आंशिक है। फ़ालतू फ़ायरवॉल नियम और आपस में टकराने वाली अलाउ-लिस्ट लाइनें आम तौर पर सबसे पहले यहीं दिखती हैं।
कौन-से फ़ॉर्मेट पेस्ट कर सकते हैं?
हर लाइन में एक एंट्री: 10.0.0.0/24 या 10.0.0.0/255.255.255.0, 10.0.1.10 - 10.0.1.99 (लंबे डैश, "to" या ".." के साथ भी), छोटा रूप 10.0.1.10-99, 192.168.1.* जैसा IPv4 वाइल्डकार्ड और अकेले IPv4 या IPv6 पते। # के बाद का टेक्स्ट टिप्पणी माना जाता है। जो लाइनें पढ़ी नहीं जा सकतीं उनके नंबर बताए जाते हैं, और बाकी की गणना फिर भी होती है।
"सबसे छोटा अकेला ब्लॉक" क्या है?
वह एक CIDR ब्लॉक जिसमें सूची की सारी IPv4 (या IPv6) एंट्री आ जाएँ। वह तभी सटीक है जब एंट्री उसे पूरा भरें; वरना पेज बताता है कि वह आपकी एंट्री के बाहर के कितने पते भी ढकेगा — इसीलिए फ़ायरवॉल नियम में चौड़ा ब्लॉक लेना जोखिम भरा शॉर्टकट है।
तकनीकी नोट्स
CIDR ब्लॉक एक प्रीफ़िक्स है: वह अपने आकार के गुणज पर शुरू होता है और उसमें 2^(बिट − प्रीफ़िक्स) पते होते हैं (RFC 4632)। रेंज को ब्लॉकों में बदलने के लिए शुरुआती पते से वह सबसे बड़ा ब्लॉक लिया जाता है जो वहीं शुरू हो और अंत से आगे न जाए, फिर अगले पते से यही दोहराया जाता है; यह लालची नियम सबसे छोटी सटीक सूची देता है, जो किसी भी रेंज के लिए 2 × (बिट − 1) ब्लॉक से ज़्यादा नहीं होती।
मर्ज हर फ़ैमिली की एंट्री को उनके पहले पते से क्रम में लगाता है और जो एंट्री मौजूदा हिस्से के अंत के अगले पते पर या उससे पहले शुरू हो उसे जोड़ देता है, जिससे ओवरलैप और सटी हुई रेंज एक हिस्सा बन जाती हैं; फिर हर हिस्सा ब्लॉकों में बदला जाता है। ओवरलैप इसी क्रम से ढूँढे जाते हैं — हर एंट्री की तुलना सिर्फ़ उन्हीं एंट्री से होती है जो उसके ख़त्म होने से पहले शुरू होती हैं।
सबसे छोटा अकेला ब्लॉक मर्ज के बाद के सबसे निचले और सबसे ऊँचे पते का सबसे लंबा साझा प्रीफ़िक्स है। सारी गणना @engines/ip-calc और @engines/ip में BigInt से होती है, इसलिए IPv6 रेंज सटीक हैं; आगे शून्य वाला IPv4 पता (010) अस्वीकार होता है क्योंकि कुछ पार्सर उसे ऑक्टल पढ़ते हैं।
सीमाएँ और कार्यप्रणाली
हर बार 2,000 लाइनों तक, 200 ओवरलैप जोड़े और मर्ज की हुई सूची में 5,000 ब्लॉक तक; तालिकाओं के ऊपर की गिनती फिर भी पढ़ी गई हर चीज़ की होती है।
सिर्फ़ पते पढ़े जाते हैं: पेस्ट किए गए नियम के होस्टनेम, पोर्ट नंबर, प्रोटोकॉल और फ़ायरवॉल एक्शन समझे नहीं जाते और लाइन को अपठनीय बना देते हैं।
यह आपकी दी हुई सूची पर काम करता है: यह नहीं बता सकता कि वे पते इस्तेमाल में हैं, रूट होते हैं या किसी को आवंटित हैं।
सुरक्षा और गोपनीयता
सूची और खोजा गया पता आपके ब्राउज़र में ही प्रोसेस होते हैं, कहीं नहीं भेजे जाते, और कुछ भी स्टोर नहीं होता — फ़ायरवॉल नियम और अलाउ-लिस्ट बिना डिवाइस से बाहर गए पेस्ट किए जा सकते हैं।
संदर्भ
- RFC 4632: Classless Inter-domain Routing (CIDR)IPv4 नेटवर्क की प्रीफ़िक्स-लेंथ (/24) नोटेशन और यह नेटवर्क व होस्ट रेंज कैसे तय करती है।
- RFC 1918: Address Allocation for Private Internetsनिजी IPv4 रेंज (10/8, 172.16/12, 192.168/16) जो सार्वजनिक इंटरनेट पर कभी नहीं दिखतीं।
- RFC 4291: IP Version 6 Addressing ArchitectureIPv6 पते की नोटेशन, पते के प्रकार और विशेष पते (loopback, link-local, multicast)।