Kas naudojamas 0 uoste?

"Port 0" nėra tikrasis prievado numeris, tačiau yra jo paskirtis

Skirtingai nuo daugelio uosto numerių , prievadas 0 yra rezervuotas uostas TCP / IP tinkluose, tai reiškia, kad jis neturėtų būti naudojamas TCP arba UDP pranešimuose.

Port 0 turi ypatingą reikšmę tinklo programavimui, ypač "Unix" lizdo programavimui, už sistemos paskirtų dinaminių uostų užklausimą. Port nulis yra kaip pakaitos uostas, kuris nurodo sistemai rasti tinkamą prievado numerį.

Tinklo uostai TCP ir UDP diapazone nuo nulio iki 65535. Port numeriai nuo nulio iki 1023 yra apibrėžiami kaip sistemos uostai arba gerai žinomi uostai. Internetinių paskyrimų skaičiavimo tarnyba (IANA) turi oficialų sąrašą apie numatomą šių prievadų numerių naudojimą internete, o sistemos prievadas 0 nenaudojamas.

Kaip veikia "Port 0" tinklo programavimas

Naujo tinklo lizdo sujungimo konfigūravimas reikalauja, kad vienas prievado numeris būtų paskirstytas tiek šaltinio, tiek paskirties pusėse. TCP arba UDP pranešimai, kuriuos siunčia iniciatorius (šaltinis), turi tiek porinių numerių, kad pranešimo gavėjas (paskirties vieta) gali išduoti atsakymo pranešimus į teisingą protokolą.

IANA iš anksto paskyrė numatytus 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ą, kai jie pradeda veikti, jie turi įsigyti vieną iš savo įrenginio operacinės sistemos .

Norėdami paskirstyti savo šaltinio prievado numerį, programos skambina TCP / IP tinklo funkcijomis, pavyzdžiui, bind (), kad užklausti vieną. Taikomoji programa gali pateikti fiksuotą (kietąjį kodą) numerį susieti (), jei jis nori prašyti konkretaus numerio, tačiau toks prašymas gali nepavykti, nes kai kuri kita veikianti programa sistemoje šiuo metu gali ją naudoti.

Arba jis gali pateikti prievadą 0 priskirti () kaip savo ryšio parametrą. Tai paskatina operacinę sistemą automatiškai ieškoti ir grąžinti tinkamą prieinamą prievadą TCP / IP dinaminio prievado numerio diapazone.

Atkreipkite dėmesį, kad paraiška iš tikrųjų nebus suteikta 0 prievadui, o kitam dinaminiam prievadui. Šios programavimo konvencijos pranašumas yra veiksmingumas. Vietoj to, kad kiekviena programa turi įdiegti ir paleisti kodą, kad bandytų kelis uostus, kol jie gaus galiojančią, programos gali pasikliauti operacine sistema.

"Unix", "Windows" ir kitos operacinės sistemos nežymiai skiriasi, kai tvarko "Port 0", tačiau taikoma ta pati bendra taisyklė.

"Port 0" ir "Network Security"

Tinklo eismas, siunčiamas visame internete, gali būti sugeneruotas iš tinklo užpuolikų arba netyčia užprogramuotas neteisingai. Atsakymų pranešimai, kuriuos žiniatinklio svetainės sukuria atsakydamos į uosto 0 srautą, gali padėti užpuolikams sužinoti daugiau apie šių įrenginių elgesį ir galimą tinklo pažeidžiamumą.

Daugelis interneto paslaugų teikėjų (IPT) blokuoja srautą 0 uoste (tiek gaunamus, tiek siunčiamus pranešimus), kad apsaugotų nuo šių piktnaudžiavimų.