Två iPhone-appar kan båda lägga in en VPN-post i Inställningar, båda kalla sig VPN-klienter och nästan inte dela någon implementation. Apple kallar en av dessa integrationer Personlig VPN, och det namnet skapar större delen av förvirringen. Personlig VPN är ett API för att skapa och hantera konfigurationer som använder den inbyggda IPsec- eller IKEv2-implementationen. En pakettunnelleverantör är den andra modellen: appen levererar ett tillägg som implementerar klientsidan av sitt eget protokoll. Allt folk sedan sluter sig till från etiketten, från chiffer till ägarskap till huruvida telefonen måste hanteras, är slutledning och inte utsaga.

Vem implementerar tunneln

Uppdelningen avgör vem som ansvarar när något går sönder. Med inbyggd IPsec eller IKEv2 äger iOS tunnelns tillståndsmaskin och appen äger konfigurationen och knapparna. Med en leverantör äger appen båda, så en protokollbugg blir en appuppdatering i stället för en operativsystemuppdatering.

Jämförelsen är kort om du frågar vem som implementerar protokollet.

IntegrationApple interfaceProtocol implementation
Personal VPNNEVPNManager with a Personal VPN configurationThe system IPsec or IKEv2 client
Packet tunnelNETunnelProviderManager plus the provider extensionWhatever the extension implements

dokumentationen för Personlig VPN nämner också den uttryckliga användarauktoriseringsprompten när en app sparar en konfiguration första gången, vilket hör till den modellen och inte till VPN-appar i allmänhet.

Två påståenden om etiketten som det är värt att släppa

Det första är att Personlig VPN väljer ett chiffer. Det gör den inte; den förhandlade sviten kommer från protokollet och dess konfiguration, och en Personlig-etikett säger ingenting om vilken du får. Det andra är att Personlig VPN antyder en proxy eller en begränsad tunnel. Det antyder inbyggd IPsec eller IKEv2, vilket är en full tunnel när rutterna säger det.

Förekomsten av en app är därför inget bevis om trådprotokollet. En tredjepartsklient som talar WireGuard eller OpenVPN är konstruktionsmässigt en leverantörsapp, eftersom iOS inte implementerar dessa protokoll nativt.

Varför företagsformuleringen vilseleder

Apples dokumentation klassificerar NETunnelProviderManager-konfigurationer som vanliga företags-VPN-konfigurationer. Den formuleringen är en API-kategori, och den knuffar folk mot två motsatta fel: att anta att en konsumentapp inte kan använda leverantörsmodellen, och att anta att telefonen måste stå under övervakning för det. Inget av det följer. Konsumentappar levererar leverantörer rutinmässigt, och övervakning är en separat fråga om vem som får genomdriva policy.

Administrationägarskap är den fjärde frågan, och det är oberoende av båda modellerna. En konfiguration som installeras av en organisation bär sin egen identitet, trafikomfattning och livscykelregler, och de reser med profilen och inte med appen som råkar vara installerad. Läs dem tillsammans med integrationsmodellen, eftersom en hanterad inbyggd profil och en ohanterad leverantörsprofil kan ligga på samma telefon samtidigt.

Kontrollera beviset i stället för skärmbilden

Skärmbilder är det sämsta beviset som finns, eftersom grupperingen i Inställningar ändras mellan versioner. En hanterad profil namnger sin egen nyttolasttyp: en inbyggd profil deklarerar en VPN-typ som IKEv2 eller IPsec, medan en leverantörsprofil bär en undertyp som namnger leverantörens bundle-id. Det är kontrollerbart på enheten framför dig, och det överlever nästa omdesign.

För själva appen svarar klassen som används på samma fråga från andra hållet: konfigurationsobjekt från Personlig VPN-API:et, eller en leverantörshanterare och dess tillägg.

Välj sedan efter vad operatören faktiskt levererar. Där det finns en kompatibel inbyggd profil har den inbyggda vägen färre rörliga delar och en sak mindre att uppdatera. Där tjänsten behöver ett protokoll som iOS inte levererar är en leverantörsapp det enda alternativet, och dess utgivningstakt blir en del av din risk.

Behåll posten tillsammans med anslutningen

Knyt autentisering och resurspolicy till anslutningsposten i stället för till appen, så att en ominstallation inte tar med sig auktoriseringsmodellen. Den posten är också vad en supportingenjör behöver när tunneln kommer upp och inget annat fungerar.

Frågan som är värd att ställa till slut är inte vilken modell som är bättre. Det är vilken modell din operatör stöder, och vilken du kan felsöka klockan två på natten med de verktyg du faktiskt har.

Relaterade artiklar