Kwa nini BGP juu ya VPN haidhibiti njia ya tabaka la chini
BGP juu ya VPN hubadilishana ufikivu na kutumia sera za njia, lakini tabaka la chini bado huchagua njia ya nje. Kile ambacho kikao hukidhibiti kwa kweli.
Maeneo mawili huoanisha BGP kupitia handaki la IPsec, hujifunza viambishi vya awali vya kila mmoja, na mchoro unabadilishwa jina kuwa udhibiti wa njia. Lebo hilo ndilo mwanzo wa mkanganyiko. Kikao hubadilishana ufikivu na kutumia sera, lakini hakina sauti kuhusu mtoa huduma, kebo au kipanga njia kipi kinachobeba pakiti zilizosimbwa. Nimeona timu ikijenga upya handaki lililokuwa likifanya kazi kwa sababu walitarajia mabadiliko ya njia ya BGP kuhamisha trafiki kwenda njia nyingine ya nyuzi ambayo kikao hakingeweza kuathiri kamwe.
Watu hudhani kikao hununua nini
Sehemu kubwa ya matarajio inatokana na jinsi mabadiliko ya njia yanavyoonekana maabara. Unatangaza kiambishi cha awali kupitia handaki, upande wa mbali unakisakinisha, na trafiki husogea. Mfululizo huo huo hutokea kwenye kipanga njia ambacho kwa kweli kina vidhibiti vya uhandisi wa trafiki, kwa hiyo vyote viwili huchanganywa. Maabara maeneo yote mawili kwa kawaida hushiriki kiungo kimoja cha ufikivu, na ndiyo sababu tofauti haionekani kamwe hapo.
BGP ni itifaki ya ufikivu. Humwambia mwenzake kwamba unaweza kuwasilisha pakiti kwa kiambishi cha awali na huruhusu kila upande kupanga ofa unazopokea. Hii ni muhimu kwa kweli kupitia handaki: viambishi vya awali huonekana na kutoweka maeneo yanapokuja na kwenda, na unaweza kukataa masafa bila kuandika njia tuli kwenye kila kifaa cha ukingo. Isichofanya ni kuweka vipanga njia vya mtoa huduma chini ya udhibiti wako.
Tabaka la chini hubeba kichwa cha nje. Kituo chako cha mwisho cha handaki hutuma pakiti zilizosimbwa kwa anwani ya mwenzake, na mtandao kati ya anwani hizo mbili huzipitisha kwa njia ambazo waendeshaji wake wamesakinisha. Hakuna kitu katika kikao cha BGP kinachobadilisha uamuzi huo, isipokuwa mtoa huduma huyo huyo atoe huduma inayoungwa mkono inayofanya hivyo.
Kikao hubeba nini kwa kweli
Msemaji wa BGP hufungua muunganisho wa TCP kwenda bandari 179 ya mwenzake, akitumia miundo ya ujumbe na sifa za njia zilizofafanuliwa katika RFC 4271. Anwani ya mwenzake inapokuwa ndani ya handaki, handaki lazima liwe juu na anwani ifikike kabla kikao hakijaanza. Mabadilishano ya IKE yaliyokamilika si jirani wa BGP. Utekelezaji wa IPsec unaotegemea njia huruhusu trafiki kupita tu pale njia ya handaki inayolingana ipo, na ule unaotegemea sera unahitaji anwani ya mwenzake ndani ya kichaguzi kilicholindwa. Kugeuza hili huzalisha hali ya kawaida ambapo handaki ni kijani na kikao kinakaa bila kazi.
Kikao kinapokuwa juu, sera huamua kinachokipita. Orodha za viambishi vya awali, vichujio vya AS-path, kikomo cha juu cha viambishi vya awali na uamuzi wazi kuhusu njia chaguo-msingi ni kiwango cha chini, na vinatumika pande zote mbili. Mwenzake anayekubali kila kitu anachopokea anaweza kukupa njia chaguo-msingi inayobadilisha kwa utulivu ufikivu wa mtandao wa ndani. Pande mbili zinahitaji orodha tofauti, kwa sababu unachokubali kutoka kwa mwenzake na unachomtangazia ni maamuzi mawili tofauti.
router bgp 65010
neighbor 10.255.0.2 remote-as 65020
address-family ipv4 unicast
neighbor 10.255.0.2 prefix-list SITE-B-IN in
neighbor 10.255.0.2 prefix-list SITE-B-OUT out
neighbor 10.255.0.2 maximum-prefix 50
Kisha MTU huuma. Ufungaji hupunguza mzigo unaotumika, kwa hiyo sasisho kubwa linaweza kusimamisha kikao kinachoonekana kama kimewekwa kikamilifu: mwenzake hubaki juu, viambishi vya awali havifiki kamwe, na hakuna kitu cha wazi kinaanguka kwenye kumbukumbu. Punguza TCP MSS kwenye kiolesura cha handaki, au weka MTU ya handaki yenye nafasi ya gharama ya ziada, kabla ya kulaumu vichujio.
Pakiti za nje zinaenda wapi bado
Pakiti zilizosimbwa kutoka eneo moja kwenda lingine hutoka kupitia kile kipanga njia cha ndani kinachochagua kwa anwani ya umma ya mwenzake. Ikiwa maeneo yote mawili yananunua usafirishaji kutoka kwa mtoa huduma mmoja, yanapita kituo kimoja cha metro, au upande mmoja uko nyuma ya NAT ya kiwango cha mtoa huduma, handaki huokoka kushindwa kwa mtoa huduma kwa bahati tu. Kuhesabu aikoni za handaki kwenye chombo cha ufuatiliaji hakukuambii chochote kuhusu hili.
Uteuzi wa njia na usakinishaji wa upelekaji pia ni matukio tofauti. Kiambishi cha awali kinaweza kukaa kwenye jedwali la BGP kama bora na bado kikosekane kwenye jedwali la upelekaji, kwa sababu hop inayofuata haiwezi kutatuliwa au njia mahususi zaidi inashinda. Mtu anaporipoti kwamba BGP ilijifunza kiambishi cha awali lakini trafiki haitiririki, swali lenye manufaa ni kama imesakinishwa na inaelekeza kwenye hop ipi inayofuata.
Jibu la uaminifu kwa mapitio ya muundo ni orodha ya utegemezi unaoshirikiwa: mzunguko wa ufikivu, mtoa huduma wa juu, kituo na kifaa chochote kinachoshikilia hali kwenye njia ya kurudi. Kikao kupitia handaki hakiwezi kuondoa utegemezi ambao hakikikalia.
Maamuzi matatu yanayofaa kutenganishwa
Muundo unapochanganya haya, kila mazungumzo ya hitilafu huzunguka. Vitenganishe kwanza kwenye karatasi, kisha unganisha kila moja na kifaa kinachokitekeleza kwa kweli.
| Decision | Who controls it | Typical failure |
|---|---|---|
| Which prefixes may cross the relationship? | Both sides, through prefix and AS-path policy you configure deliberately | A default route accepted by mistake, or a vague aggregate |
| Which overlay next hop wins? | Local BGP selection plus next-hop resolution on your own routers | Prefix learned, never installed in the forwarding table |
| Where do the encrypted packets travel? | The underlay operators, unless a supported service adds real control | Path diversity that was never there |
Kila mstari una mmiliki tofauti. Wa kwanza ni majadiliano, wa pili ni usanidi kwenye vifaa vyako, wa tatu mara nyingi ni mtandao wa mtu mwingine. Ombi la mabadiliko linalotaja mstari linaogusa ni rahisi sana kuidhinishwa kuliko lile linalosema tatizo la BGP.
Hali za kushindwa zinazofaa kupangwa
Kukubali njia ya muhtasari ya mwenzake ni jeraha la kawaida la kujijeruhi. Mtu hutangaza muunganiko mfupi ili kurahisisha mabadilishano, upande wa mbali hukubali, na trafiki ya masafa yasiyo nyuma ya handaki hufuata handaki na kufa. Chuja kwa viambishi vya awali vinavyotarajiwa hasa, au tumia orodha ya viambishi vya awali yenye mipaka sahihi, na kamwe usikubali muunganiko mtupu kwa sababu hufanya kikao kionekane safi.
Wakati wa kutoa ni wa pili. Ugunduzi hutegemea vipima muda vya kushikilia, BFD ikiwa uliiwezesha, ugunduzi wa mwenzake aliyekufa wa handaki na jinsi upande wa mbali unavyoacha kutangaza haraka. Vikao vilivyopo ni tatizo tofauti: njia mpya inaweza kurejesha miunganisho mipya wakati vikao vya TCP vilivyoanzishwa vinaendelea kutumia anwani zilizopitwa na wakati, na ngome za moto zinazoshikilia hali au NAT kwenye njia zinaweza kushikilia maingizo ambayo hayalingani tena. Weka urejeshaji wa programu katika vigezo vya kukubalika badala ya kudhani mabadiliko ya njia yanatatua kila kitu.
Ya tatu ni asymmetry ya njia ya kurudi. Trafiki inaweza kufika kupitia handaki na kurudi kupitia kiungo cha mtoa huduma ambacho hakikuwahi kukusudiwa kuibeba, ambayo huonekana kama sauti ya upande mmoja, makubaliano ya mkono yaliyoshindwa au ngome ya moto inayotupa majibu. Angalia pande zote mbili kwa tofauti.
Nini cha kuandika kwenye mkataba, na jinsi ya kuthibitisha
Omba viambishi vya awali vinavyoruhusiwa kwa maandishi: nani ameidhinishwa kuunda kila masafa, ikiwa njia chaguo-msingi inaruhusiwa, na familia zipi za anwani huduma ya handaki inaunga mkono. RFC 8212 ilifanya sera wazi ya uagizaji na usafirishaji kuwa matarajio kwa eBGP katika utekelezaji unaoifuata, kwa hiyo mwenzake anayetegemea bado tabia ya siri ya kukubali kila kitu anafaa kuulizwa.
Kisha thibitisha kutoka kwa kifaa badala ya mchoro. Amri muhimu kwenye vipanga njia vya mtindo wa FRR:
show bgp summary
show bgp ipv4 unicast 10.10.0.0/16
show bgp ipv4 unicast neighbors 10.255.0.2 advertised-routes
show ip route 10.10.0.0/16
Ongeza uchunguzi mbili ambazo jedwali la njia haliwezi kukupa. Nasa kwenye kiolesura cha nje ili kuthibitisha anwani ipi pakiti zilizofungwa zinalenga kwa kweli, kwa mfano tcpdump -ni eth0 udp port 51820 kwa handaki la WireGuard, au kichujio cha ESP kwa IPsec. Kisha fuata kuelekea anwani ya umma ya mwenzake na linganisha hop na ufuatiliaji ndani ya handaki; ikiwa zote zinafuata mnyororo mmoja wa mtoa huduma, upungufu wako unaishi katika sera za njia na si kwenye mtandao.
Mwishowe, jaribu kutoa kwa makusudi. Shusha handaki wakati wa dirisha la matengenezo, andika muda ambao kiambishi cha awali kinabaki kimesakinishwa, kile kinachotokea kwa vikao vilivyopo na ikiwa upande wa mbali unarudi kwenye njia ambayo ungekubali kwa kweli. Zoezi hilo linasema zaidi kuhusu muundo kuliko mchoro wowote.
Njia si idhini. Viambishi vya awali unavyokubali kubadilishana havisemi chochote kuhusu watumiaji gani wanaweza kufikia huduma ipi nyuma ya handaki, kwa hiyo weka uthibitishaji, huduma zinazoruhusiwa na ngome za moto za mwenyeji mahali zilipo. Mwenzake anayefikika pia si ruhusa ya usafirishaji usio na kikomo au kuunda anwani za kiholela, na mamlaka ya aina hiyo ni ya mkataba kama suala la kibiashara, si mstari wa sera ya BGP.
- Taja viambishi vya awali ambavyo kila upande unaweza kuunda, na vile ambavyo haipaswi kukubali kamwe.
- Punguza MSS kwenye handaki na thibitisha kwamba masasisho makubwa yanafika kwa kweli.
- Orodhesha utegemezi wa pamoja wa tabaka la chini, si idadi ya handaki.
- Pima utoaji halisi na uandike kile programu inachofanya.