Wiki source code of 01.09. Portu numuri

Last modified by Valdis Vītoliņš on 2018/01/15 21:44

Show last authors
1 = 01.09. Portu numuri =
2
3 Mēs teicām, ka TCP un UDP identificē lietotnes, izmantojot 16-bitu portu numurus. Kā šie portu numuri tiek izraudzīti? Serveri parasti ir pazīstami pēc to labi zināmajiem portu numuriem. Piemēram, katra TCP/IP implementācija, kura nodrošina FTP servisu, to nodrošina uz TCP 21. porta. Katrs Telnet serveris ir uz TCP 23. porta. Katra TFTP (//Triviālais Failu Pārsūtīšanas Protokols//) ir uz UDP 69. porta. Šiem servisiem, kurus var nodrošināt jebkura TCP/IP implementācija var būt portu numuri starp 1 un 1023. Labi zināmos portus pārvalda //Interneta Piešķirto Numuru Institūcija// (IANA).
4
5 {{info}}
6 Līdz 1992.g. labi zināmie portu numuri bija starp 1 un 255. Porti starp 256 un 1023 parasti tika lietoti UNIX-specifiskiem servisiem, t.i. servisiem, kurus var atrast UNIX sistēmās, bet parasti ne uz citām operētājsistēmām. IANA tagad pārvalda portus starp 1 un 1023. Piemērs starpībai starp visā Internetā pazīstamu servisu un UNIX-specifisku servisu ir atšķirība starp ##telnet## un ##rlogin##. Abi ļauj mums ielogoties pa tīklu uz citu mītni. Telnet ir TCP/IP standarts ar labi zināmo porta numuru 23, ko var implementēt gandrīz uz ikvienas operētājsistēmas. Rlogin, no otras puses, bija sākotnēji izveidots Unix sistēmām (lai gan daudzas ne-UNIX sistēmas to arī piedāvā), tādēļ tam 1980-to gadu sākumā tika izraudzīts labi zināmais porta numurs 513.
7 {{/info}}
8
9 Klientam parasti ir vienalga, kuru porta numuru lietot savā galā. Vienīgais, kas jānodrošina, lai šis porta numurs būtu dotajā mītnē unikāls. Klienta porta numurus sauc par //gaistošiem// portiem (jeb efemerāliem, jeb īslaicīgiem). Tas tādēļ, ka klienta ports pastāv vienīgi tik ilgi, kamēr klientam, kurš to darbina ir nepieciešams konkrētais serviss, toties servisi parasti darbojas kamēr vien mītne ir ieslēgta.
10
11 Vairums TCP/IP implementāciju piešķir gaistošos portu numurus starp 1024 un 5000. Portu numuri virs 5000 ir domāti citiem servisiem (tiem, kuri nav pazīstami Internetā). Turpmāk grāmatā redzēsim vairākus piemērus, kā gaistošie porti tiek piešķirti.
12
13 {{info}}
14 Solaris 2.2 ir izņēmums. Pēc noklusēšanas gaistošie porti priekš TCP un UDP sākas no 32768. [[E.4.nodaļa>>App_E_06]] apraksta konfigurācijas īpatnības, ar kurām sistēmas administrators var izmainīt noklusētās vērtības.
15 {{/info}}
16
17 Labi zināmie portu numuri ir atrodami failā ##/etc/services## vairumā Unix sistēmu. Lai atrastu portu numurus Telnet serverim un DNS, varam izpildīt komandas:
18
19 {{code language="none"}}
20 sun % grep telnet /etc/services
21 telnet 23/tcp says it uses TCP port 23
22 sun % grep domain /etc/services
23 domain 53/udp
24 domain 53/tcp says it uses UDP port 53
25 and TCP port 53
26 {{/code}}
27
28 **Rezervētie porti**
29
30 UNIX'a sistēmās pastāv //rezervēto portu// jēdziens. Vienīgi process ar //superlietotāja// tiesībām var piešķirt sev rezervēto portu. Šie portu numuri ir intervālā starp 1 un 1023, un tos lieto dažas aplikācijas (konkrēti, Rlogin, [[26.2.nodaļa>>26_02]]) kā daļu autentifikācijas procesam starp serveri un klientu.