VGW BGP-teated versus VPC marsruutimistabel: mis mida muudab
VPC marsruutimistabel juhib alamvõrkude edastamist; see ei muuda seda, mida virtuaalne privaatne lüüs BGP kaudu teatab. Jälgige kumbagi suunda eraldi.
Puuduv eesliide VPC alamvõrgu marsruutimistabelis ja puuduv eesliide kliendi ruuteris on kaks erinevat riket ning ainult üks neist parandatakse AWS-i marsruutimistabelite sees. Virtuaalne privaatne lüüs teatab oma VPC-ga seotud CIDR-plokid; alamvõrgu marsruutimistabel otsustab, kuhu töökoormus vastuse saadab. Käsitleda teist viisina muuta esimest on selle diagnoosi kõige tavalisem vale pööre. Käivitage allolevad kontrollid järjekorras ja hoidke kaks suunda lahus.
Nimetage kinnitus enne mis tahes tabeli lugemist
Site-to-Site VPN lõpeb kas virtuaalse privaatse lüüsi või transiitlüüsi juures ning ressursi-ID-d otsustavad, milline marsruutimismudel kehtib. Lugege need kõigepealt: aws ec2 describe-vpn-connections --vpn-connection-ids vpn-0123456789abcdef0 --query 'VpnConnections[].{Tunnels:VgwTelemetry,Gateway:GatewayId,Transit:TransitGatewayId}'. Vastus ütleb, kas järgmine kontrollitav tabel on VPC marsruutimistabel või transiitlüüsi marsruutimistabel.
Kui VPN on kinnitatud transiitlüüsi külge, lõpetage VPC marsruutimistabeli käsitlemine juhtimistasandina. Seal osutab VPC tabel lüüsi kinnitusele ning sidumine ja levitamine toimuvad transiitlüüsi marsruutimistabelis. Kahe vaate segamine annab enesekindlaid järeldusi vale objekti kohta.
Suund AWS-ist kontorisse on teade
VGW kinnituse puhul teatab lüüs oma VPC-ga seotud CIDR-plokid BGP kaudu kliendi lüüsile. Üksiku alamvõrgu marsruudi lisamine või marsruudi suunamine partner-VPC-le või seadmele ei lisa teist seotud CIDR-i ega ilmu selles teates. Kui kontoril on eesliide puudu, võrrelge saadud marsruutide loendit VPC sidumistega enne mis tahes marsruutimistabeli muutmist.
Lihtsal reeglil on erandeid, seega hoidke see oma ulatuses. VPN CloudHub-i lahendus võib saidi eesliiteid kliendi lüüside vahel uuesti teatada ning transiitlüüs järgib oma levitamisreegleid. Väide, et VGW teatab ainult oma VPC-d, on kasulik vaikeväärtus, mitte seadus, mis katab iga topoloogia, mida kohtate.
Suund kontorist AWS-i on levitamine pluss valik
Vastassuunas õpib VGW kontori eesliite, kuid see üksi ei liiguta töökoormust. Alamvõrgu marsruutimistabelil peab olema kas kinnituse jaoks levitamine lubatud või staatiline marsruut samasse sihtkohta. Kui ühe eesliite jaoks on olemas mõlemad, võidab staatiline marsruut ning pikima eesliite sobivus jookseb enne kumbagi neist.
Lugege päritolu, selle asemel et seda eeldada: aws ec2 describe-route-tables --route-table-ids rtb-0123456789abcdef0 --query 'RouteTables[].Routes'. Kirje päritoluga EnableVgwRoutePropagation tuli BGP-st; kirje päritoluga CreateRoute trükkis inimene ja see võidab edasi, kuni keegi selle kustutab.
Runbook, mis hoiab kaks suunda lahus
Enne millegi muutmist kirjutage AWS-i poolel üles neli fakti: kinnituse tüüp, seotud VPC CIDR-id, kõnealuse eesliite alamvõrgu marsruudi päritolu ning tunnel ja BGP olek. Sama describe-kutse tagastab VgwTelemetry koos vastuvõetud marsruutide arvuga tunneli kohta, mis ütleb, kas AWS üldse marsruute vastu võttis. Seejärel võrrelge seda sellega, mille kliendiseade tegelikult paigaldas. Eesliide, mis on BGP-s olemas, kuid edastustabelist puudub, on kohaliku impordi või parima tee probleem, mitte AWS-i marsruutimistabeli probleem.
Kui alamvõrgu tabelil puudub eesliide täielikult, lubage levitamine või lisage staatiline marsruut, seejärel lugege sama päring uuesti pärast levitamise intervalli, selle asemel et eeldada, et muudatus oli kohene. Kui eesliide on olemas ja liiklus siiski ebaõnnestub, jätke juhtimistasand rahule ja liikuge andmetee juurde.
Mida seal olles mitte muuta
Ärge lülitage levitamist sisse ega välja seotud tabelites, et parandada üks puuduv eesliide, ja ärge lisage vaikemarsruuti, et katta üks puuduv CIDR. Mõlemad muudatused laiendavad mõju ulatust ja raskendavad järgmist diagnoosi. Piirduge muudatusega tabelis, mis teenindab kõnealust töökoormuse alamvõrku.
Andmetee on kõigest sellest eraldi. Turvagrupid on olekupõhised, võrgu-ACL-id ei ole, ning hosti tulemüür või asümmeetriline tagasitee võib ära visata liiklust, mille marsruutimine õigesti kohale toimetas. Teatatud agregaat ei anna õigusi ka mitte iga teenuse jaoks selle sees, seega piirake juurdepääsu poliitika piiril, selle asemel et loota, kas aadress juhtumisi BGP-teates esineb.
Salvestage iga marsruutimistabeli päringu enne ja pärast muudatuste registrisse. Kui muudatus teeb asjad hullemaks, taastage varasemad marsruudid ja kinnitage sama päringuga, sest tagasipööramine, mida te ei saa kontrollida, on vaid oletus.