Què fa IncludeAllNetworks en un perfil IKEv2 del Mac?
La clau limita el trànsit al túnel amb excepcions anomenades. No és una ruta per defecte, ignora EnforceRoutes i la passarel·la ha de reenviar el que admet.
En un perfil IKEv2 natiu, la clau interessant no és una casella, és IncludeAllNetworks, i el que canvia és l'abast del que el sistema pot enviar fora del túnel. Posa-la a 1 i el macOS tracta el túnel com el camí per a pràcticament tot el trànsit IP, menys un conjunt d'excepcions que defineix i que pots ampliar. Com que viu en un diccionari de perfil i no en un menú, tampoc no vol dir el que la majoria de la gent suposa quan llegeix la frase envia tot el trànsit.
Què canvia la clau dins de la pila de xarxa
Sense ella, el túnel es comporta com una interfície de xarxa amb rutes adjuntes. Una ruta per defecte a través d'aquesta interfície captura la major part del trànsit, i qualsevol ruta més específica en una altra interfície encara guanya pel seu propi prefix. Això és encaminament normal, i per això el túnel dividit passa gairebé per accident.
Amb la clau activada, l'abast deixa de ser una preferència d'encaminament i es converteix en una política sobre quin trànsit pot sortir per qualsevol cosa que no sigui el túnel. El sistema encara ha d'arribar a la xarxa per mantenir la connexió viva, així que la política ve amb excepcions en lloc de fingir que no existeixen. Activar-la no deixa mai la màquina sense cap camí funcional. El que obtens és una llista de camins més curta del que suposaves, i aquesta llista està documentada.
La conseqüència pràctica és que afegir una ruta ja no explica el resultat. Si una destinació encara s'assoleix directament, la pregunta no és quina ruta ha guanyat sinó si una excepció la cobreix.
Les excepcions formen part de la configuració
Apple documenta diverses exclusions al costat de la clau principal, que cobreixen xarxes locals, trànsit d'Apple Push Notification, serveis cel·lulars i comunicació de dispositius. Cadascuna té les seves condicions de plataforma i versió, així que el mateix perfil pot comportar-se diferent entre versions del macOS.
Algunes d'aquestes exclusions són intrínseques. El trànsit necessari per establir i mantenir l'accés a la xarxa, inclòs el maneig del captive portal, s'ha de permetre, o la màquina pot acabar connectada a res i incapaç de solucionar-ho.
Després vénen les decisions deliberades. Permetre una impressora de casa no és la mateixa decisió que permetre un prefix de recurs de feina, i totes dues difereixen de deixar APNs accessible perquè les notificacions continuïn arribant. Anota quines has activat, al mateix perfil, en lloc de descobrir-les més tard a partir d'un informe d'error.
Per què no és el mateix que una ruta per defecte
Una ruta per defecte és una entrada de la taula d'encaminament, i les taules perden. Un prefix més específic la supera, una connexió limitada a una aplicació la pot evitar, i una segona interfície amb una mètrica millor pot prendre el relleu sense que ningú toqui la configuració de la VPN.
La guia d'encaminament d'Apple fa explícita la distinció: les rutes per defecte ordinàries es poden substituir per rutes més específiques, mentre que la configuració d'abast més ampli defineix quin trànsit ha de portar el túnel i què se'n deixa fora. Una és una preferència, l'altra és més a prop d'una regla.
Aquesta diferència també canvia com diagnostiques una fuita. Amb una ruta per defecte inspecciones rutes i mètriques. Amb la clau d'abast inspecciones la revisió del perfil, les excepcions instal·lades i el comportament específic de la versió, perquè la taula d'encaminament va després d'una decisió presa abans.
EnforceRoutes és un altre botó
EnforceRoutes sona com la versió estricta de la mateixa idea, i la gent apila les dues amb la creença que més claus signifiquen més cobertura. Apple documenta que s'ignora quan IncludeAllNetworks està activat, així que la segona clau no compra res en aquesta combinació.
Tracta-la com una alternativa per a configuracions que no fan servir l'abast més ampli, no com un reforç. Si no pots explicar què fa cada clau per si sola, afegir totes dues només fa el perfil més difícil de revisar.
Què han d'acordar la passarel·la i el propietari del perfil
Una configuració de client no pot fer que un servidor reenviï trànsit per al qual mai no s'ha configurat. La passarel·la ha d'acceptar la sessió, repartir adreces, proporcionar un camí de tornada per als prefixos que vols assolir i servir DNS en l'ordre que hagis triat. Si només encamina un prefix, l'abast ampli del client produeix trànsit que arriba i mor. Una sol·licitud a una destinació fora de les rutes de la passarel·la ho demostra en un minut.
Un túnel propietat d'una aplicació és encara un cas a part. El proveïdor ha d'implementar o exposar el comportament suportat; instal·lar un segon perfil IKEv2 natiu no modifica un túnel que ja gestiona una altra aplicació, i una clau IKEv2 no és una directiva d'OpenVPN que llegirà un altre client.
Per a la llista actual de claus i les condicions de versió, llegeix la referència de càrrega IKEv2 d'Apple en lloc d'un perfil que algú va copiar fa anys.
Accepta una revisió del perfil com un tot
Abans de canviar un Mac administrat remotament, anota les versions de macOS objectiu, la sortida a internet prevista, els prefixos privats que han de romandre accessibles i cada exclusió que activis. Després conserva un camí de recuperació que no depengui del túnel que estàs a punt de modificar.
Prova sol·licituds públiques noves, sol·licituds privades, les dues famílies d'adreces i la resolució de noms, i comprova la revisió instal·lada en lloc del fitxer de disseny. Si alguna cosa encara va directa, decideix si és una excepció documentada, un context de connexió diferent o un error real de configuració, i canvia una d'aquestes tres coses en lloc d'ampliar claus no relacionades.