Prievadas 0 turi ypatingą reikšmę tinklo programavimui, ypač Unix OS, kai kalbama apie lizdų programavimą, kai prievadas naudojamas sistemai skirtų dinaminių prievadų užklausai. 0 prievadas yra pakaitos simbolių prievadas, kuris nurodo sistemai rasti tinkamą prievado numerį.
Skirtingai nuo daugelio prievadų numerių, 0 prievadas yra rezervuotas prievadas TCP/IP tinkle, tai reiškia, kad jis neturėtų būti naudojamas TCP arba UDP pranešimuose. TCP ir UDP tinklo prievadai svyruoja nuo nulio iki 65535. Prievadų numeriai nuo nulio iki 1023 yra apibrėžiami kaip trumpalaikiai prievadai, sistemos prievadai arba gerai žinomi prievadai. Interneto priskirtų numerių institucija (IANA) tvarko oficialų šių prievadų numerių numatomo naudojimo internete sąrašą, o sistemos prievadas 0 neturi būti naudojamas.
Kaip TCP/UDP prievadas 0 veikia tinklo programavime
Konfigūruojant naują tinklo lizdo ryšį, reikia, kad vienas prievado numeris būtų priskirtas tiek š altinio, tiek paskirties pusėje. TCP arba UDP pranešimuose, kuriuos siunčia š altinis (š altinis), yra abu prievadų numeriai, kad pranešimo gavėjas (paskirties vieta) galėtų išsiųsti atsakymo pranešimus į tinkamą protokolo galinį tašką.
IANA iš anksto paskyrė priskirtus sistemos prievadus pagrindinėms interneto programoms, pvz., žiniatinklio serveriams (80 prievadas), tačiau daugelis TCP ir UDP tinklo programų neturi savo sistemos prievado ir kiekvieną kartą paleidžiant turi gauti jį iš savo įrenginio operacinės sistemos..
Norėdami priskirti š altinio prievado numerį, programos iškviečia TCP/IP tinklo funkcijas, pvz., bind(), kad užklaustų. Programa gali pateikti fiksuotą (užkoduotą) numerį bind(), jei pageidauja konkretaus numerio, tačiau tokia užklausa gali nepavykti, nes šiuo metu jį gali naudoti kita sistemoje veikianti programa.
Arba jis gali pateikti 0 prievadą to bind() kaip ryšio parametrą. Tai suaktyvina operacinę sistemą automatiškai ieškoti ir grąžinti tinkamą prieinamą prievadą TCP/IP dinaminio prievado numerių diapazone.
Programai suteikiamas ne 0 prievadas, o kitas dinaminis prievadas. Šio programavimo privalumas yra efektyvumas. Vietoj to, kad kiekviena programa įdiegtų ir paleistų kodą, kad išbandytų kelis prievadus, kol gaus tinkamą prievadą, programos priklauso nuo operacinės sistemos.
Unix, Windows ir kitos operacinės sistemos skiriasi 0 prievado tvarkymu, tačiau galioja ta pati bendra taisyklė.
0 prievadas ir tinklo sauga
Tinklo srautas, siunčiamas internetu prie 0 prievado besiklausantiems pagrindiniams kompiuteriams, gali būti generuojamas iš tinklo užpuolikų arba netyčia netinkamai užprogramuotų programų. Atsakymo pranešimai, kuriuos prieglobos generuoja reaguodami į 0 prievado srautą, padeda užpuolikams sužinoti tų įrenginių elgesį ir galimus tinklo pažeidžiamumus.
Daugelis interneto paslaugų teikėjų (IPT) blokuoja srautą per 0 prievadą – tiek gaunamus, tiek siunčiamus pranešimus, kad apsisaugotų nuo šių išnaudojimų.
DUK
Kas yra prievadų numeriai?
Prievadų numeriai, naudojami TCP/IP tinklo ryšiams, veikia kaip adreso informacija, identifikuojanti pranešimo siuntėjus ir gavėjus. Prievado numeriai leidžia įvairioms to paties tinklo programoms tuo pačiu metu dalytis ištekliais.
Kaip rasti prievadų numerius?
Norėdami rasti konkretaus IP adreso prievado numerį, eikite į komandų eilutę, įveskite netstat -a, tada paspauskite Enter. Pamatysite aktyvių TCP jungčių sąrašą kartu su IP adresais ir prievadų numeriais, atskirtais dvitaškiu.
Ar galiu prisijungti prie 0 prievado?
Ne. Oficialiai 0 prievadas neegzistuoja ir prie jo prisijungti negalima, nes tai neteisingas prievado numeris. Tačiau galite siųsti interneto paketą į 0 prievadą ir iš jo taip pat, kaip darytumėte naudodami kitą prievado numerį.