iPhone-VPN-app på en Apple Silicon-Mac: vad som faktiskt körs
Apple kör nu pakettunnel-leverantörer från iOS-appar på Apple Silicon, men en lyckad förfrågan bevisar varken tillgänglighet, kontoflöde eller täckning.
Någon installerar iPhone-versionen av en VPN-klient på en Mac från M-serien, den öppnas, den ansluter, och teamet beslutar att plattformsfrågan är avgjord. Det är den inte. Det som här skiljer avgjort från bara fungerande är skillnaden mellan ett apptillägg inne i en användarsession och ett systemtillägg med en global kontext. Apple stöder faktiskt pakettunnel-leverantörer i modellen iOS-appar på Mac och listar den ordningen separat från inbyggda macOS och Mac Catalyst. Vad det stödet betyder är smalare än det låter. Det säger att ordningen är tillåten, inte att en viss app gör det bra, eller att tunneln täcker det du antar.
Tre ordningar, en tabell
Tre ordningar spelar roll på en Mac och de är inte utbytbara. En inbyggd macOS-klient levererar ett systemtillägg, som körs i en global kontext och kan finnas innan någon loggar in. En iPhone-app på Apple Silicon levererar ett apptillägg, som körs inne i användarens session och slutar med den. Mac Catalyst sitter i samma paketeringsfamilj som telefonversionen, men är ett annat mål med sin egen utrullningsrad.
Jämförelsen nedan är den del av Apples utrullningsvägledning som är värd att memorera, eftersom den besvarar de flesta designfrågor före ett samtal med en leverantör.
| Arrangement | Provider packaging | Session context | Typical distribution |
|---|---|---|---|
| iOS app on Apple Silicon | App extension | User session only | Mac App Store |
| Native macOS client | System extension | Global, pre-login possible | Developer ID, notarised |
| Mac Catalyst | App extension | User session only | Mac App Store |
Läs paketeringskolumnen före marknadsföringssidan: den förutsäger vad som händer vid utloggning långt mer tillförlitligt än någon funktionslista.
Vad en lyckad förfrågan bevisar
Raden iOS-appar på Mac är en reellt stödd ordning och inte ett simulator-trick, och därför kommer frågan ständigt tillbaka. Den ärver också distribution via Mac App Store, så en app vars utgivare aldrig har slagit på Mac-tillgänglighet visas inte, hur tillmötesgående utvecklardokumentationen än är.
En fungerande anslutning bevisar att en förfrågan från en app nådde sitt mål. Den kartlägger inte webbläsarens resolver, de apparna som uteslöts, den andra adressfamiljen eller de lokala enheter som användaren fortfarande förväntar sig att nå. En pakettunnel bär det som dess rutter och omfattning säger, och den omfattningen kommer från appens konfiguration, inte från att tunneln finns.
Gapet är oftast täckning per app
En klient som dirigerar allt är lätt att beskriva och lätt att testa. En som omfattar en definierad applista behöver att dessa regler följs i den här utrullningen, inte bara i den inbyggda Mac-versionen. Åtkomst till lokala enheter, undantag för delad tunnel och allt som beror på ett menyradsobjekt som telefonversionen aldrig hade stöter på samma vägg.
Be om omfattningen skriftligt och testa sedan det andra fallet i stället för det första. Vem som helst kan visa en webbläsare som når internet genom tunneln.
Där de två skiljer sig i drift
Sessionens livslängd är den skarpaste skillnaden och den minst synliga i en demo. Apple dokumenterar apptillägg som körande i en användarkontext och avslutade när användaren loggar ut, så en Mac som startar till ett inloggningsfönster har ingen tunnel förrän någon loggar in. Om kravet omfattar en maskin som måste skyddas före autentisering kan telefonversionen inte uppfylla det, hur profilen än är skriven.
Allt annat är förhållandevis kosmetiskt: närvaro i menyraden, hur DNS visas, om appen får avsluta medan tunneln står kvar. Det är verkliga användbarhetsskillnader och inte arkitekturbeslut, så rangordna dem efter sessionsfrågan.
Bestäm i fast ordning
Ordna frågorna med avsikt: obemannad täckning först, omfattning per app andra, distribution tredje, gränssnittspolering sist. Bara en inbyggd klient med systemtillägg svarar på den första, och den når enheten via MDM och en hanterad profil. En iOS-app på Apple Silicon är ett rimligt svar när en person sitter vid maskinen, loggar in och vill ha tunneln för den sessionen.
Innan du binder dig, ställ tre konkreta frågor till utgivaren. Stöds pakettunnel-leverantören i utrullningen iOS-appar på Mac, gäller regler per app där, och vad händer vid utloggning. En leverantör som svarar på alla tre i ett meddelande känner sin utrullningsyta; en som bara svarar på den första beskriver en app som öppnas på en Mac.
Verifiera sedan på maskinen du ska stöda, med kontot och gatewayen du faktiskt kommer att använda. En telefonversion som ansluter till en testgateway på en enda bärbar dator är bevis, inte utrullning.