Քաղաքականության կանոնը նշված փաթեթներն ուղարկում է հատուկ աղյուսակ, և սովորական ակնկալիքն այն է, որ VPN երթուղու կորուստը կարգելափակի դրանք։ Մեխանիզմն այլ բան է անում։ Երբ աղյուսակը չի պարունակում համապատասխան երթուղի, որոնումը շարունակվում է հաջորդ կանոնով կանգ առնելու փոխարեն, և main աղյուսակը դեռ պահում է սովորական լռելյայն երթուղի uplink-ի համար։ Արդյունքը կոնֆիգուրացիա է, որը թվում է fail-closed, բայց վարվում է fail-open-ի պես։

Ոչինչ կոտրված չէ. քաղաքականության վրա հիմնված երթուղավորումը հենց այդպես է սահմանված։

Որոնումը շարունակվում է, երբ աղյուսակում ոչինչ չկա

100:   from all fwmark 0x36 lookup 42
110:   from all fwmark 0x36 lookup default
32766: from all lookup main

Վերցրեք այդ կանոնների հավաքածուն. նշված որոնումը գնում է 42 աղյուսակ, և ավելի ուշ կանոնը նույն նշանն ուղարկում է default անունով աղյուսակ։ Քանի դեռ 42 աղյուսակը պահում է օգտագործելի լռելյայն երթուղի, առաջին որոնումը տալիս է ուղին։ Երբ այդ երթուղին անհետանում է և 42 աղյուսակում այլ ոչինչ չի համընկնում, որոնումը չի դառնում մերժում. մշակումն անցնում է հաջորդ կանոնին, և երբ այն նույնպես ոչինչ չի գտնում, հասնում է main աղյուսակին։ Այդ հաջորդականության մեջ ոչինչ չի հաղորդում թե որ կանոնը տվեց վերջնական պատասխանը, ուստի աշխատող կապը նման է աշխատող քաղաքականության։

253 աղյուսակը, որը սովորաբար կոչվում է default, սովորական երթուղավորման աղյուսակ է և սովորաբար դատարկ է։ Նրա անունը փաթեթները գցելու հրահանգ չէ և նույնը չէ, ինչ աղյուսակի ներսում լռելյայն նպատակակետ երթուղին։

Վերջնական գործողությունները դադարեցնում են որոնումը

100:   from all fwmark 0x36 lookup 42
110:   from all fwmark 0x36 prohibit
32766: from all lookup main

Վերջնական կանոնը կարող է հաջորդել VPN որոնմանը դատարկ աղյուսակի որոնման փոխարեն։ Նույն նշանով, 42 աղյուսակի կանոնից հետո տեղադրված prohibit գործողությունը դադարեցնում է որոնումը, երբ այդ աղյուսակը ոչինչ չի տալիս, և վերադարձնում է վարչական մերժում՝ main աղյուսակին ևս մեկ հնարավորություն տալու փոխարեն։ Unreachable-ը և blackhole-ը նույնպես վերջնական են՝ ուղարկողի համար տարբեր սխալի վարքով։

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

Ստուգեք իրական նշանով և ինտերֆեյսով

ip -4 rule show
ip -4 route show table 42
ip -4 route get 198.51.100.20 from 10.44.0.2 iif lan0 mark 0x36

Ուսումնասիրեք իրական կանոններն ու աղյուսակը, ոչ թե դիագրամ, ապա հարցրեք հոսքին այն աղբյուրի, նշանի և մուտքի համատեքստով, որն այն իրականում ունի։ Միայն կարդալու որոնումը, որն ուղղված է նպատակակետին և ստանում է աղբյուրի հասցեն, ինտերֆեյսը և նշանը, հաղորդում է այն երթուղին, որը միջուկը կընտրեր առանց փաթեթի ելքի։ Հարցման մեջ նշան տալը չի ապացուցում, որ firewall-ը նշում է իրական երթևեկությունը. դա նշման կանոնների առանձին ստուգում է։ Հաստատեք արժեքը հաշվիչով կամ մատյանով նախքան հարցումից եզրակացություններ անելը։

Տեղում ստեղծված հարցումները պահանջում են իրենց սեփական համատեքստը, քանի որ դրանց նշման ուղին հաճախ տարբերվում է փոխանցված երթևեկության ուղուց։ Ստուգեք դրանք այն ելքային ինտերֆեյսով, որն application-ը իրականում կօգտագործեր։

Երկու ձախողման վիճակ, ոչ թե մեկ

Ձախողման մի վիճակ VPN երթուղու անհետացումն է և երթևեկության անկումը uplink։ Մեռած թունելը, որի երթուղին մնում է տեղադրված, մեկ այլ վիճակ է. փաթեթները շարունակում են ուղղվել անօգտագործելի ուղի՝ ընկնելու փոխարեն, և ախտանիշը լուռ կորուստ է, ոչ թե տեսանելի ուղիղ կապ։ Ստուգեք երկուսն էլ, ինչպես նաև գործարկման, վերակապակցման և ծառայության դադարեցման վարքը։

Նման կանոնն օգնում է միայն այնքան ժամանակ, քանի դեռ այն գոյություն ունի և փաթեթները դեռ կրում են այն նշանը, որն ընտրում է այն։ Անջատման սկրիպտը, որը ջնջում է կանոնը, կամ ուղին, որը հանում է նշանը, վերականգնում է բաց վարքը։ Արժե մարզել այդ անցումները։

Կիրառեք քաղաքականությունը IPv6-ի վրա առանձին և պահեք հաստատված վերջնակետային բացառությունները բացահայտ, ոչ ենթադրյալ։

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