Ինչ-որ մեկը ձեզ տալիս է առաջին և վերջին հասցեն ու խնդրում VPN երթուղի։ Գայթակղիչ քայլը երկու ծայրերը պարունակող ամենակարճ նախածանցն ընտրելն է, և այդ քայլը լուռ ավելացնում է նպատակակետեր, որոնց մասին ոչ ոք չի հարցրել։ CIDR բլոկը միշտ ունի երկուսի աստիճանի չափ և դրան հավասարեցված մեկնարկային հասցե, ուստի կամայական միջակայքը սովորաբար պահանջում է մեկից ավելի։ Անցեք միջակայքով, բաժանեք այն ճշգրիտ, ապա ստուգեք դրա անմիջապես դրսում գտնվող հասցեները։

Սկսեք միջակայքից, ոչ նախածանցից

Գրեք առաջին հասցեն և վերջին հասցեն, նախքան որևէ այլ բան գրելը։ Զույգը հենց պահանջն է. նախածանցը դրա միայն մեկ հնարավոր արտահայտությունն է, և երբեմն՝ սխալ։ Երկու թիվը նույնպես շատ ավելի հեշտ է ստուգել, քան դիմակը։

Հավասարեցված միջակայքը ծալվում է մեկ բլոկի։ Չհավասարեցվածը տրոհվում է մի քանիսի, և տրոհումը ճշգրիտ է, ոչ մոտավոր։ Ինչ չպետք է անեք՝ դա դուրս կլորացնելն ու այն բավական մոտ անվանելն է, որովհետև լրացուցիչ հասցեները ստանում են այն քաղաքականությունը, որը կրում է երթուղին։

Սխալի երկու ուղղություններն էլ կարևոր են։ Թունել մտնող երթուղու համար լրացուցիչ հասցեները ձգվում են VPN։ Շրջանցման բացառության համար լրացուցիչ հասցեները բաց թողնում են այն։ Արդյունքներից ոչ մեկը տեսանելի չէ երթուղիների աղյուսակում, որը ցույց է տալիս միայն ձեր տեղադրած նախածանցը։

Առաջին դեպք. միջակայքը պատահաբար հավասարեցված է

Վերցրեք 198.51.100.64-ից 198.51.100.127։ Առաջին հասցեն հավասարեցված է 64 հասցեի սահմանին, և միջակայքը ուղիղ 64 հասցե է, ուստի մեկ /26 նկարագրում է այն առանց որևէ մնացորդի։

Սա հեշտ դեպքն է, և արժե ճանաչել այն, որովհետև դա նշանակում է, որ պահանջը հավանաբար գրել է մեկը, ով արդեն մտածում էր նախածանցներով։ Դա նաև նշանակում է, որ ստուգումը կարճ է. հաստատեք, որ չափը երկուսի աստիճան է, և սկիզբը այդ չափի բազմապատիկն է։

Փաստաթղթային միջակայքերը լավ օրինակներ են հենց այն պատճառով, որ ոչ ոք չի տիրապետում դրանց։ Մի տեղադրեք այս հասցեները իրական թունելի վրա և մի ենթադրեք, որ ձեզ տրված միջակայքը փաստաթղթային տարածք է միայն այն պատճառով, որ անսովոր է թվում։

Երկրորդ դեպք. հավասարեցված չէ, ուստի բաժանեք

Այժմ վերցրեք 198.51.100.100-ից 198.51.100.107։ Սրանք ութ հասցե են, ինչը երկուսի աստիճան է, բայց 100-ը ութի բազմապատիկ չէ։ Այդ չափի մեկ բլոկը չի կարող սկսվել այնտեղ, ուստի միջակայքը պետք է ծածկվի մեկից ավելիով։

Ճշգրիտ ծածկույթը երկու /30 բլոկ է. 198.51.100.100/30-ը ծածկում է 100-ից 103-ը, իսկ 198.51.100.104/30-ը՝ 104-ից 107-ը։ Ընդամենը ութ հասցե, ոչինչ միջակայքից դուրս, և տրոհումը եզակի է տրված միջակայքի համար։

python3 -c "from ipaddress import ip_address, summarize_address_range as s; print(*s(ip_address('198.51.100.100'), ip_address('198.51.100.107')), sep='\n')"

Ստանդարտ գրադարանի ֆունկցիան կատարում է թվաբանությունը ձեր փոխարեն, և ipaddress-ի փաստաթղթերը սահմանում են, թե ինչ է այն վերադարձնում։ Ինչ այն չի անում՝ դա դարպասի ընտրությունն է, հասցեների սեփականատիրոջ որոշումը կամ դրանց հետևում գտնվող ցանկացած ծառայության հասանելիություն տալը։

Չափեք, թե ավելի լայն նախածանցն ինչ կընդգրկեր

Նախքան կարճուղին ընդունելը, հաշվարկեք, թե ինչ արժե այն։ 198.51.100.96-ից սկսվող /28-ը ծածկում է 96-ից 111-ը, այսինքն՝ ութի փոխարեն տասնվեց հասցե։ Լրացուցիչ ութը 96-ից 99-ն են և 108-ից 111-ը, և նրանցից յուրաքանչյուրը կժառանգեր երթուղին։

python3 -c "from ipaddress import ip_network as n; w=set(n('198.51.100.96/28')); t=set(n('198.51.100.100/30'))|set(n('198.51.100.104/30')); print(len(w), len(t), sorted(w-t))"

Ութ լրացուցիչ նպատակակետ կոնկրետ թիվ է, որը կարող եք դնել փոփոխության հայտի մեջ։ Դա նաև այն թիվն է, որը որոշում է՝ կարճուղին ընդունելի է, և դա քաղաքականության հարց է, ոչ թե թվաբանության։

Թվաբանությունը և հայտնաբերումը առանձին պահեք։ Ցանցի օպերատորի տրամադրած միջակայքը փոխարկվում է ճշգրիտ։ Փոփոխվող ծառայության մեկ DNS պատասխան չի հաստատում այդ ծառայության ամբողջական կամ մշտական միջակայքը, և անկապ անունները կարող են կիսել մեկ հասցե։

Տեղադրեք ճշգրիտ հավաքածուն և ստուգեք եզրերը

Յուրաքանչյուր ստացված նախածանց փոխանցեք VPN կարգավորման տիրոջը և թող նա տեղադրի այն աջակցվող մեխանիզմով։ Եթե պահանջը երկու գրառում է ուզում, պահեք երկու գրառում՝ մեկը լայնացնելու փոխարեն՝ ձևը կարճացնելու համար։

sudo ip route add 198.51.100.100/30 via 10.90.0.1 dev tun0
sudo ip route add 198.51.100.104/30 via 10.90.0.1 dev tun0
ip route get 198.51.100.101
ip route get 198.51.100.97

Վերջին երկու հրամաններն են, որ մարդիկ բաց թողնում են։ Առաջին ներքին հասցեն պետք է հետևի նոր երթուղուն, իսկ միջակայքի անմիջապես դրսում գտնվող հասցեն՝ ոչ։ Եթե երկուսն էլ նույն ճանապարհով են գնում, միջակայքը լայնացվել է ինչ-որ տեղ պահանջի և կարգավորման միջև։

Գրանցեք առաջին հասցեն, վերջին հասցեն և դրանք արտահայտող նախածանցները։ Կանոնը վերանայող հաջորդ մարդը կկարողանա պահանջը համեմատել կարգավորման հետ՝ առանց թվաբանությունը կրկնելու, և ճշգրիտ ու հարմար երթուղու տարբերությունը կմնա տեսանելի։

Առնչվող հոդվածներ