Ինչու ձեր BGP սեսիան չի երևում VPC-ի երթուղային աղյուսակում
EC2 սարքի վրա գտնվող BGP սեսիան չի տեղադրում VPC երթուղիներ։ Տարածումը միացվում է յուրաքանչյուր երթուղային աղյուսակի համար, և սարքը դեռ փոխանցում է յուրաքանչյուր փաթեթ։
Կրկնվող պատմությունն այն է, որ EC2 VPN սարքի վրա աշխատող երթուղարման դեմոնը BGP-ի բարձրանալուն պես VPC-ին կսովորեցնի իր հեռավոր նախածանցերը։ Դրա կեսը ճիշտ է։ Սեսիան բարձրանում է, և դրա պատճառով VPC-ի երթուղային աղյուսակում ոչինչ չի փոխվում, այդ պատճառով առաջին ախտանիշը սովորաբար ենթացանցն է, որն անաղմուկ թափում է թրաֆիկը սև փոսի մեջ։
Այստեղ խառնվում են երկու տարբեր բաներ՝ փիրինգը երթուղային սերվերի հետ և երթուղիների տեղադրումը աղյուսակում։
Առասպելը՝ բարձրացրեք BGP-ն, և VPC-ն կսովորի նախածանցերը
BGP-ն երկու խոսողների միջև զրույց է, և այս ձևավորման մեջ խոսողներն են ձեր սարքի երթուղարման դեմոնը և VPC Route Server-ի վերջնակետը, որը AWS-ը տեղադրում է ձեզ պատկանող ենթացանցում։ Այդ զրույցը կրում է նախածանցեր։ Այն չի դիպչում ձեր աշխատանքային ենթացանցերի երթուղային աղյուսակին, քանի որ այդ աղյուսակները սովորում են միայն տարածման միջոցով, որը պետք է միացվի դրանցից յուրաքանչյուրի վրա։ Քանի դեռ դա տեղի չի ունեցել, VPC-ի գործվածքը ոչինչ չգիտի այն մասին, ինչ գիտի սարքը։
Կարգավորման քայլերն առանձնացված են պատճառով՝ կապել, ստեղծել վերջնակետը, փիրինգ անել, ապա միացնել տարածումը։
Route Server-ը կառավարման հարթություն է, ոչ թունել
Route Server-ը չի գաղտնագրում, չի փոխանցում և չի ստուգում ոչ մի փաթեթ։ Այն գոյություն ունի սարքի հետ BGP փոխանակելու և ստացված նախածանցերը դրանք ընդունելու համար կարգավորված երթուղային աղյուսակներին հանձնելու համար։ Տվյալների հարթությունը չի փոխվել՝ փաթեթները դեռ դուրս են գալիս սարքի ցանցային ինտերֆեյսով, անցնում են նրա VPN-ով և վերադառնում նույն ճանապարհով։
Դա նշանակում է, որ փոխանցող ինստանսի աղբյուրի և նշանակման ստուգումը դեռ կարևոր է, քանի որ ինստանսն այժմ փոխանցում է ուրիշին հասցեագրված թրաֆիկ։
Անվտանգության խմբերը և ենթացանցի վերահսկիչները նույնպես գործում են փոխանցվող հոսքի վրա։ Route Server-ը չի ստիպի թրաֆիկը թափող սարքին այն փոխանցել, և չի վերականգնի հեռավոր կողմում բացակայող վերադարձի երթուղին։
Տարածումը յուրաքանչյուր երթուղային աղյուսակի համար է, ոչ ամբողջ VPC-ի
Երթուղային սերվերը VPC-ի հետ կապելը և երթուղային աղյուսակում տարածումը միացնելը երկու որոշում են, և միայն երկրորդն է փոխում, թե ինչ է անում ենթացանցը։ Վեց երթուղային աղյուսակ ունեցող VPC-ն կարող է տարածված նախածանց ստանալ մեկում և չստանալ մյուս հինգում, ինչը ճիշտ է հանգույցային ենթացանցի համար և հենց այն է, ինչ ստեղծում է «կիսով չափ աշխատում է» շփոթեցնող արդյունքը։ Նույնիսկ այնտեղ, որտեղ տարածումը միացված է, մրցակից երթուղին կարող է հաղթել, քանի որ VPC-ի երթուղու ընտրությունը նախապատվությունը տալիս է ամենաերկար նախածանցին և հավասար երկարության դեպքում նախընտրում է ստատիկ երթուղին տարածվածի փոխարեն։ Այդ նախապատվությունը կիրառվում է լուռ։
Ստուգեք կոնկրետ ենթացանցի արդյունավետ աղյուսակը, ոչ թե սարքի հայտարարած նախածանցերի ցանկը։ API-ն ուղղակիորեն պատասխանում է այդ հարցին՝ aws ec2 associate-route-server և aws ec2 enable-route-server-propagation --route-table-id <id> այն երկու քայլերն են, որոնք մարդիկ մոռանում են, իսկ aws ec2 describe-route-tables --route-table-ids <id> ցույց է տալիս՝ արդյոք նախածանցն ընդհանրապես եկել է որպես route server գրառում։
Սարքը դեռ կրում է յուրաքանչյուր փաթեթ
Հասանելիություն հայտարարելը նույնը չէ, ինչ այն ունենալը. BGP սեսիան կարող է մնալ հաստատված, մինչ սարքի VPN-ը անջատված է, և երբեք չփոխվող ստատիկ հայտարարությունը շարունակում է թրաֆիկը քաշել դեպի մեռած ուղի։ Route Server-ը աջակցում է խափանումների հայտնաբերմանը, օրինակ BFD-ին, բայց դա ստուգում է զուգընկերոջ կենսունակությունը, ոչ թե նրա հետևում եղած ամեն ինչի առողջությունը։
Կապեք հայտարարությունը իրական հեռավոր երթուղու հետ՝ հայտարարեք նախածանցը, երբ թունելը և հեռավոր ցանցը աշխատում են, և հետ վերցրեք, երբ չեն աշխատում։
Հետ վերցրեք նախածանց և տեսեք՝ ինչ է տեղի ունենում
Փորձարկեք փուլերով, և վերջին փուլը դարձրեք հեռացում։ Համոզվեք, որ հայտարարությունը հասնում է, նախածանցը հայտնվում է յուրաքանչյուր նախատեսված աղյուսակում, սարքը հաջորդ ցատկն է, փոխանցումն անցնում է ակտիվ թունելով և հեռավոր ծայրը պատասխանում է։ Ապա հետ վերցրեք փորձնական նախածանց կամ փակեք հաստատված թունել և դիտեք՝ արդյոք թրաֆիկը տեղափոխվում է այնտեղ, որտեղ ասում է ձևավորումը։ Գրանցեք աղյուսակները մինչև և հետո, քանի դեռ փորձարկումը բաց է։
Երթուղին երկրորդ սարք տեղափոխելը չի տեղափոխում այն սեսիաները, որոնք այն կրում էր, քանի որ NAT-ի և firewall-ի վիճակը մնում է առաջին սարքում։
Մեկ տասնյակ նախածանցներից բաղկացած ֆիքսված հավաքածուի համար VPC-ի աղյուսակներում ստատիկ երթուղիները մնում են ավելի էժան պատասխանը։ Route Server-ը վաստակում է իր տեղը, երբ նախածանցերի ցանկն իսկապես փոխվում է, և հետ վերցնելու քաղաքականությունը մի բան է, որը կարող եք բացատրել հերթապահին։