strongSwan vips: att be IKEv2 om en virtuell adress
vips begär en intern IKEv2-adress; gatewayen avgör vad den tilldelar. Konfigurera begäran, ladda den och kontrollera sedan vad svararen faktiskt tilldelade.
Din IKEv2-klient kan be gatewayen om en intern adress, och gatewayen avgör vad den skickar tillbaka. I strongSwan är den begäran inställningen vips, och den förblir en begäran även när du skriver in en specifik adress i den. Runbooken nedan konfigurerar begäran, laddar den och läser vad som kom tillbaka, eftersom de tre stegen misslyckas på tre olika sätt. Inget av dem blir kortare av att skriva hårdare.
Vad vips begär och vad det inte kan lova
vips hör hemma i en anslutningsdefinition och ber svararen om en virtuell adress. strongSwans guide om virtuella adresser är tydlig med att svaret kan vara en annan adress, eller ingenting alls, och det är meningen folk hoppar över när de skriver ett värde och förväntar sig att det ska dyka upp. Begäran är ändå värd att skicka, eftersom det är svaret du kontrollerar. Behandla inställningen som en instruktion att fråga, inte som konfiguration av resultatet.
Att be om 0.0.0.0 ber om vilken ledig virtuell IPv4-adress som helst, vilket oftast är rätt när det exakta värdet inte spelar någon roll. Att be om en specifik adress är en vink till gatewayen, inte ett krav på den.
swanctl-utdraget och var det hör hemma
Inställningen sitter inne i anslutningsblocket, inte i sin egen fil och inte i en operativsystemprofil. Det här isolerade utdraget visar formen:
connections {
net {
local_addrs = 192.0.2.10
remote_addrs = 203.0.113.5
vips = 10.77.0.31
children {
net { local_ts = dynamic remote_ts = 10.77.0.0/24 }
}
}
}
Ladda den med filen som äger anslutningen, starta sedan anslutningen och läs resultatet. Ett utdrag som klistras in i fel avsnitt ger ett tolkningsfel eller, värre, en anslutning som laddas utan den begäran du trodde du hade gjort. Kör de tre kommandona i ordning och spara utdata.
swanctl --load-all --file /etc/swanctl/swanctl.conf
swanctl --initiate --child net
swanctl --list-sas
local_ts väljer trafik, det skapar ingen adress
local_ts namnger den trafikmängd som den underordnade SA:n skyddar; det sätter ingen adress på ett gränssnitt. När en virtuell IP har förhandlats slutar strongSwan använda sin standarddynamiska väljare och använder i stället den tilldelade adressen. Om du låser väljaren till en bokstavlig adress hävdar du något som gatewayen kanske inte har tilldelat, och därför visar sig felet som en fungerande SA med trafik som inte leder någonstans. Väljaren beskriver trafik, medan tilldelningen kommer från det andra utbytet.
Det andra sättet att få en stabil intern adress är att äga den lokalt. Sätt adressen på ett gränssnitt innan tunneln kommer upp, rikta väljaren mot det som redan finns och ordna motparten och rutten runt det.
Ingenting förhandlas i den designen, så ingenting kan tilldelas om, och det är bytet: determinism mot att göra adresseringsarbetet själv. Det är en annan mekanism, inte en variant av vips, och därför bör de två inte blandas i en anslutning. En låst väljare bredvid en förhandlad adress är en anslutning som fungerar tills gatewayen delar ut något annat.
Kontrollera vad svararen faktiskt tilldelade
Läs SA-listan efter adressen som gatewayen tilldelade och bekräfta sedan att adressen finns på gränssnittet. Om de två inte stämmer är tunneln uppe och trafiken går inte dit du tror. En tilldelad adress som aldrig når gränssnittet är det mest förvirrande felet i den här sekvensen, eftersom varje halva ser korrekt ut för sig.
Håll fyra adresser åtskilda i dina anteckningar: den begärda interna adressen, den tilldelade, maskinens LAN-adress och den offentliga utgången som en webbplats rapporterar. De tillhör olika lager och dyker upp på olika ställen. En runbook som registrerar alla fyra är en som någon annan kan följa utan att fråga vilken adress du menade. Läs dem igen efter varje omladdning, eftersom det tilldelade värdet är det enda som beskriver den levande tunneln.
Håll den statiska designen åtskild
Om du behöver en fast intern adress, ordna reserveringen på gatewayen och låt klientens begäran vara en begäran. Blandas en låst väljare med en förhandlad adress får du en anslutning som fungerar tills gatewayen tilldelar något annat. Skriv ner reserveringsregeln bredvid anslutningen, eftersom det är den del en kollega inte kan sluta sig till från konfigurationsfilen. Då ärver en ny klient regeln i stället för att upptäcka den igen.
På den inbyggda Mac-klienten finns inget av dessa inställningsnamn. Använd den tilldelning eller reservering som gatewayen erbjuder och den profil som operatören publicerar, och behandla varje värde på klientsidan som en vink tills du har läst tilldelningen tillbaka. Återställning innebär att ta bort vips-raden och ladda om, vilket för dig tillbaka till det gatewayen tilldelar som standard.