Կանոնը, որը համապատասխանում էր երեկ, այսօր չի համապատասխանում, որովհետև հաճախորդը վերադարձավ այլ թունելի հասցեով։ Բաշխիչը սակայն պատահական չէ, և նրա կարգն իմանալը այդ անակնկալը դարձնում է կանխատեսելի իրադարձություն։ Այն նախընտրում է այն հասցեն, որ նույն հաճախորդն ուներ նախկինում, ընկնում է ամենաերկար անգործ ազատ հասցեի վրա և մոռանում է ամեն ինչ, եթե հիշելու տեղ չտաք։ Վարձակալության վրա հիմնված կանոնները շարունակում են համապատասխանել մինչև այն օրը, երբ լուռ դադարում են։

Կարգը, որին հետևում է բաշխիչը

common name-ի համար մեկ սեսիայի դեպքում բաշխիչը նախ փնտրում է հասցե, որ նույն հաճախորդն օգտագործել է նախկինում և որն այժմ ազատ է։ Եթե այդ հասցեն չկա, վերցնում է ամենաերկար անգործ մնացած ազատ հասցեն։ Եթե նույն անվան համար միացված են զուգահեռ սեսիաներ, նախորդ հասցեի նախապատվությունը չի գործում, և փոխարենը օգտագործվում է առաջին ազատ հասցեն, որովհետև սեսիաները դիտվում են որպես առանձին հավասար հանգույցներ։

SituationAddress chosenPractical effect
Reconnect, old address still freeThe remembered addressRules appear stable for days
Old address taken by another clientLeast recently used free addressA working rule silently stops matching
Concurrent sessions, same nameFirst free address, per sessionOne identity can hold several leases

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

Ինչու վարձակալությունը կայուն է թվում, ապա տեղաշարժվում

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

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

Կայունության ֆայլը հիշում է, այն չի ամրագրում

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

ifconfig-pool-persist /etc/openvpn/ipp.txt
server 10.8.0.0 255.255.255.0

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

Ստուգեք պուլը յուրաքանչյուր ուղղորդված ենթացանցի դեմ, քանի դեռ ֆայլում եք։ Համընկնող տիրույթը տրամադրում է հասցեներ, որոնց սերվերը չի կարող ուղղորդել, և ախտանիշը հաճախորդն է, որը միանում է, ստանում հասցե և ոչնչի չի հասնում։

Հասցեն ճիշտ ամրագրել

Երբ պաշտպանիչ պատի կանոնին կամ DNS գրառմանն իսկապես պետք է ֆիքսված հասցե, նշանակեք այն, փոխարենը հույս դնելու։ Հաճախորդի համար նախատեսված կոնֆիգուրացիայի գրառումը կարող է ուղղակիորեն ուղարկել հասցե և քողարկում, և այդ գրառումը կապված է փաստացի հաճախորդի անվան հետ։

# client-config-dir entry for "laptop-acme"
ifconfig-push 10.8.0.50 255.255.255.0

Ֆիքսված հասցեները պահեք դինամիկ պուլից դուրս, որպեսզի բաշխիչը երբեք նույն համարը չտա այլ սեսիայի։ Ապա ստուգեք թունելի տոպոլոգիան, որովհետև այն փոխում է, թե յուրաքանչյուր հաճախորդ քանի պուլի հասցե է ծախսում՝ հին կետ-առ-կետ դասավորությունը յուրաքանչյուր հաճախորդի համար փոքր բլոկ է ծախսում, մինչդեռ ենթացանցային դասավորությունը յուրաքանչյուրին մեկ հասցե է օգտագործում։ Պուլը, որը մեկ տոպոլոգիայում առատ է թվում, մյուսում կարող է սպառվող լինել։

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

Հեռավոր հասցեն առանձին հարց է

Հաճախորդի remote տողի հասցեն պետք է հասանելի լինի նախքան որևէ թունելի գոյությունը։ Այնտեղ պուլի հասցե դնելը, օրինակ սերվերի սեփական թունելի վերջնակետը, նշանակում է, որ հաճախորդը փորձում է հասնել վերջնակետին այն թունելով, որը դեռ չի կառուցել, և արդյունքը օղակ է կամ լուռ սպասում՝ կարճ ճանապարհի փոխարեն։

Օգտագործեք օպերատորի տրամադրած հանրային վերջնակետը և պուլը պահեք նրա համար, ինչի համար նախատեսված է՝ թունելի ներսի հասցեներ։ Պուլի տիրույթը, ֆիքսված նշանակումները և կայունության ուղին մեկ տեղում գրանցելը խնայում է հաջորդ մարդուն յուրաքանչյուր վարձակալության կամայական համարելուց։

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