Порт 0 има специално значение в мрежовото програмиране, особено в Unix OS, когато става въпрос за програмиране на сокет, където портът се използва за заявяване на разпределени от системата динамични портове. Порт 0 е порт със заместващ знак, който казва на системата да намери подходящ номер на порт.
За разлика от повечето номера на портове, порт 0 е запазен порт в TCP/IP мрежи, което означава, че не трябва да се използва в TCP или UDP съобщения. Мрежовите портове в TCP и UDP варират от номер нула до 65535. Номерата на портове в диапазона между нула и 1023 се определят като неефемерни портове, системни портове или добре познати портове. Органът за присвоени номера в Интернет (IANA) поддържа an официална регистрация от предвиденото използване на тези номера на портове в интернет и системен порт 0 не трябва да се използва.
как да видите коментари в приложението YouTube за Android
Как работи TCP/UDP порт 0 в мрежовото програмиране
Jetta Productions / Getty Images
Конфигурирането на нова връзка с мрежов сокет изисква един номер на порт да бъде разпределен както от страната на източника, така и от страната на дестинацията. TCP или UDP съобщенията, изпратени от инициатора (източника), съдържат и двата номера на порта, така че получателят на съобщението (дестинацията) да може да издава съобщения за отговор към правилната крайна точка на протокола.
IANA е разпределила предварително определени системни портове за основни интернет приложения като уеб сървъри (порт 80), но много TCP и UDP мрежови приложения нямат собствен системен порт и трябва да получат такъв от устройството си операционна система всеки път, когато бягат.
chromecast има нужда от wifi за огледало
За да разпределят своя номер на порт източник, приложенията извикват TCP/IP мрежови функции като bind(), за да поискат такъв. Приложението може да предостави фиксиран (твърдо кодиран) номер на bind(), ако предпочитат да поискат конкретен номер, но такава заявка може да се провали, защото друго приложение, работещо в системата, може в момента да го използва.
Алтернативно, той може да предостави порт 0 на bind() като свой параметър за връзка. Това задейства операционната система автоматично да търси и връща подходящ наличен порт в динамичния обхват на TCP/IP номера на порта.
Приложението не получава порт 0, а по-скоро някакъв друг динамичен порт. Предимството на тази конвенция за програмиране е ефективността. Вместо всяко приложение да внедрява и изпълнява код, за да изпробва множество портове, докато получи валиден, приложенията разчитат на операционната система.
Unix, Windows и други операционни системи се различават по отношение на обработката на порт 0, но се прилага същата обща конвенция.
как да вмъкнете квадратчета за отметка в google docs -
Порт 0 и мрежова сигурност
Мрежовият трафик, изпратен през интернет към хостове, слушащи на порт 0, може да бъде генериран от мрежови нападатели или случайно от приложения, програмирани неправилно. Отговорните съобщения, които хостовете генерират в отговор на трафика на порт 0, помагат на атакуващите да научат поведението и потенциалните мрежови уязвимости на тези устройства.
много доставчици на интернет услуги (ISP) блокират трафика на порт 0, както входящи, така и изходящи съобщения, за да се предпазят от тези експлойти.
ЧЗВ- Какво представляват номерата на портовете?
Номерата на портовете, използвани за TCP/IP мрежови връзки, действат като адресна информация, идентифицирайки подателите и получателите на съобщението. Номерата на портовете позволяват на различни приложения в една и съща мрежа да споделят ресурси едновременно.
- Как да намеря номера на портове?
За да намерите номера на порта на конкретен IP адрес, отидете на командния ред , Тип netstat -a , след това натиснете Въведете . Ще видите списък с активни TCP връзки заедно с IP адреси и номера на портове, разделени с двоеточие.
- Мога ли да се свържа към порт 0?
Не. Официално порт 0 не съществува и не можете да се свържете с него, тъй като е невалиден номер на порт. Можете обаче да изпратите интернет пакет до и от порт 0 по същия начин, както бихте направили с друг номер на порт.