Come si dovrebbe scegliere una porta TCP / IP predefinita per un nuovo servizio?


Risposte:


49

Vai qui e scegli una porta con la descrizioneUnassigned


11
Stai suggerendo che scelga una porta sotto i 100?
mpen

3
Quale dovrei scegliere?
Owen,

1
Se tutti gli sviluppatori seguissero questa logica, significherebbe che tutti i nuovi servizi si riuniscono attorno alle poche porte non assegnate. Quale sarebbe la probabilità che un servizio sia in esecuzione su una porta assegnata rispetto a una porta non assegnata. (Scusa se non sto esponendo qualche segreto commerciale :)
hultqvist

1
Se siete alla ricerca di una porta per l'uso su una rete interna, allora perche questa risposta su una questione analoga: stackoverflow.com/questions/218839/...
adrianwadey

32

Primo passo: guarda l' elenco IANA :

Ci vedrai in coda alla lista

"Le porte dinamiche e / o private sono quelle comprese tra 49152 e 65535"

quindi quelle sarebbero le tue scommesse migliori, ma una volta che ne scegli una puoi sempre cercarla su google per vedere se c'è un'app abbastanza popolare che l'ha già "rivendicata"


8
Ma l'utilizzo di una porta dinamica non mi lascerebbe aperto a conflitti di porta intermittenti (anche se rari)? Forse è più sicuro usare una porta nell'intervallo registrato che non è assegnata o assegnata a un'app oscura.
Kevin Wong,

4
a meno che tu non registri esplicitamente la tua scelta di porta con IANA, esegui le stesse probabilità di conflitto usando un "UNASSIGNED", penso. In realtà, poiché ci sono molti non assegnati nella fascia bassa, quelli probabilmente sarebbero più probabili IMHO
curtisk

2
Inizia sempre con l'intervallo non assegnato, con l'opzione di una porta configurabile dall'utente / amministratore per gestire possibili conflitti. SOLO se la tua applicazione raggiunge un ampio utilizzo (pensa a BitTorrent, o qualche altro grande utilizzo) dovresti davvero considerare di richiedere una porta assegnata. Altrimenti resta fuori dall'intervallo assegnato. Se questo è per qualcosa di strettamente interno / personale, documenta semplicemente le porte in uso da vari servizi e dovresti stare bene finché le persone possono cercarle da qualche parte online. Pensa all'intervallo privato / dinamico simile agli IP non instradabili: sono perfetti per un uso piccolo / privato.
Jefflunt

3
Basta non commettere l'errore di presumere che la tua app abbia bisogno di una porta assegnata IANA perché pensi che la tua app esploderà durante l'utilizzo prima che lo faccia effettivamente. :)
jefflunt

7
Per quanto riguarda l'intervallo dinamico, penso che la domanda sul "conflitto" potrebbe essere stata chiedersi se, se un sistema operativo utilizza quell'intervallo per porte effimere (come dovrebbe), si sarebbe verificato un conflitto con la porta che hai scelto se il sistema operativo decide in modo casuale utilizzare quella porta per esempio per una connessione in uscita. (L'uso casuale di questo intervallo è a cosa servono le porte effimere, a quanto ho capito.) Vedi quest'altra domanda che afferma la preoccupazione in modo più dettagliato.
Garret Wilson

7

Se per ampiamente utilizzato intendi proteggerti da altre persone che lo utilizzeranno in futuro, puoi richiedere che venga contrassegnato come riservato per la tua app da IANA qui



2

Probabilmente vorrai evitare di utilizzare qualsiasi porta da questo elenco (Wikipedia).

Ne sceglierei solo uno e una volta che l'app viene utilizzata dalle masse, il numero di porta verrà riconosciuto e incluso in tali elenchi.


2

Come altri menzionano, controlla IANA.

Quindi controlla i tuoi sistemi locali / etc / services per vedere se ci sono alcune porte personalizzate già in uso.

E per favore, non codificarlo. Assicurati che sia configurabile, in qualche modo, in qualche modo, se non per altro vuoi essere in grado di avere più sviluppatori che utilizzano le proprie build localizzate contemporaneamente.


1

La scelta di uno non assegnato dall'elenco IANA di solito è sufficiente, ma se stai parlando di un prodotto rilasciato in commercio, dovresti davvero fare domanda allo IANA per ottenere uno assegnato a te. Notare che il processo per farlo è semplice ma lento; l'ultima volta che ne ho fatto domanda, ci è voluto un anno.


1

Se si tratta di un'applicazione che prevedi venga utilizzata ampiamente, registra un numero qui modo che nessun altro lo utilizzi.

Altrimenti, scegline uno inutilizzato a caso.

Il problema con l'utilizzo di uno nell'intervallo dinamico è che potrebbe non essere disponibile perché potrebbe essere utilizzato per un numero di porta dinamico.



-1

Bene, puoi fare riferimento ad alcuni numeri di porta comunemente usati qui e cercare di non usare quelli di nessun altro.

Se per "aperto al pubblico in generale" intendi aprire le porte sui tuoi sistemi, farei una chiacchierata con i tuoi amministratori di sistema su quali porte si sentono a proprio agio nel farlo.



-1

Scegli una porta predefinita che non interferisca con i daemon e i server più comuni. Assicurati inoltre che il numero di porta non sia elencato come vettore di attacco per alcuni virus: alcune aziende hanno politiche rigorose in cui bloccano tali porte a prescindere da cosa. Ultimo ma non meno importante, assicurati che il numero di porta sia configurabile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.