Indirizzi IP e porte come funziona una rete Networking Porte TCP e UDP
Come funziuonano le porte con gli indirizzi IP, parliamo di Networking Porte TCP e UDP.
Premesso che ogni macchina su Internet è assegnato un numero univoco, chiamato indirizzo IP (interner protocol). Senza un indirizzo IP univoco sulla macchina, non sarà possibile comunicare con altri dispositivi, utenti e computer su Internet. Puoi paragonare per facilità il tuo indirizzo IP come se fosse un numero di telefono, ognuno dei quali è unico e utilizzato per identificare un modo per raggiungere te e solo te.
Esistono due tipi di indirizzi IP che possono essere utilizzati in una rete. Il primo, e la versione per la quale Internet e la maggior parte dei router sono attualmente configurati, è IPv4 o Internet Protocol versione 4. Questa versione utilizza indirizzi a 32 bit, che limita la quantità di indirizzi a 4.294.967.296 possibili indirizzi univoci. Alcuni di questi indirizzi, circa 290 milioni, sono riservati anche a scopi speciali. A causa della crescita popolare di Internet, vi è stata la preoccupazione che il pool di possibili indirizzi si sarebbe esaurito nel prossimo futuro. Con questo in mente, è stata sviluppata una nuova versione di indirizzi IP chiamata IPv6, o Internet Protocol versione 6, che cambierebbe la dimensione dell’indirizzo dall’indirizzo a 32 bit a quello a 128 bit. Questa modifica consentirebbe generose allocazioni di indirizzi IP alle reti senza alcun problema prevedibile con la quantità di indirizzi disponibili. Per utilizzare gli indirizzi IPv6, tuttavia, i router e l’hardware esistenti dovrebbero essere aggiornati o configurati per utilizzare questa nuova versione degli indirizzi IP.
Parliamo adesso Networking Porte TCP e UDP e come funzionano.
I dispositivi e i computer collegati a Internet utilizzano un protocollo chiamato TCP / IP per comunicare tra loro. Quando un computer da Catania desidera inviare una parte di dati a un computer a Los Angeles, deve conoscere l’indirizzo IP di destinazione a cui desidera inviare le informazioni. Tali informazioni vengono inviate più spesso tramite due metodi, UDP e TCP.
TCP sta per Transmission Control Protocol. Utilizzando questo metodo, il computer che invia i dati si collega direttamente al computer a cui sta inviando i dati e rimane connesso per la durata del trasferimento. Con questo metodo, i due computer possono garantire che i dati siano arrivati in modo sicuro e corretto e quindi disconnettere la connessione. Questo metodo di trasferimento dei dati tende ad essere più rapido e affidabile, ma comporta un carico maggiore sul computer in quanto deve monitorare la connessione e i dati che lo attraversano. Un confronto reale con questo metodo sarebbe quello di prendere il telefono e chiamare un amico. Hai una conversazione e quando termina, entrambi riattaccano, rilasciando la connessione.
UDP sta per User Datagram Protocol. Usando questo metodo, il computer che invia i pacchetti di dati le informazioni in un piccolo pacchetto e le rilascia nella rete con la speranza che arrivino nel posto giusto. Ciò significa che UDP non si collega direttamente al computer ricevente come fa TCP, ma piuttosto invia i dati e si affida ai dispositivi tra il computer di invio e il computer di ricezione per ottenere i dati dove dovrebbero andare correttamente. Questo metodo di trasmissione non fornisce alcuna garanzia che i dati inviati raggiungeranno mai la loro destinazione. D’altra parte, questo metodo di trasmissione ha un sovraccarico molto basso ed è quindi molto popolare da usare per servizi che non sono così importanti. Un confronto che puoi usare per questo metodo è il semplice vecchio servizio postale non tracciabile. Metti la tua posta nella casella di posta e speri che il servizio postale la porti nella posizione corretta. Il più delle volte lo fanno, ma a volte si perde lungo la strada.
Ora che hai capito cosa sono le porte TCP e UDP, possiamo iniziare a discutere in dettaglio le porte TCP e UDP. Passiamo alla sezione successiva in cui possiamo descrivere meglio il concetto di porte.
Networking Porte TCP e UDP
Come sapete, ad ogni computer o dispositivo su Internet deve essere assegnato un numero univoco chiamato indirizzo IP. Questo indirizzo IP viene utilizzato per riconoscere il tuo particolare computer tra i milioni di altri computer connessi a Internet. Quando le informazioni vengono inviate tramite Internet al computer in che modo il computer accetta tali informazioni? Accetta tali informazioni utilizzando le porte TCP o UDP.
Un modo semplice per capire le porte è immaginare che il tuo indirizzo IP sia una scatola di cavi e le porte sono i diversi canali su quella scatola di cavi. La società via cavo sa come inviare il cavo al box via cavo in base a un numero seriale univoco associato a quel box (indirizzo IP) e quindi si ricevono i singoli spettacoli su canali diversi (porte).
Le porte Porte TCP e UDP funzionano allo stesso modo. Hai un indirizzo IP e quindi molte Porte TCP e UDP su quell’indirizzo IP. Quando dico molti, intendo molti. Puoi avere un totale di 65.535 porte TCP e altre 65.535 porte UDP. Quando un programma sul tuo computer invia o riceve dati su Internet, li invia a un indirizzo IP e a una porta specifica sul computer remoto e riceve i dati su una porta di solito casuale sul proprio computer. Se utilizza il protocollo TCP per inviare e ricevere i dati, si collegherà e si legherà a una porta TCP. Se utilizza il protocollo UDP per inviare e ricevere dati, utilizzerà una porta UDP. La Figura di seguito, è una rappresentazione di un indirizzo IP suddiviso nelle sue numerose porte TCP e UDP. Notare che una volta che un’applicazione si lega a una porta particolare, quella porta non può essere utilizzata da nessun’altra applicazione. È il primo arrivato, il primo servito.
<————————————192.168.1.100————————————>
0 | 1 | 2 | 3 | 4 | 5 | .. | .. | .. | .. | .. | 65531 | 65532 | 65 | 65534 | 65535 |
Networking Porte TCP e UDP
Tutto ciò probabilmente ti sembra poco chiaro, e non c’è nulla di sbagliato in questo, poiché si tratta di un concetto complicato da comprendere. Facciamo un esempio pratico, nel nostro esempio utilizzeremo i server Web poiché tutti sapete che un server Web è un computer che esegue un’applicazione che consente ad altri computer di connettersi ad esso e recuperare le pagine Web memorizzate lì.
Affinché un server Web accetti connessioni da computer remoti, come te stesso, deve associare l’applicazione del server Web a una porta locale. Utilizzerà quindi questa porta per ascoltare e accettare connessioni da computer remoti. I server Web in genere si collegano alla porta TCP 80 in HTTP o TCP 443 in HTTPS, quindi attenderanno e ascolteranno le connessioni dai dispositivi remoti. Una volta connesso, il dispositivo invierà le pagine Web richieste al dispositivo remoto e, una volta terminato, disconnetterà la connessione.
D’altra parte, se sei l’utente remoto che si connette a un server Web, funzionerebbe al contrario. Il browser Web selezionerebbe una porta TCP casuale da un determinato intervallo di numeri di porta e tenterà di connettersi alla porta 80 sull’indirizzo IP del server Web. Quando viene stabilita la connessione, il browser Web invierà la richiesta per una determinata pagina Web e la riceverà dal server Web. Quindi entrambi i computer disconnetteranno la connessione.
Ora, cosa succede se si desidera eseguire un server FTP, che è un server che consente di trasferire e ricevere file da computer remoti, sullo stesso server Web. I server FTP utilizzano le porte TCP 20 e 21 per inviare e ricevere informazioni, quindi non si verificheranno conflitti con il server Web in esecuzione sulla porta TCP 80. Pertanto, l’applicazione del server FTP all’avvio si legherà alle porte TCP 20 e 21 e attendere le connessioni per inviare e ricevere dati.
La maggior parte delle principali applicazioni ha una porta specifica su cui sono in ascolto e registra queste informazioni con un’organizzazione chiamata IANA. È possibile visualizzare un elenco di applicazioni e delle porte che utilizzano nel registro IANA . Con gli sviluppatori che registrano le porte utilizzate dalle loro applicazioni con IANA, le possibilità che due programmi tentino di utilizzare la stessa porta e quindi causino un conflitto diminuiranno.
Come funziona un firewall
Networking Porte TCP e UDP – Lista Porte TCP e UDP più conosciute
Porta | TCP | UDP | Nome | Descrizione |
---|---|---|---|---|
1 | ✔ | ✔ | tcpmux | TCP Port Multiplexer |
5 | ✔ | ✔ | rje | Remote Job Entry (Inserimento lavoro remoto) |
7 | ✔ | ✔ | echo | Servizio Echo |
9 | ✔ | ✔ | discard | Servizio zero a scopo di test |
11 | ✔ | ✔ | systat | Informazioni di sistema |
13 | ✔ | ✔ | daytime | Indicazioni di data e ora |
17 | ✔ | ✔ | qotd | Invia la citazione del giorno |
18 | ✔ | ✔ | msp | Trasmette messaggi di testo |
19 | ✔ | ✔ | chargen | Invia una stringa infinita |
20 | ✔ | ftp-data | Trasmissione di dati FTP | |
21 | ✔ | ✔ | ftp | Collegamento FTP |
22 | ✔ | ✔ | ssh | Secure Shell Service |
23 | ✔ | telnet | Servizio Telnet | |
25 | ✔ | smtp | Simple Mail Transfer Protocol | |
37 | ✔ | ✔ | time | Protocollo di tempo leggibile meccanicamente |
39 | ✔ | ✔ | rlp | Resource Location Protocol |
42 | ✔ | ✔ | nameserver | Servizio nome |
43 | ✔ | nicname | Servizio di directory WHOIS | |
49 | ✔ | ✔ | tacacs | Terminal Access Controller Access Control System |
50 | ✔ | ✔ | re-mail-ck | Remote Mail Checking |
53 | ✔ | ✔ | domain | Risoluzione nome tramite DNS |
67 | ✔ | bootps | Bootstrap Protocol Services | |
68 | ✔ | bootpc | Bootstrap Client | |
69 | ✔ | tftp | Trivial File Transfer Protocol | |
70 | ✔ | gopher | Ricerca di documenti | |
71 | ✔ | genius | Protocollo genio | |
79 | ✔ | finger | Fornisce informazioni di contatto degli utenti | |
80 | ✔ | http | Hypertext Transfer Protocol | |
81 | ✔ | Torpark: Onion-Routing (non ufficiale) | ||
82 | ✔ | Torpark: Control (non ufficiale) | ||
88 | ✔ | ✔ | kerberos | Sistema di autenticazione di rete |
101 | ✔ | hostname | NIC Host Name | |
102 | ✔ | Iso-tsap | ISO-TSAP-Protocol | |
105 | ✔ | ✔ | csnet-ns | Mailbox-Mailserver |
107 | ✔ | rtelnet | Remote Telnet | |
109 | ✔ | pop2 | Post Office Protocol v2 per la comunicazione e-mail | |
110 | ✔ | pop3 | Post Office Protocol v3 per la comunicazione e-mail | |
111 | ✔ | ✔ | sunrpc | Protocollo RPC per NFS |
113 | ✔ | auth | Servizio di autenticazione | |
115 | ✔ | sftp | Simple File Transfer Protocol (versione semplice di FTP) | |
117 | ✔ | uucp-path | Trasmissione di dati tra sistemi Unix | |
119 | ✔ | nntp | Trasmissione di messaggi in newsgroup | |
123 | ✔ | ntp | Servizio di sincronizzazione temporale | |
137 | ✔ | ✔ | netbios-ns | NETBIOS Name Service |
138 | ✔ | ✔ | netbios-dgm | NETBIOS Datagram Service |
139 | ✔ | ✔ | netbios-ssn | NETBIOS Session Service |
143 | ✔ | ✔ | imap | Internet Message Access Protocol per comunicazione e-mail |
161 | ✔ | snmp | Simple Network Management Protocol | |
162 | ✔ | ✔ | snmptrap | Simple Network Management Protocol Trap |
177 | ✔ | ✔ | xdmcp | X Display Manager |
179 | ✔ | bgp | Border Gateway Protocol | |
194 | ✔ | ✔ | irc | Internet Relay Chat |
199 | ✔ | ✔ | smux | SNMP UNIX Multiplexer |
201 | ✔ | ✔ | at-rtmp | AppleTalk Routing |
209 | ✔ | ✔ | qmtp | Quick Mail Transfer Protocol |
210 | ✔ | ✔ | z39.50 | Sistema di informazioni bibliografiche |
213 | ✔ | ✔ | ipx | Internetwork Packet Exchange |
220 | ✔ | ✔ | imap3 | IMAP v3 per la comunicazione e-mail |
369 | ✔ | ✔ | rpc2portmap | Coda Filesystem Portmapper |
370 | ✔ | ✔ | codaauth2 | Coda Filesystem Authentication Service |
389 | ✔ | ✔ | ldap | Lightweight Directory Access Protocol |
427 | ✔ | ✔ | svrloc | Service Location Protocol |
443 | ✔ | https | HTTPS (HTTP tramite SSL/TLS) | |
444 | ✔ | ✔ | snpp | Simple Network Paging Protocol |
445 | ✔ | microsoft-ds | SMB tramite TCP/IP | |
464 | ✔ | ✔ | kpasswd | Modifica password per Kerberos |
500 | ✔ | isakmp | Protocollo di sicurezza | |
512 | ✔ | exec | Remote Process Execution | |
512 | ✔ | comsat/biff | Client e server di posta | |
513 | ✔ | login | Accesso a computer remoto | |
513 | ✔ | who | Whod User Logging Daemon | |
514 | ✔ | shell | Remote Shell | |
514 | ✔ | syslog | Unix System Logging Service | |
515 | ✔ | printer | Servizi di stampa Line Printer Daemon | |
517 | ✔ | talk | Talk Remote Calling | |
518 | ✔ | ntalk | Network Talk | |
520 | ✔ | efs | Extended Filename Server | |
520 | ✔ | router | Routing Information Protocol | |
521 | ✔ | ripng | Routing Information Protocol per IPv6 | |
525 | ✔ | timed | Server dell’ora | |
530 | ✔ | ✔ | courier | Courier Remote Procedure Call |
531 | ✔ | ✔ | conference | Chat tramite AIM e IRC |
532 | ✔ | netnews | Netnews Newsgroup Service | |
533 | ✔ | netwall | Broadcast d’emergenza | |
540 | ✔ | uucp | Unix-to-Unix Copy Protocol | |
543 | ✔ | klogin | Kerberos v5 Remote Login | |
544 | ✔ | kshell | Kerberos v5 Remote Shell | |
546 | ✔ | ✔ | dhcpv6-client | DHCP v6 Client |
547 | ✔ | ✔ | dhcpv6-server | DHCP v6 Server |
548 | ✔ | afpovertcp | Apple Filing Protocol tramite TCP | |
554 | ✔ | ✔ | rtsp | Comando di streams |
556 | ✔ | remotefs | Remote Filesystem | |
563 | ✔ | ✔ | nntps | NNTP tramite SSL/TLS |
587 | ✔ | submission | Message Submission Agent | |
631 | ✔ | ✔ | ipp | Internet Printing Protocol |
631 | ✔ | ✔ | Common Unix Printing System (non ufficiale) | |
636 | ✔ | ✔ | ldaps | LDAP tramite SSL/TLS |
674 | ✔ | acap | Application Configuration Access Protocol | |
694 | ✔ | ✔ | ha-cluster | Servizio Heartbeat |
749 | ✔ | ✔ | kerberos-adm | Kerberos v5 Administration |
750 | ✔ | kerberos-iv | Kerberos v4 Services | |
873 | ✔ | rsync | Servizi di trasferimento file rsync | |
992 | ✔ | ✔ | telnets | Telnet tramite SSL/TLS |
993 | ✔ | imaps | IMAP tramite SSL/TLS | |
995 | ✔ | pop3s | POP3 tramite SSL/TLS |
Registered Ports
Porta | TCP | UDP | Nome | Descrizione |
---|---|---|---|---|
1080 | ✔ | socks | SOCKS Proxy | |
1433 | ✔ | ms-sql-s | Microsoft SQL Server | |
1434 | ✔ | ✔ | ms-sql-m | Microsoft SQL Monitor |
1494 | ✔ | ica | Citrix ICA Client | |
1512 | ✔ | ✔ | wins | Windows Internet Name Service |
1524 | ✔ | ✔ | ingreslock | Ingres DBMS |
1701 | ✔ | l2tp | Layer 2 Tunneling Protocol / Layer 2 Forwarding | |
1719 | ✔ | h323gatestat | H.323 | |
1720 | ✔ | h323hostcall | H.323 | |
1812 | ✔ | ✔ | radius | Autenticazione RADIUS |
1813 | ✔ | ✔ | radius-acct | Accesso RADIUS |
1985 | ✔ | hsrp | Cisco HSRP | |
2008 | ✔ | Teamspeak 3 Accounting (non ufficiale) | ||
2010 | ✔ | Teamspeak 3 Weblist (non ufficiale) | ||
2049 | ✔ | ✔ | nfs | Network File System |
2102 | ✔ | ✔ | zephyr-srv | Zephyr Server |
2103 | ✔ | ✔ | zephyr-clt | Zephyr Client |
2104 | ✔ | ✔ | zephyr-hm | Zephyr Host Manager |
2401 | ✔ | cvspserver | Concurrent Versions System | |
2809 | ✔ | ✔ | corbaloc | Common Object Request Broker Architecture |
3306 | ✔ | ✔ | mysql | Servizio di banca dati MySQL (anche per MariaDB) |
4321 | ✔ | rwhois | Remote Whois Service | |
5999 | ✔ | cvsup | CVSup | |
6000 | ✔ | X11 | X Windows System Services | |
11371 | ✔ | pgpkeyserver | Keyserver pubblico per PGP | |
13720 | ✔ | ✔ | bprd | Symantec/Veritas NetBackup |
13721 | ✔ | ✔ | bpdbm | Symantec/Veritas Database Manager |
13724 | ✔ | ✔ | vnetd | Symantec/Veritas Network Utility |
13782 | ✔ | ✔ | bpcd | Symantec/Veritas NetBackup |
13783 | ✔ | ✔ | vopied | Symantec/Veritas VOPIE |
22273 | ✔ | ✔ | wnn6 | Conversione Kana/Kanji |
23399 | Skype (non ufficiale) | |||
25565 | ✔ | Minecraft | ||
26000 | ✔ | ✔ | quake | Quake e altri giochi a più giocatori |
27017 | MongoDB | |||
33434 | ✔ | ✔ | traceroute | Tracking di rete |