Ինչի՞ համար է օգտագործվում Port 0-ը:

Բովանդակություն:

Ինչի՞ համար է օգտագործվում Port 0-ը:
Ինչի՞ համար է օգտագործվում Port 0-ը:
Anonim

Port 0-ը հատուկ նշանակություն ունի ցանցային ծրագրավորման մեջ, հատկապես Unix OS-ում, երբ խոսքը վերաբերում է վարդակից ծրագրավորմանը, որտեղ նավահանգիստն օգտագործվում է համակարգի կողմից հատկացված դինամիկ պորտեր պահանջելու համար: Նավահանգիստ 0-ը նիշերի միացք է, որը համակարգին ասում է գտնել համապատասխան պորտի համարը:

Ի տարբերություն նավահանգիստների շատերի, նավահանգիստ 0-ը վերապահված միացք է TCP/IP ցանցում, ինչը նշանակում է, որ այն չպետք է օգտագործվի TCP կամ UDP հաղորդագրություններում: Ցանցային նավահանգիստները TCP-ում և UDP-ում տատանվում են զրոյական թվից մինչև 65535: Զրո-ից մինչև 1023 միջակայքում գտնվող նավահանգիստների համարները սահմանվում են որպես ոչ վաղանցիկ պորտեր, համակարգի նավահանգիստներ կամ հայտնի պորտեր: Ինտերնետ նշանակված համարների մարմինը (IANA) պահպանում է ինտերնետում այս նավահանգիստների համարների ծրագրված օգտագործման պաշտոնական ցուցակը, և համակարգի 0 նավահանգիստը չպետք է օգտագործվի:

Ինչպես է աշխատում TCP/UDP պորտը ցանցային ծրագրավորման մեջ

Image
Image

Նոր ցանցային վարդակից կապը կարգավորելու համար պահանջվում է, որ մեկ պորտի համար հատկացվի ինչպես աղբյուրի, այնպես էլ նպատակակետի կողմերում: Ստեղծողի (աղբյուրի) կողմից ուղարկված TCP կամ UDP հաղորդագրությունները պարունակում են երկու պորտի համարներ, որպեսզի հաղորդագրության ստացողը (նպատակակետը) կարողանա պատասխան հաղորդագրություններ ուղարկել արձանագրության ճիշտ վերջնակետին:

IANA-ն նախապես հատկացրել է համակարգային պորտեր հիմնական ինտերնետային հավելվածների համար, ինչպիսիք են վեբ սերվերները (պորտ 80), սակայն շատ TCP և UDP ցանցային հավելվածներ չունեն իրենց սեփական համակարգի միացքը և ամեն անգամ գործարկվելիս պետք է ստանան իրենց սարքի օպերացիոն համակարգից մեկը:.

Աղբյուրային պորտի համարը հատկացնելու համար հավելվածները զանգահարում են TCP/IP ցանցի գործառույթներ, ինչպիսին է bind()-ը՝ մեկը պահանջելու համար: Հավելվածը կարող է տրամադրել ֆիքսված (կոշտ կոդավորված) համար bond()-ի համար, եթե նրանք նախընտրում են պահանջել որոշակի համար, բայց այդպիսի հարցումը կարող է ձախողվել, քանի որ համակարգում աշխատող մեկ այլ ծրագիր կարող է ներկայումս այն օգտագործել:

Այլընտրանքով, այն կարող է ապահովել 0 պորտը bind()-ին որպես կապի պարամետր: Դա ստիպում է օպերացիոն համակարգին ավտոմատ որոնել և վերադարձնել համապատասխան հասանելի պորտը TCP/IP դինամիկ պորտի համարի տիրույթում:

Հավելվածին տրվել է ոչ թե 0, այլ մի այլ դինամիկ պորտ: Ծրագրավորման այս կոնվենցիայի առավելությունը արդյունավետությունն է: Փոխարենը, որ յուրաքանչյուր հավելված ներդնի և գործարկի մի քանի նավահանգիստներ, քանի դեռ դրանք վավեր են, հավելվածները հիմնվում են օպերացիոն համակարգի վրա:

Unix-ը, Windows-ը և այլ օպերացիոն համակարգերը տարբերվում են 0-ի պորտի մշակման հարցում, սակայն գործում է նույն ընդհանուր պայմանը:

Port 0 և ցանցային անվտանգություն

Ցանցային տրաֆիկը, որն ուղարկվում է համացանցով դեպի 0 նավահանգիստ լսող հյուրընկալողներին, կարող է ստեղծվել ցանցային հարձակվողներից կամ պատահաբար սխալ ծրագրավորված հավելվածներից: Պատասխան հաղորդագրությունները, որոնք ստեղծում են հոսթները՝ ի պատասխան պորտ 0-ի տրաֆիկի, հարձակվողներին օգնում են իմանալ այդ սարքերի վարքը և ցանցի հնարավոր խոցելիությունները:

Ինտերնետ ծառայություններ մատուցողներից շատերը (ISP) արգելափակում են երթևեկությունը 0 նավահանգստում, ինչպես մուտքային, այնպես էլ ելքային հաղորդագրությունները՝ պաշտպանվելու այս շահագործումներից:

ՀՏՀ

    Որո՞նք են նավահանգիստների համարները:

    Պորտի համարները, որոնք օգտագործվում են TCP/IP ցանցային միացումների համար, գործում են որպես հասցեի տեղեկատվություն՝ նույնականացնելով հաղորդագրություն ուղարկողներին և ստացողներին: Նավահանգիստների համարները թույլ են տալիս միևնույն ցանցի տարբեր հավելվածներին միևնույն ժամանակ կիսել ռեսուրսները:

    Ինչպե՞ս գտնել նավահանգիստների համարները:

    Որոշակի IP հասցեի պորտի համարը գտնելու համար անցեք հրամանի տող, մուտքագրեք netstat -a, այնուհետև սեղմեք Enter: Դուք կտեսնեք ակտիվ TCP կապերի ցանկը IP հասցեների և նավահանգիստների համարների հետ միասին՝ բաժանված երկու կետով:

    Կարո՞ղ եմ միանալ 0 պորտին:

    Ոչ. Պաշտոնապես 0 նավահանգիստը գոյություն չունի, և դուք չեք կարող միանալ դրան, քանի որ այն անվավեր պորտի համար է: Այնուամենայնիվ, դուք կարող եք ինտերնետ փաթեթ ուղարկել 0 նավահանգիստ և այնտեղից այնպես, ինչպես կկատարեիք մեկ այլ պորտի համար:

Խորհուրդ ենք տալիս: