DevToys Web Pro iconDevToys Web Proब्लॉग
हमें रेट करें:
ब्राउज़र एक्सटेंशन आज़माएँ:

रैंडम पोर्ट जनरेटर

  • रेंज
    संख्या
    50510Dynamic / Ephemeral
    5606Registered (IANA-assigned)
    47419Registered (IANA-assigned)
    43348Registered (IANA-assigned)
    63076Dynamic / Ephemeral
    तकनीकी विवरण

    रैंडम पोर्ट जनरेटर कैसे काम करता है

    यह टूल क्या करता है

    रैंडम पोर्ट जनरेटर अनुरोधित IANA रेंज से एक या अधिक TCP/UDP पोर्ट नंबर चुनता है, जिसमें crypto.getRandomValues() और निष्पक्ष rejection sampling का उपयोग होता है। डिफ़ॉल्ट रूप से यह well-known पोर्ट्स और व्यापक रूप से उपयोग होने वाले डेवलपमेंट पोर्ट्स (3000, 8080, 5432, 6379, आदि) की एक क्यूरेटेड सूची—दोनों से बचता है, ताकि जनरेट किए गए नंबर नए लोकल सर्विसेज़ के लिए तुरंत उपयोगी हों।

    डेवलपर्स के सामान्य उपयोग मामले

    नए माइक्रोसर्विसेज़, docker-compose स्टैक्स, या ephemeral टेस्ट एनवायरनमेंट्स स्पिन-अप करने वाले डेवलपर्स बिना सोचे-समझे कॉन्फ़्लिक्ट-फ्री पोर्ट चुनने के लिए इस टूल का उपयोग करते हैं। SREs IANA टेबल्स को मैन्युअली स्कैन किए बिना नए आंतरिक सर्विसेज़ के लिए पोर्ट्स आवंटित करते हैं। 'ephemeral' रेंज क्लाइंट-साइड TCP टेस्ट हार्नेस के लिए आदर्श है जिन्हें प्रोडक्शन कर्नेल व्यवहार से मेल खाते अल्पकालिक सॉकेट्स चाहिए।

    डेटा फ़ॉर्मैट्स, टाइप्स, या वैरिएंट्स

    तीन पूर्वनिर्धारित रेंज उपलब्ध हैं: Well-known (1–1023), Registered / Unprivileged (1024–49151), और Dynamic / Ephemeral (49152–65535)। प्रत्येक जनरेट किए गए नंबर के साथ उसका वर्गीकरण (classification) भी दर्शाया जाता है। avoid-common-ports सूची में HTTP/HTTPS, SSH, सामान्य डेटाबेस पोर्ट्स, सामान्य dev सर्वर्स, मैसेज क्यूज़, और मानक कैश सर्विसेज़ शामिल हैं।

    सामान्य समस्याएँ और किनारी मामले

    रैंडम पोर्ट आवंटन यह नहीं जाँचता कि पोर्ट वास्तव में आपकी मशीन पर खाली है या नहीं — इसके लिए OS-स्तरीय bind प्रयास आवश्यक होता है। 'avoid common ports' सूची क्यूरेटेड है, पूर्ण नहीं; कुछ उद्योग-विशिष्ट डिफ़ॉल्ट्स (Cassandra 9042, Elasticsearch 9300, आदि) फ़्लैग किए जाते हैं, लेकिन कस्टम आंतरिक सर्विसेज़ फिर भी टकरा सकती हैं। यदि पहली पसंद किसी लोकल चीज़ से कॉन्फ़्लिक्ट करे, तो एक नया बैच जनरेट करें।

    यह टूल बनाम कोड कब उपयोग करें

    एक-बार के सर्विस को कॉन्फ़िगर करते समय या कोई सैंपल लिखते समय ब्राउज़र टूल का उपयोग करें। ऑटोमेशन में, OS से पोर्ट असाइन करवाना बेहतर है (पोर्ट 0 पर bind करें और चुना गया मान पढ़ लें) — इससे यह सुनिश्चित होता है कि पोर्ट वास्तव में खाली है और रैंडम चयन व bind के बीच किसी भी रेस से बचा जा सकता है।