DevToys Web Pro iconDevToys Web ProBlogg
Vurder oss:
Prøv nettleserutvidelsen:

Tilfeldig portgenerator

  • Område
    Antall
    55459Dynamic / Ephemeral
    4910Registered (IANA-assigned)
    29382Registered (IANA-assigned)
    6624Registered (IANA-assigned)
    33463Registered (IANA-assigned)
    Tekniske detaljer

    Slik fungerer generatoren for tilfeldige porter

    Hva verktøyet gjør

    Generatoren for tilfeldige porter velger ett eller flere TCP/UDP-portnumre fra det forespurte IANA-intervallet ved hjelp av crypto.getRandomValues() med ubiasert rejection sampling. Som standard unngår den både velkjente porter og en kuratert liste over mye brukte utviklingsporter (3000, 8080, 5432, 6379, osv.), slik at de genererte numrene er umiddelbart brukbare for nye lokale tjenester.

    Vanlige bruksområder for utviklere

    Utviklere som spinner opp nye mikrotjenester, docker-compose-stakker eller kortlivede testmiljøer bruker verktøyet til å velge konfliktfrie porter uten å tenke. SRE-er tildeler porter til nye interne tjenester uten å manuelt skanne IANA-tabeller. Det «ephemeral»-intervallet er ideelt for klient-side TCP-testharnesser som trenger kortlivede sockets som matcher produksjonskjernens oppførsel.

    Dataformater, typer eller varianter

    Tre forhåndsdefinerte intervaller er tilgjengelige: Well-known (1–1023), Registered / Unprivileged (1024–49151) og Dynamic / Ephemeral (49152–65535). Hvert genererte nummer er annotert med sin klassifisering. Listen over porter som skal unngås dekker HTTP/HTTPS, SSH, vanlige databaseporter, vanlige dev-servere, meldingskøer og standard cache-tjenester.

    Vanlige fallgruver og kanttilfeller

    Tilfeldig porttildeling sjekker ikke om porten faktisk er ledig på maskinen din — det krever et bind-forsøk på OS-nivå. Listen «unngå vanlige porter» er kuratert, ikke uttømmende; noen bransjespesifikke standarder (Cassandra 9042, Elasticsearch 9300, osv.) er flagget, men egendefinerte interne tjenester kan fortsatt kollidere. Generer en ny batch hvis første valg kolliderer med noe lokalt.

    Når du bør bruke dette verktøyet vs. kode

    Bruk nettleserverktøyet når du konfigurerer en engangstjeneste eller skriver et eksempel. I automatisering bør du heller be OS-et om å tildele en port (bind til port 0 og les tilbake den valgte verdien) — dette garanterer at porten faktisk er ledig og unngår enhver race mellom tilfeldig valg og bind.