તમારું 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 અને ફાયરવોલની સ્થિતિ પ્રથમ ઉપકરણ પર જ રહે છે.
બાર જેટલા પ્રીફિક્સના નિશ્ચિત સેટ માટે, VPC ટેબલમાં સ્ટેટિક રૂટ જ સસ્તો જવાબ રહે છે. Route Server પોતાનું સ્થાન ત્યારે કમાય છે જ્યારે પ્રીફિક્સ યાદી ખરેખર બદલાય છે અને પાછું ખેંચવાની નીતિ એવી વસ્તુ હોય છે જે તમે ઓન-કોલ વ્યક્તિને સમજાવી શકો.