Mac VPN ક્લાયન્ટ: Network Extension વિરુદ્ધ System Extension
Network Extension એક ક્ષમતા છે અને System Extensions એક વિતરણ પદ્ધતિ છે: macOS નું મંજૂરી પગલું અને વાંચવાનો લોગ પસંદ કરવા બંનેને અલગ કરો.
Apple ના બે શબ્દો એવી રીતે વપરાય છે જાણે તેઓ એક જ વસ્તુનું નામ આપતા હોય, અને આ ગૂંચવણ લોકોને ખોટા સેટિંગ્સ પેનલ પર મોકલે છે. Network Extension એક ક્ષમતા વર્ણવે છે: VPN ટનલ, પ્રોક્સી અને ફિલ્ટર લાગુ કરવાની સમર્થિત રીત. System Extensions વપરાશકર્તા જગ્યાના એક્સ્ટેન્શન માટે વિતરણ અને મંજૂરીની પદ્ધતિ વર્ણવે છે. આધુનિક Mac VPN ક્લાયન્ટને સામાન્ય રીતે બંનેની જરૂર હોય છે, તેથી કોઈ એક લેબલ એકલું લક્ષણ સમજાવતું નથી. બંનેને અલગ કરવાથી કયો ઘટક તપાસવો અને કયા મંજૂરી પગલાની અપેક્ષા રાખવી તેનો જવાબ મળે છે.
બે પ્રશ્નો, એક લેબલ નહીં
ઘટક કેવી રીતે ઇન્સ્ટોલ થાય તે પૂછતા પહેલાં પૂછો કે તે શું કરે છે. ક્ષમતા નક્કી કરે છે કે કયો પ્રદાતા વર્ગ અસ્તિત્વમાં છે અને તેથી કયો કોડ તમારા પેકેટ સંભાળે છે. વિતરણ પદ્ધતિ નક્કી કરે છે કે બાઈનરી કેવી રીતે આવે છે, તેને કેવી રીતે મંજૂરી મળે છે અને તેની સ્થિતિ ક્યાં નોંધાય છે. પ્રોડક્ટ જૂની આવૃત્તિઓમાં સિસ્ટમ એક્સ્ટેન્શન વિતરણ કર્યા વિના પેકેટ ટનલ લાગુ કરી શકે છે, અને ટનલ સિવાય કંઈક બીજું લાગુ કરતું સિસ્ટમ એક્સ્ટેન્શન પણ વિતરણ કરી શકે છે.
કર્નલ એક્સ્ટેન્શન એ ત્રીજો શબ્દ છે જે લોકો ભેળવી દે છે. તે વિશેષાધિકારવાળો નેટવર્ક કોડ ચલાવવાની જૂની રીત હતી, તેને અલગ મંજૂરીઓની જરૂર પડતી હતી, અને Apple વર્ષોથી વિકાસકર્તાઓને તેનાથી દૂર કરી રહ્યું છે. આધુનિક ક્લાયન્ટ પર કર્નલ એક્સ્ટેન્શન મંજૂરીની રીત લાગુ કરવાથી એવા સંવાદમાં સમય વેડફાય છે જે ક્યારેય દેખાશે નહીં.
તમે ચલાવો છો તે macOS આવૃત્તિ માટે વેન્ડરની જમાવટ નોંધો વાંચો અગાઉની આવૃત્તિની ફોરમ પોસ્ટને બદલે. આર્કિટેક્ચર એક કરતાં વધુ વાર બદલાયું છે, અને સૂચનાઓ ઝડપથી જૂની થાય છે. કર્નલ એક્સ્ટેન્શન મંજૂરીનો ઉલ્લેખ કરતી નોંધ પ્રોડક્ટના બીજા યુગનું વર્ણન કરે છે.
Network Extension શું પ્રદાન કરે છે
ફ્રેમવર્ક સામાન્ય નેટવર્કિંગ કાર્યો માટે પ્રદાતા પ્રકારો પ્રદાન કરે છે: VPN ટ્રાફિક માટે પેકેટ ટનલ, એપ્લિકેશન દીઠ પ્રવાહ માટે એપ પ્રોક્સી, ટ્રાફિક તપાસવા માટે સામગ્રી ફિલ્ટર અને રિઝોલ્વર વર્તન માટે DNS પ્રોક્સી હેન્ડલિંગ. પ્રદાતા પ્રકાર નક્કી કરે છે કે એક્સ્ટેન્શન શું કરી શકે છે, અને બે પ્રદાતા વિતરણ કરતું ક્લાયન્ટ બે અલગ કામ કરતું હોઈ શકે છે.
ડાયગ્નોસિસ દરમિયાન આ મહત્ત્વનું છે કારણ કે એક જ કનેક્ટિવિટી લક્ષણ ટનલ, ફિલ્ટર અથવા DNS પ્રોક્સીમાંથી આવી શકે છે. વેબસાઇટ અવરોધવી ફિલ્ટરનો નિર્ણય છે, ખાનગી સબનેટ સુધી ન પહોંચવું સામાન્ય રીતે ટનલનો નિર્ણય છે, અને ખોટું સરનામું ઉકેલવું સામાન્ય રીતે રિઝોલ્વરનો નિર્ણય છે. પ્રદાતા પ્રકારનું નામ આપવાથી કોઈપણ લોગ વાંચતા પહેલાં શોધ સંકુચિત થાય છે.
ફ્રેમવર્કમાં કંઈપણ ગોપનીયતાની સ્થિતિ સૂચવતું નથી. વપરાશકર્તા જગ્યાના એક્સ્ટેન્શન પાસે હજી પણ પરવાનગીઓ, રૂપરેખાંકન અને પાછળ એક ઓપરેટર હોય છે, તેથી આર્કિટેક્ચરને વિશ્વાસ સંકેત નહીં પણ અમલીકરણની વિગત તરીકે ગણો. પૂછો કે અંતિમ બિંદુ કોણ ચલાવે છે અને તે શું એકત્ર કરવા માટે ગોઠવાયેલું છે.
System Extensions શું બદલે છે
આ પદ્ધતિ વિશેષાધિકારવાળા કોડને કર્નલમાંથી વપરાશકર્તા જગ્યામાં ખસેડે છે, અને ઓપરેટિંગ સિસ્ટમ સંમતિ કેવી રીતે માંગે છે તે બદલે છે. સક્રિયકરણ ઇન્સ્ટોલેશનથી અલગ પગલું છે, અને વપરાશકર્તા અથવા MDM પ્રોફાઇલે તેને મંજૂરી આપવી પડે છે. ઇન્સ્ટોલ થાય છે પણ ક્યારેય સક્રિય ન થતું ક્લાયન્ટ Applications ફોલ્ડરમાં હાજર દેખાય છે અને કનેક્ટિવિટી માટે કંઈ કરતું નથી.
સ્થિતિ એપ્લિકેશન નહીં પણ સિસ્ટમ નોંધે છે, જે ઉપયોગી છે કારણ કે તેને પૂછી શકાય છે. નીચેનો આદેશ સિસ્ટમને જાણ હોય તેવા એક્સ્ટેન્શન અને તેમની સક્રિયકરણ સ્થિતિની યાદી આપે છે.
systemextensionsctl list
scutil --nc list
પ્રથમ આદેશ જવાબ આપે છે કે ઘટક ઇન્સ્ટોલ અને સક્રિય છે કે નહીં. બીજો આદેશ સિસ્ટમ પાસેની VPN રૂપરેખાંકનોની યાદી આપે છે, જે અલગ પ્રશ્ન છે અને ઘણી વાર એ જ મહત્ત્વનો હોય છે જ્યારે કનેક્શન પ્રોફાઇલ તૂટેલું નહીં પણ ખૂટતું હોય છે.
આપેલ લક્ષણ માટે કયું તપાસવું
સેટિંગ્સ પેનલ ખોલતા પહેલાં લક્ષણને સ્તર સાથે મેળવો. ખૂટતું રૂપરેખાંકન પ્રોફાઇલનો પ્રશ્ન છે, ઇન્સ્ટોલ થયેલું પણ નિષ્ક્રિય ઘટક વિતરણનો પ્રશ્ન છે, અને ટ્રાફિક પસાર કરી શકતું નથી તેવું સક્રિય ઘટક ક્ષમતાનો પ્રશ્ન છે.
| Symptom | First place to look |
|---|---|
| No VPN entry at all | Configuration profile or scutil list |
| Client installed, nothing happens | Extension activation state |
| Tunnel up, private host unreachable | Tunnel provider routes and policy |
| One app blocked, others fine | Filter or app proxy provider |
છેલ્લી બે પંક્તિઓ માટે લોગ સ્ટ્રીમ સહિયારો પુરાવો છે. નેટવર્ક એક્સ્ટેન્શન સબસિસ્ટમ વાંચવાથી ખબર પડે છે કે કયા પ્રદાતાએ પ્રવાહ સંભાળ્યો, અને ફિલ્ટરનો નિર્ણય ટનલ નિષ્ફળતાથી અલગ દેખાય છે, પછી ભલે વપરાશકર્તા બંનેને VPN તૂટેલું હોવાનું વર્ણવે.
log show --last 10m --predicate 'process == "nesessionmanager"'
મેનુ બારમાં આઇકોન છે તેથી એક્સ્ટેન્શન સક્રિય છે તેવું તારણ ન કાઢો. આઇકોન નિષ્ફળ સક્રિયકરણ પછી પણ ટકે છે, અને જૂનું આઇકોન સપોર્ટ કૉલ ખોટી જગ્યાએ શરૂ થવાના સૌથી સામાન્ય કારણોમાંનું એક છે. તેના બદલે સક્રિયકરણ સ્થિતિ વાંચો, કારણ કે સિસ્ટમ તે જ નોંધે છે.
મંજૂરી, MDM અને કર્નલ એક્સ્ટેન્શનની દંતકથા
સંચાલિત Mac પર મંજૂરીનું પગલું MDM પ્રોફાઇલનું છે, અને System Settings માં Allow પર ક્લિક કરતો વપરાશકર્તા હજી પણ અપડેટ ન થયેલી નીતિ દ્વારા અવરોધાઈ શકે છે. વપરાશકર્તાને કંઈપણ ક્લિક કરવા કહેતા પહેલાં ડેસ્કટોપ ટીમને પૂછો કે તે ફ્લીટ માટે કઈ પદ્ધતિ એક્સ્ટેન્શનને મંજૂરી આપે છે.
અસંચાલિત Mac માટે મંજૂરીની વિનંતી એક વાર દેખાય છે અને એક્સ્ટેન્શન ફરીથી ઇન્સ્ટોલ ન થાય ત્યાં સુધી નકાર કાયમી હોઈ શકે છે. તે વર્તન તે મશીન સમજાવે છે જ્યાં OS અપગ્રેડ પહેલાં ક્લાયન્ટ કામ કરતું હતું અને હવે એવી કનેક્શનની જાણ કરે છે જે ક્યારેય સ્થપાતું નથી.
તમે જમાવો છો તે ક્લાયન્ટ માટે પ્રદાતા પ્રકાર, સક્રિયકરણ સ્થિતિ અને મંજૂરી પદ્ધતિ લખો. તે ત્રણ તથ્યો ક્ષમતા વિરુદ્ધ વિતરણની ચર્ચા ફરી ખોલ્યા વિના Mac VPN વિશેના મોટાભાગના ભાવિ પ્રશ્નોના જવાબ આપે છે.