Ką IncludeAllNetworks veikia Mac IKEv2 profilyje?
Šis raktas apriboja srautą tuneliu, išvardydamas išimtis. Tai nėra numatytasis maršrutas, jis nepaiso EnforceRoutes, o šliuzas turi persiųsti tai, ką įsileidžia.
Natūraliame IKEv2 profilyje įdomus raktas yra ne žymimasis langelis, o IncludeAllNetworks, ir tai, ką jis keičia, yra apimtis to, ką sistema gali siųsti už tunelio ribų. Nustatykite jį į 1 ir macOS traktuos tunelį kaip beveik viso IP srauto kelią, atėmus išimčių rinkinį, kurį jis apibrėžia ir kurį galite išplėsti. Kadangi jis yra profilio žodyne, o ne meniu, jis taip pat nereiškia to, ką dauguma žmonių mano skaitydami frazę siųsti visą srautą.
Ką raktas keičia tinklo kamiene
Be jo tunelis elgiasi kaip tinklo sąsaja su prijungtais maršrutais. Numatytasis maršrutas per tą sąsają užfiksuoja didžiąją dalį srauto, o bet kuris konkretesnis maršrutas kitoje sąsajoje vis tiek laimi savo prefiksui. Tai įprastas maršrutizavimas, ir būtent todėl padalintas tuneliavimas įvyksta beveik atsitiktinai.
Kai raktas įjungtas, apimtis nustoja būti maršrutizavimo nuostata ir tampa politika dėl to, kuriam srautui leidžiama išeiti per ką nors kita nei tunelis. Sistema vis tiek turi pasiekti tinklą, kad ryšys išliktų gyvas, todėl politika ateina su išimtimis, o ne apsimeta, kad jų nėra. Jo įjungimas niekada nepalieka mašinos be jokio veikiančio kelio. Gaunate trumpesnį kelių sąrašą, nei tikėjotės, ir tas sąrašas yra dokumentuotas.
Praktinė pasekmė yra ta, kad maršruto pridėjimas nebepaaiškina rezultato. Jei paskirties vieta vis dar pasiekiama tiesiogiai, klausimas yra ne tai, kuris maršrutas laimėjo, o ar išimtis ją apima.
Išimtys yra nustatymo dalis
Apple dokumentuoja keletą išimčių prie pagrindinio rakto, apimančių vietinius tinklus, Apple Push Notification srautą, korinio ryšio paslaugas ir įrenginių ryšį. Kiekviena turi savo platformos ir versijos sąlygas, todėl tas pats profilis gali elgtis skirtingai įvairiuose macOS leidimuose.
Kai kurios iš šių išimčių yra būtinos. Srautas, reikalingas tinklo prieigai užmegzti ir palaikyti, įskaitant captive portal apdorojimą, turi būti leidžiamas, kitaip mašina gali likti niekuo neprisijungusi ir nepajėgi to ištaisyti.
Tada ateina sąmoningi pasirinkimai. Leisti namų spausdintuvą nėra tas pats sprendimas kaip leisti darbo išteklių prefiksą, ir abu skiriasi nuo APNs palikimo pasiekiamu, kad pranešimai ir toliau ateitų. Užsirašykite, kuriuos įjungėte, pačiame profilyje, o ne atraskite vėliau iš klaidų ataskaitos.
Kodėl tai nėra tas pats kaip numatytasis maršrutas
Numatytasis maršrutas yra maršrutizavimo lentelės įrašas, o maršrutizavimo lentelės pralaimi. Konkretesnis prefiksas jį nugali, prie programos susietas ryšys gali jį apeiti, o antroji sąsaja su geresne metrika gali perimti, niekam neliečiant VPN konfigūracijos.
Apple maršrutizavimo gairės aiškiai parodo skirtumą: įprastus numatytuosius galima pakeisti konkretesniais maršrutais, o platesnis apimties nustatymas apibrėžia, kokį srautą tunelis turi pernešti ir kas iš jo išimama. Vienas yra nuostata, kitas yra arčiau taisyklės.
Šis skirtumas taip pat keičia tai, kaip diagnozuojate nuotėkį. Su numatytuoju maršrutu tikrinate maršrutus ir metrikas. Su apimties raktu tikrinate profilio reviziją, įdiegtas išimtis ir nuo versijos priklausantį elgesį, nes maršrutizavimo lentelė yra anksčiau priimto sprendimo pasekmė.
EnforceRoutes yra kitas jungiklis
EnforceRoutes skamba kaip griežtesnė tos pačios idėjos versija, o žmonės krauna abu tikėdami, kad daugiau raktų reiškia didesnę aprėptį. Apple dokumentuoja, kad į jį neatsižvelgiama, kai IncludeAllNetworks įjungtas, todėl antrasis raktas nieko neduoda toje kombinacijoje.
Traktuokite jį kaip alternatyvą konfigūracijoms, kurios nenaudoja platesnės apimties, o ne kaip sustiprinimą. Jei negalite paaiškinti, ką kiekvienas raktas daro atskirai, abiejų pridėjimas tik apsunkina profilio peržiūrą.
Dėl ko turi sutarti šliuzas ir profilio savininkas
Kliento nustatymas negali priversti serverio persiųsti srautą, kuriam jis niekada nebuvo sukonfigūruotas. Šliuzas turi priimti sesiją, išdalinti adresus, suteikti grįžimo kelią prefiksams, kuriuos ketinate pasiekti, ir teikti DNS jūsų pasirinkta tvarka. Jei jis maršrutizuoja tik vieną prefiksą, plati kliento apimtis sukuria srautą, kuris atvyksta ir miršta. Viena užklausa į paskirties vietą už šliuzo maršrutų tai įrodo per minutę.
Programos valdomas tunelis vėl yra atskiras atvejis. Tiekėjas turi įgyvendinti arba atskleisti palaikomą elgesį; antro natūralaus IKEv2 profilio įdiegimas nepakeičia tunelio, kurį jau valdo kita programa, o IKEv2 raktas nėra OpenVPN nurodymas, kurį skaitytų kitas klientas.
Dabartiniam raktų sąrašui ir versijų sąlygoms skaitykite Apple IKEv2 naudingosios apkrovos nuorodą , o ne profilį, kurį kažkas nusikopijavo prieš metus.
Priimkite profilio reviziją kaip visumą
Prieš keisdami nuotoliniu būdu valdomą Mac, užsirašykite tikslinės macOS versijas, numatytą interneto išėjimą, privačius prefiksus, kurie turi likti pasiekiami, ir kiekvieną įjungiamą išimtį. Tada išsaugokite atkūrimo kelią, kuris nepriklauso nuo tunelio, kurį ketinate keisti.
Išbandykite naujas viešas užklausas, privačias užklausas, abi adresų šeimas ir vardų skiriamąją gebą, ir patikrinkite įdiegtą reviziją, o ne projektinį failą. Jei kažkas vis dar eina tiesiogiai, nuspręskite, ar tai dokumentuota išimtis, kitas ryšio kontekstas, ar tikra konfigūracijos klaida, ir pakeiskite vieną iš tų trijų, o ne plėskite nesusijusius raktus.