Na čo sa používa port 0?

Port 0 nie je skutočné číslo portu, ale na to je účel

Na rozdiel od väčšiny čísel portov je port 0 rezervovaným portom v sieťach TCP / IP , čo znamená, že by sa nemal používať v TCP alebo UDP správach.

Port 0 má mimoriadny význam pri programovaní v sieti , predovšetkým pri programovaní Unix socket, pre vyžiadanie dynamických portov pridelených systémom. Portová nula je ako zástupný znak, ktorý informuje systém o nájdení vhodného čísla portu.

Sieťové porty v rozsahu TCP a UDP od nuly až po 65535. Čísla portov v rozsahu od nuly do 1023 sú definované ako systémové porty alebo dobre známe porty. Úradu pre internetové prideľovanie čísiel (IANA) udržiava oficiálny zoznam zamýšľaného použitia týchto čísiel portov na internete a systémový port 0 sa nepoužíva.

Ako port 0 funguje v sieťovom programovaní

Konfigurácia nového pripojenia sieťovej zásuvky vyžaduje, aby bolo pridelené jedno číslo portu na zdrojovej aj cieľovej strane. TCP alebo UDP správy odoslané pôvodcom (zdrojom) obsahujú obe čísla portov tak, aby príjemca správy (cieľ) mohol vydávať správy odpovedí na správny koncový bod protokolu.

IANA má vopred priradené určené systémové porty pre základné internetové aplikácie, ako sú webové servery (port 80), ale mnohé sieťové aplikácie TCP a UDP nemajú vlastný systémový port a musia získať operačný systém svojho zariadenia vždy, keď začnú bežať.

Ak chcete prideliť číslo svojho zdrojového portu, aplikácie volajú sieťové funkcie TCP / IP ako bind (), aby si ich vyžiadali. Aplikácia môže poskytnúť pevný (pevný kód) číslo na viazanie (), ak uprednostňuje požadovanie konkrétneho čísla, ale takáto žiadosť môže zlyhať, pretože v súčasnosti ju môže používať iná bežiaca aplikácia v systéme.

Alternatívne môže namiesto toho poskytnúť port 0 na viazanie () ako parameter pripojenia. To spúšťa operačný systém tak, aby automaticky vyhľadával a vrátil vhodný dostupný port v rozsahu čísel dynamického portu TCP / IP.

Všimnite si, že aplikácii sa skutočne neudelí port 0, ale skôr niektorý iný dynamický port. Výhodou tejto programovej konvencie je efektívnosť. Namiesto toho, aby každá aplikácia museli implementovať a spustiť kód pre skúšanie viacerých portov, kým nezískali platnú, aplikácie sa môžu spoľahnúť na operačný systém, aby tak urobili.

Systémy Unix, Windows a iné operačné systémy sa pri používaní portu 0 mierne líšia, ale platí rovnaká všeobecná konvencia.

Port 0 a zabezpečenie siete

Sieťový prenos odosielaný cez internet hostiteľom počúvaním na portu 0 môže byť generovaný sieťovými útočníkmi alebo náhodou nesprávne naprogramovanými aplikáciami. Správy odpovedí, ktoré hostiteľské počítače vygenerujú v reakcii na návštevnosť portu 0, môžu útočníkom pomôcť získať viac informácií o správaní a možných sieťových zraniteľnosti týchto zariadení.

Mnohí poskytovatelia internetových služieb (ISP) blokujú návštevnosť portu 0 (prichádzajúce aj odchádzajúce správy), aby sa chránili pred týmito zneužitiami.