DevToys Web Pro iconDevToys Web ProBlog
Ohodnoťte nás:
Vyskúšajte rozšírenie prehliadača:

Generátor náhodných portov

  • Rozsah
    Počet
    39067Registered (IANA-assigned)
    23489Registered (IANA-assigned)
    63189Dynamic / Ephemeral
    14640Registered (IANA-assigned)
    1474Registered (IANA-assigned)
    Technické podrobnosti

    Ako funguje generátor náhodných portov

    Čo nástroj robí

    Generátor náhodných portov vyberá jedno alebo viac čísiel TCP/UDP portov z požadovaného rozsahu IANA pomocou crypto.getRandomValues() s nezaujatým odmietacím vzorkovaním. Predvolene sa vyhýba dobre známym portom aj kurátorovanému zoznamu široko používaných vývojových portov (3000, 8080, 5432, 6379 atď.), takže vygenerované čísla sú okamžite použiteľné pre nové lokálne služby.

    Bežné prípady použitia pre vývojárov

    Vývojári, ktorí spúšťajú nové mikroservisy, docker-compose stacky alebo dočasné testovacie prostredia, používajú tento nástroj na výber portov bez konfliktov bez premýšľania. SRE tímy prideľujú porty pre nové interné služby bez manuálneho prehľadávania tabuliek IANA. „Ephemeral“ rozsah je ideálny pre klientské TCP testovacie harnessy, ktoré potrebujú krátkodobé sockety zodpovedajúce správaniu produkčného jadra.

    Dátové formáty, typy alebo varianty

    K dispozícii sú tri preddefinované rozsahy: Well-known (1–1023), Registered / Unprivileged (1024–49151) a Dynamic / Ephemeral (49152–65535). Každé vygenerované číslo je označené svojou klasifikáciou. Zoznam „avoid common ports“ pokrýva HTTP/HTTPS, SSH, bežné databázové porty, bežné vývojové servery, fronty správ a štandardné cache služby.

    Bežné úskalia a okrajové prípady

    Náhodné prideľovanie portov nekontroluje, či je port na vašom počítači skutočne voľný — to vyžaduje pokus o bind na úrovni OS. Zoznam „vyhnúť sa bežným portom“ je kurátorovaný, nie vyčerpávajúci; niektoré odvetvovo špecifické predvolené hodnoty (Cassandra 9042, Elasticsearch 9300 atď.) sú označené, no vlastné interné služby sa stále môžu biť. Ak prvý výber narazí na lokálny konflikt, vygenerujte novú dávku.

    Kedy použiť tento nástroj vs. kód

    Použite nástroj v prehliadači pri konfigurácii jednorazovej služby alebo pri písaní ukážky. Pri automatizácii uprednostnite, aby port pridelil OS (bind na port 0 a následne prečítanie zvolenej hodnoty) — to zaručí, že port je skutočne voľný a vyhne sa preteku medzi náhodným výberom a bindom.