Skip to main content

10.2 Porty TCP a UDP

Každá bežiaca služba na serveri, ktorá chce poskytovať službu po sieti, musí umožniť klientom pripojenie. To dosiahne tým, že „počúva“ na konkrétnom porte - napríklad služba webového servera na TCP/80. Aby sa mohla nadviazať konverzácia / vytvoriť spojenie, klient sa pripája na tento konkrétny port, pričom i na jeho strane sa v klientskej aplikácii otvorí port, na ktorý potom budú chodiť odpovede. Na rovnakom serveri (na tej istej IP adrese) môže súčasne bežať iná služba, no tá počúva na inom porte - napríklad poštová služba na TCP/25.

Porty teda rozlišujú na jednej strane jednotlivé služby servera a na strane druhej zase klientske aplikácie. Nemusí sa jednať o server v zmysle vyhradeného počítača poskytujúceho služby - serverom môže byť aj akýkoľvek počítač poskytujúci ľubovoľnú službu v režime peer-to-peer (napríklad zdieľanie tlačiarne, či súborov), ale aj ľubovoľná aplikácia, ktorá umožňuje pripojenie klientov.

Čísla portov sú v TCP nezávislé od UDP (teda oba protokoly majú svojich 65536 portov) a je možné ich rozdeliť do troch rozsahov:

1. Dobre známe porty 0 až 1023: sú v ňom definované štandardné čísla portov (spravuje organizácia IANA) pre historicky najvýznamnejšie internetové služby, ako napríklad:

  • webový server HTTP(s): TCP/80, TCP/443 a s QUIC aj UDP/80, UDP/443;
  • DNS server: UDP/53 a TCP/53;
  • súborový server FTP: kontrolné spojenie TCP/21 (a spätné dátové spojenie TCP/20);
  • konzola cez telnet: TCP/23;
  • konzola cez SSH: TCP/22;
  • poštový server SMTP(s): TCP/25, TCP/465;
  • poštový server POP3(s): TCP/110, TCP/995;
  • poštový server IMAP4(s): TCP/143, TCP/993.

2. Registrované porty 1024 až 49151: ďalšie čísla portov, ktoré boli registrované v organizácii IANA.

3. Dynamické porty 49152 až 65535: využívajú sa na strane klienta pre identifikáciu konverzácie so serverom, a to za účelom prijatia odpovede - postupne sa recyklujú.

Príklad: Ak sa chce webový prehliadač z počítača 192.168.1.10 pripojiť na webovú službu servera 192.168.1.1, vytvorí sa spojenie napríklad zo 192.168.1.10:49152 (zdrojový soket) na 192.168.1.1:80 (cieľový soket) - túto dvojicu sieťových soketov nazývame soketový pár a identifikuje jednu konverzáciu.

Prehľad aktuálne nadviazaných spojení je možné vo Windows i v Linux zobraziť príkazom netstat, prípadne aj s otvorenými „počúvajúcimi“ sieťovými portami netstat -a. Vo Windows môžeme využiť aj Monitor prostriedkov.

Niektoré verzie Windows nerešpektovali rozsah dynamických portov a používali aj porty nižšie. Toto je možné preveriť príkazmi:

  • netsh int ipv4 show dynamicport tcp / netsh int ipv6 show dynamicport tcp
  • netsh int ipv4 show dynamicport udp / netsh int ipv6 show dynamicport udp

A prípadne zmeniť nastavenie:

  • netsh int ipv4 set dynamicport tcp start=49152 num=16384
    / netsh int ipv6 set dynamicport tcp start=49152 num=16384
  • netsh int ipv4 set dynamicport udp start=49152 num=16384
    / netsh int ipv6 set dynamicport udp start=49152 num=16384