Tunneli putoaa heti, kun kaksi päätä ovat eri mieltä ennalta jaetusta avaimesta, ja se pysyy alhaalla, kunnes molemmat puolet kantavat uuden arvon. Tämä osa on odotettua: AWS pitää muutosta valitun tunnelin keskeytyksenä, eikä vastapuoli saa IKE:tä valmiiksi, kun avaimet eroavat. Sen, mikä yllättää ihmiset, on toinen puoli. Toinen tunneli ei ota liikennettä itselleen, ellet ole varmistanut, että se pystyy kantamaan sen. Vaihda tässä järjestyksessä, niin keskeytys pysyy yhden tunnelin sisällä.

Mitä itse asiassa tapahtuu, kun avain vaihtuu

ModifyVpnTunnelOptions kirjoittaa uudelleen yhden tunnelin asetukset, joka tunnistetaan sen ulkoisen IP-osoitteen perusteella. Tunneli puretaan ja rakennetaan uudelleen, joten IKE ja IPsec neuvottelevat alusta asti uudella avaimella. AWS ilmoittaa, että keskeytys voi kestää useita minuutteja, mikä on tarpeeksi kauan, jotta reititysprotokolla huomaa sen. Saman yhteyden toiseen tunneliin kutsu ei koske.

On toinen vaikutus, joka kannattaa tietää ennen kuin lähettää mitään. Muutostoiminto ottaa tunnelin koko asetusjoukon, joten pois jättämäsi kenttä kirjoitetaan takaisin oletusarvollaan. Jos olet säätänyt vaiheen 1 tai vaiheen 2 elinaikoja tai kuolleen vastapuolen tunnistuksen asetuksia, välitä nykyiset arvot samassa pyynnössä tai suunnittele niiden palauttaminen jälkeenpäin.

Lue ensin nykyiset arvot ja muuta sitten yhtä kenttää. Tämä järjestys on koko tämän tehtävän kurinalaisuus.

Sovita AWS:n tunneli ensin oikeaan vastapuoleen

Konsoli merkitsee tunnelit järjestyksen mukaan, eikä laitteesi käytä sitä merkintää. Tunnista tunneli sen ulkoisen IP-osoitteen perusteella ja sovita se asiakasportin vastapuoliosaan. Paikallisen kokoonpanon tunneli 1 ei ole todiste siitä, että muokkaat tunnelia, jota AWS kutsuu tunneliksi 1.

Aloita itse yhteydestä, joka luettelee molemmat tunnelit ja avaimen, joka kullakin on tällä hetkellä:

aws ec2 describe-vpn-connections --vpn-connection-ids vpn-0123456789abcdef0 \
  --query "VpnConnections[0].Options.TunnelOptions[].[OutsideIpAddress,PreSharedKey]"

Palautuva avain on se, jota käytetään juuri nyt. Vertaa sitä vastapuolen kokoonpanoon ennen kuin muutat mitään, sillä jo olemassa oleva eroavuus selittää tunnelin, joka ei ollut koskaan vakaa.

Anna ensin toisen tunnelin kantaa liikenne

Kaksi tunnelia yhdessä yhteydessä ei todista, että laitteesi on määrittänyt molemmat, että molemmat ilmoittavat tarvitsemasi etuliitteet tai että liikenne kulkee niiden välillä. Tarkista vaihtoehtoisen tunnelin neuvottelu, sen reitit ja todellinen sovellusvirta molempiin suuntiin. BGP:n kanssa elävä naapuruus on hyödyllinen todiste, mutta ei sama kuin etuliitteiden vahvistaminen. Staattisella reitityksellä vahvista, miten yhdyskäytävä valitsee polun ja mitä se tekee, kun ensisijainen katoaa.

Jos vaihtoehto ei pysty kantamaan työkuormaa, ajoita keskeytys tai korjaa vaihtoehtoinen tunneli ennen kuin kosket avaimeen. Konsolin sivulla oleva tilavalo ei ole lupaus keskeytymättömästä palvelusta.

Vaihda yksi tunneli ja varmista sitten todellisella liikenteellä

Kun vaihtoehtoinen reitti on todistettu, järjestys on lyhyt. Kirjaa tunnelin osoite, sen vastapuoli ja ei-salaiset asetukset, ja pidä yhdyskäytävään hallintapolku, joka ei riipu tunnelista, jonka aiot katkaista.

  1. Päivitä asiakasportin vastapuoli valitulle ulkoiselle osoitteelle tai valmistele muutos niin, että se astuu voimaan sekunteja API-kutsun jälkeen.
  2. Lähetä muutospyyntö uudella avaimella sekä nykyisillä elinajoilla ja DPD-arvoilla.
  3. Odota, että IKE ja IPsec palaavat, ja vahvista sitten reitit ja tarvittavat etuliitteet.
  4. Työnnä edustava sovellusvirta tunnelin läpi ja seuraa molempia suuntia.

Tunneli on käyttökelvoton, kun päät ovat eri mieltä ja kun AWS soveltaa muutosta, joten vastapuolen päivityksen on seurattava heti eikä lounaan jälkeen. Vasta kun muutettu tunneli kantaa todellista liikennettä, toista menettely toisella.

Pysähdy, jos palautuminen tai reititys on vielä epävarmaa ensimmäisen tunnelin jälkeen. Kaksi puoliksi toimivaa tunnelia on pahempi kuin yksi, jonka tiedät toimivan.

Kun palautuminen juuttuu, lue IKE-puoli

Tunneli, joka jää alas sen jälkeen, kun molemmilla päillä on uusi avain, on yleensä käytäntöjen eroavuus, jonka vaihto paljasti eikä luonut. Ehdotusten, vastapuolen lähettämän identiteetin ja liikenteen valitsimien on kaikkien sovittava AWS:n puolen kanssa, ja vakiintuneen tunnelin läpäissyt arvo voidaan silti hylätä uuden neuvottelun aikana. Lue neuvottelun tila ja siihen liitetty viesti ennen kuin vaihdat avaimen toisen kerran.

aws ec2 describe-vpn-connections --vpn-connection-ids vpn-0123456789abcdef0 \
  --query "VpnConnections[0].VgwTelemetry[].[OutsideIpAddress,Status,StatusMessage]"

Jos muutos on peruttava, älä palauta vanhaa avainta vain siksi, että se toimi ennen. Käsittele vaarantunutta avainta vaarantuneena ja korjaa sen sijaan neuvottelu. Lopeta molempien tunnelien vahvistamiseen ja salaisuuksien luettelon päivittämiseen, jotta kukin vastapuoli kirjaa, minkä arvon se pitää, ja pidä AWS:n tunneliasetusten dokumentaatio runbookin vieressä.

Aiheeseen liittyvät artikkelit