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

StackOverflow https://stackoverflow.com/questions/133879

  •  02-07-2019
  •  | 
  •  

Domanda

Quando si sviluppa un'app che ascolterà su una porta TCP / IP, come si può fare per selezionare una porta predefinita? Supponiamo che questa app verrà installata su molti computer e che si desideri evitare conflitti di porte.

È stato utile?

Soluzione

Vai qui e scegli una porta con la descrizione Unassigned

Altri suggerimenti

Primo passo: guarda Elenco IANA :

Lì vedrai alla fine dell'elenco

" Le porte dinamiche e / o private sono quelle da 49152 a 65535 "

quindi quelle sarebbero le tue scommesse migliori, ma una volta che ne scegli una potresti sempre cercarla su Google per vedere se c'è un'app abbastanza popolare che ha già "rivendicato". it

Se ampiamente utilizzato, vuoi dire che vuoi proteggerlo da altre persone che lo usano in futuro, puoi richiedere di averlo contrassegnato come riservato alla tua app da IANA qui

L'elenco più completo di numeri di porta IANA ufficiali e numeri di porta non ufficiali che conosco è nmap-services .

Probabilmente vorresti evitare di usare qualsiasi porta da questo elenco (Wikipedia).

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

Come altri citano, 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 per nessun altro motivo vuoi avere più sviluppatori che usano le loro build localizzate allo stesso tempo.

Usa l'elenco iana. Scarica il file CSV da:

https: // www .iana.org / incarichi / service-nomi-port-numeri / service-nomi-port-numbers.csv

e usa questo script di shell per cercare porte non registrate:

for port in {N..M}; do if ! grep -q $port service-names-port-numbers.csv; then echo $port;fi; done;

e inserisci 2 numeri anziché N e M.

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

Se questo è per un'applicazione che ti aspetti di essere ampiamente utilizzata, registra un numero qui in modo che nessun altro utilizzi esso.

Altrimenti, basta sceglierne 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.

Bene, puoi fare riferimento ad alcuni numeri di porta comunemente usati qui e cercare di non usa qualcun altro.

Se entro " aperto al pubblico in generale " vuoi dire che stai aprendo le porte sui tuoi sistemi, farei una chiacchierata con gli amministratori di sistema su quali porte si sentono a proprio agio nel farlo.

Scegli un numero che non sia molto comune

Scegli una porta predefinita che non interferisca con i demoni e i server più comuni. Assicurati anche che il numero di porta non sia elencato come vettore di attacco per alcuni virus - alcune aziende hanno rigide politiche in cui bloccano tali porte, non importa quale. Ultimo ma non meno importante, assicurati che il numero di porta sia configurabile.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top