আপনার Mac-এ VPN এক্সটেনশন কি সক্রিয়? দেখার তিনটি জায়গা
সক্রিয়, ইনস্টল করা এবং সংযুক্ত — macOS-এ এগুলো আলাদা অবস্থা। পুনরায় ইনস্টল করার আগে এক্সটেনশন তালিকা, CLI আউটপুট এবং ক্লায়েন্টের নিজস্ব স্ট্যাটাস মিলিয়ে দেখুন।
মেনু বার বলছে সংযুক্ত, অথচ এক্সটেনশন তালিকা উপাদানটিকে এখনও সক্রিয় নয় বলে চিহ্নিত করছে। দুটি পাঠই একই Mac থেকে আসে, এবং কোনোটিই মিথ্যা বলে না: তারা ভিন্ন ভিন্ন তথ্য বর্ণনা করে। macOS একটি VPN ক্লায়েন্টের জন্য অন্তত তিনটি আলাদা অবস্থা রাখে, আর সাপোর্ট থ্রেডগুলো সেগুলোকে একটি বাক্যে মিলিয়ে ফেলে, তাই পরামর্শটি পুনরায় ইনস্টলের মধ্যে দোল খায়। কোন অবস্থাটি আসলে আপনার অনুপস্থিত তা জানলে দুপুরভর অনুমানের খেলা দুই মিনিটের পরীক্ষায় বদলে যায়।
সেই অবস্থাগুলোর মালিক যেমন আলাদা, অবস্থানও তেমন আলাদা। একটি অপারেটিং সিস্টেমের এক্সটেনশন রেজিস্ট্রির, একটি ডিভাইস যে নীতির অধীন তার, আর একটি ক্লায়েন্টের নিজের সেশনের। মালিকরা আলাদা হওয়ায় একটিতে প্রয়োগ করা সমাধান প্রায়ই অন্য দুটিকে বদলায় না।
এক নামে ডাকা তিনটি অবস্থা
| State | Where it lives | What it does not prove |
|---|---|---|
| installed and activated | the system extension registry | that any tunnel exists |
| permitted by policy | a configuration profile or a one-time user approval | that the vendor's profile is configured |
| connected | the client's own session state | that traffic takes the intended route |
আপনি যে ক্রমে সেগুলো পড়বেন তা তালিকার চেয়েও গুরুত্বপূর্ণ: রেজিস্ট্রি দিয়ে শুরু করুন, কারণ যে উপাদান কখনো সক্রিয় হয়নি তা সংযুক্ত হতে পারে না; তারপর নীতি পড়ুন, যা ঠিক করে সক্রিয়করণ আদৌ সম্ভব কি না; তারপর ক্লায়েন্ট পড়ুন, যেটি তিনটির মধ্যে একমাত্র সেশন বর্ণনা করে। ওই ক্রমে উপরের কোনো অমিল নিচের প্রতিটি লক্ষণ ব্যাখ্যা করে, আর নিচের অমিল উপরের দুটিকে অক্ষত রাখে।
পার্থক্যের একটি সুনির্দিষ্ট উদাহরণ: সক্রিয় হিসেবে পড়া রেজিস্ট্রি এন্ট্রি এবং সংযোগ করতে অক্ষম ক্লায়েন্ট এক্সটেনশনের দিকে নয়, প্রোফাইল বা সার্ভারের দিকে ইশারা করে। বিপরীত সমন্বয়, অর্থাৎ কিছু না দেখানো রেজিস্ট্রির পাশে সক্রিয় ক্লায়েন্ট, সাধারণত বোঝায় আপনি যে অ্যাপ দেখছেন সেটিই ট্র্যাফিক বহনকারী অ্যাপ নয়। কিছু স্পর্শ করার আগে আপনি কোন সমন্বয় দেখেছেন তা লিখে রাখুন।
আইকনকে না বিশ্বাস করে এক্সটেনশন খুঁজে বের করা
বর্তমান সংস্করণগুলো নেটওয়ার্ক এক্সটেনশনগুলোকে সিস্টেম সেটিংস, সাধারণ, লগইন আইটেম ও এক্সটেনশন-এর অধীনে তালিকাভুক্ত করে। পণ্য বা তার প্রকাশকের নামে থাকা এন্ট্রিটি খুঁজুন এবং মেনু বারের আইকনের বদলে তার পাশের সুইচটি পড়ুন। macOS সংস্করণের মধ্যে লেবেল ও অবস্থান বদলেছে, তাই পুরোনো নিবন্ধের স্ক্রিনশটের বদলে আপনার সংস্করণের জন্য বিক্রেতার নির্দেশনা অনুসরণ করুন। সম্পূর্ণ অনুপস্থিত এন্ট্রি মানে উপাদানটি কখনো ইনস্টল হয়নি, আর প্রোফাইল সম্পাদনা করে সেটি হাজির হবে না।
systemextensionsctl list
log show --last 10m --predicate 'subsystem == "com.apple.networkextension"' --style compact
প্রথম কমান্ডটি সবচেয়ে দ্রুত উপায় দেখতে কী ইনস্টল আছে এবং প্রতিটি এক্সটেনশন নিজেকে সক্রিয় বলে জানায় কি না। দ্বিতীয়টি দেখায় কেন সক্রিয়করণ প্রত্যাখ্যাত হচ্ছে, কারণ প্রত্যাখ্যান সাধারণত নীতি বা স্বাক্ষর-সংক্রান্ত অভিযোগ হিসেবে আসে যা কখনো ব্যবহারকারী ইন্টারফেসে পৌঁছায় না। কিছু বদলানোর আগে প্রত্যাখ্যানের লেখাটি পড়ুন: লগ লাইনটি উপাদানের নাম এবং প্রায়ই কারণ বলে দেয়, যা ঠিক একটি সাপোর্ট কেসের দরকার। আপনি গুরুত্বপূর্ণ মনে করা বাক্যাংশটি নয়, পুরো লাইনটি কপি করুন, কারণ সংস্করণ ও শনাক্তকারী তার দুই বিপরীত প্রান্তে থাকে।
ক্লায়েন্ট যা স্বীকার করে কিন্তু তালিকা করে না
এক্সটেনশন নিশ্চিত হওয়ার পর ক্লায়েন্টকে জিজ্ঞাসা করুন তার একটি প্রোফাইল ও একটি সেশন আছে কি না, কারণ সংযোগহীন সংরক্ষিত প্রোফাইল একটি কনফিগারেশন সমস্যা, আর ট্র্যাফিক বহন না করা সংযোগ একটি রাউটিং বা নীতি সমস্যা। তিনটিকে এক হিসেবে দেখলে আপনি এমন একটি উপাদান পুনরায় ইনস্টল করতে ফিরে যান যা শুরু থেকেই কাজ করছিল।
scutil --nc list
scutil --nc status "Work VPN"
তালিকা কনফিগার করা সার্ভিস ও তাদের সংযোগ অবস্থা দেখায়; স্ট্যাটাস কলে একটি নামযুক্ত সার্ভিসের অবস্থা ও তার শেষ ত্রুটি দেখায়। পুনরায় ইনস্টল করার আগে ওই লেখা ও macOS সংস্করণ সংরক্ষণ করুন, কারণ পুনরায় ইনস্টল প্রমাণ নষ্ট করে এবং প্রায়ই একই ব্যর্থতা পুনরুৎপাদন করে।
যখন নীতিই টগলের মালিক
একটি ব্যবস্থাপিত Mac-এ একটি কনফিগারেশন প্রোফাইল এক্সটেনশনটিকে নির্দিষ্ট অবস্থায় ধরে রাখতে পারে, এবং তখন সুইচটি নকশা অনুযায়ী ধূসর হয়ে যায়। অনুপলব্ধ টগল একটি নীতি-বিবৃতি, এড়িয়ে যাওয়ার মতো কোনো বাগ নয়। এটি পেতে প্রোফাইল বা ব্যবস্থাপনা নিবন্ধন মুছে ফেলা ডিভাইসের নিরাপত্তা অবস্থান বদলায়, পরের চেক-ইনে ফিরিয়ে দেওয়া হয়, এবং এমন মেশিন রেখে যায় যা নিজেকে সম্মতিপূর্ণ বলে জানায় অথচ তাকে সম্মতিপূর্ণ করা নিয়ন্ত্রণগুলো হারিয়েছে। সেই ফলটি মূল সমস্যার চেয়েও খারাপ, কারণ এটি কারণ ও লক্ষণ দুটোই লুকায়।
এক্সটেনশন শনাক্তকারী, প্রত্যাখ্যানের হুবহু লেখা ও সংস্করণ নিয়ে অনুরোধটি প্রশাসকের কাছে নিয়ে যান। একটি ব্যবস্থাপিত ডিপ্লয়মেন্ট সাধারণত কয়েক মিনিটে কেন্দ্রীয়ভাবে একটি নেটওয়ার্ক এক্সটেনশন অনুমোদন করতে পারে, যা ফাঁকি দেওয়ার চেয়ে দ্রুত এবং পরে নিরীক্ষাযোগ্য।
প্রকৃত অ্যাপ্লিকেশনে সমাধান প্রমাণ করা
যেকোনো সমর্থিত সংশোধনের পর আবার সংযোগ করুন এবং মেনু বারের ব্যাজ নয়, যে অ্যাপ্লিকেশনের জন্য VPN রয়েছে সেটি পরীক্ষা করুন। তারপর নিশ্চিত করুন যে টানেলের বাইরে থাকা উচিত ট্র্যাফিক সত্যিই বাইরে থাকে, কারণ যে সমাধান নিঃশব্দে সবকিছু টানেলের ভেতর দিয়ে পাঠায় তা আপনার ইচ্ছাকৃত পরিবর্তন থেকে ভিন্ন। প্রকৃত অ্যাপ্লিকেশনে দুই মিনিটের পরীক্ষা এমন ব্যাজের চেয়ে বেশি মূল্যবান যা আপনি পুনরুৎপাদন করতে পারেন না।
ওই তালিকায় থাকার সময় একটি সতর্কতা: কনটেন্ট ফিল্টারও একটি নেটওয়ার্ক এক্সটেনশন। যখন একটি সাইট ব্যর্থ হয়, প্যানেলের প্রতিটি এক্সটেনশন নিষ্ক্রিয় করা একটি ভোঁতা পদক্ষেপ যা অন্য অ্যাপ্লিকেশনের জন্য অসম্পর্কিত ফিল্টারিং ভেঙে দেয় এবং যে উপাদানগুলো আপনি তুলনা করতেন সেগুলো সরিয়ে পরবর্তী রোগনির্ণয় কঠিন করে তোলে। স্পর্শ করার আগে প্রকাশক ও ভূমিকা দিয়ে এক্সটেনশনটি চিহ্নিত করুন, এবং তিনটি অবস্থার মধ্যে কোনটি সত্যিই ভুল ছিল তা লিখে রাখুন।