ইনস্টলার চলে, উইন্ডো খোলে এবং সাইন-ইন প্রম্পট দেখা যায়, তাই মাইগ্রেশন শেষ বলে মনে হয়। তারপর ক্লায়েন্ট যখন তার ভার্চুয়াল অ্যাডাপ্টার প্রয়োজন হয় সেই বিন্দুতে টানেল ব্যর্থ হয়, এবং ত্রুটিতে শংসাপত্রের বদলে একটি পরিষেবা বা ড্রাইভারের কথা বলা হয়। Arm-এ Windows-এ এই ধারাবাহিকতা সাধারণ, কারণ সামঞ্জস্যের নিয়ম ব্যবহারকারী-মোড কোড ও কার্নেল-মোড কোডের মধ্যে বদলে যায়। ল্যাপটপ অনুমোদনের জন্য দ্বিতীয় পরীক্ষা দরকার, প্রথমটি নয়।

পুরো প্যাকেজের আর্কিটেকচার জিজ্ঞাসা করুন, তারপর মেশিনে তা যাচাই করুন।

যে অংশটি অনুকরণে ঢাকা পড়ে না

Arm-এ Windows ব্যবহারকারী-মোডে থাকা অবস্থায় অনুকরণের মাধ্যমে x86 এবং x64 অ্যাপ্লিকেশন চালাতে পারে। কার্নেল-মোড উপাদান এই সুবিধা পায় না: লোড হতে হলে ড্রাইভারকে Arm64-এর জন্য নির্মিত হতে হবে। Microsoft এই সীমারেখা নথিভুক্ত করে, এবং VPN ক্লায়েন্টরা ঠিক এখানেই থাকে, কারণ তাদের অনেকেই ভার্চুয়াল নেটওয়ার্ক অ্যাডাপ্টার বা ফিল্টার ড্রাইভার ইনস্টল করে।

তাই একটি প্যাকেজ কাজ করা ইন্টারফেস দেখাতে পারে এবং তবুও অব্যবহারযোগ্য থাকতে পারে। ব্যর্থতা দেখা যায় অনুপস্থিত অ্যাডাপ্টার, চালু না হওয়া পরিষেবা বা কখনও প্রতিষ্ঠিত না হওয়া টানেল হিসেবে। এখানেই পাইলট থামা উচিত। সাইন-ইন স্ক্রিন কাজ করা ডেটা পথের প্রমাণ নয়।

মাইগ্রেশন নির্ধারণ করে এমন তিনটি শর্ত

প্রথমটি প্যাকেজ। x64 বিল্ড ও Arm64 বিল্ড উভয়কেই 64-বিট বলা হয় এবং এগুলি বিনিময়যোগ্য নয়, তাই শুধু Windows 64-বিট হিসেবে বর্ণিত ডাউনলোড Arm ডিভাইস সম্পর্কে কিছুই প্রমাণ করে না। ওই আর্কিটেকচারের জন্য ভেন্ডরের সমর্থিত ইনস্টলারই একমাত্র গ্রহণযোগ্য সূচনা বিন্দু।

দ্বিতীয়টি বাকি প্রয়োজনীয় উপাদান। ডিভাইস পশ্চার পরীক্ষা, ব্রাউজার-ভিত্তিক প্রমাণীকরণ সহায়ক এবং স্মার্ট-কার্ড মিডলওয়্যার — প্রত্যেকের নিজস্ব আর্কিটেকচার প্রয়োজন হতে পারে, আর কেবল টানেলের সাফল্য প্রমাণ করে না যে সংস্থার অ্যাক্সেস নীতি পূরণ হয়েছে।

তৃতীয়টি গেটওয়ে এবং তার সমর্থিত ক্লায়েন্ট সেট। অনুমোদিত ক্লায়েন্টের Arm বিল্ড না থাকলে ভিন্ন ক্লায়েন্ট কেবল তখনই গ্রহণযোগ্য যখন গেটওয়ের মালিক ওই ক্লায়েন্টের প্রোটোকল, তার প্রমাণীকরণ পদ্ধতি ও তার নীতি-আচরণ সমর্থন করে। Windows-এর অন্তর্নির্মিত VPN প্রোফাইল কেবল দুটিকেই IPsec বলা হয় বলে কোনো মালিকানাধীন ক্লায়েন্টের বিকল্প হতে পারে না।

ডিভাইসে আর্কিটেকচার পড়ুন

মেশিনটি কী তা নিশ্চিত করুন, তারপর প্যাকেজ আসলে কোন ড্রাইভার ইনস্টল করেছে তা দেখুন। তালিকা করতে এক মিনিট লাগে এবং "64-বিট" এর অর্থ নিয়ে বিতর্ক ঠেকায়।

Get-CimInstance Win32_OperatingSystem | Select-Object OSArchitecture
$env:PROCESSOR_ARCHITECTURE
pnputil /enum-drivers | Select-String -Pattern 'vpn|tap|wintun' -Context 0,3
Get-NetAdapter | Format-Table Name,InterfaceDescription,DriverProvider

যদি অ্যাডাপ্টার তালিকায় ক্লায়েন্টের জন্য কিছু না দেখায়, বা ড্রাইভার এন্ট্রি আর্কিটেকচার অমিল জানায়, মাইগ্রেশন সেখানেই থামে। পুরোনো কনটেইনারে Arm64 ড্রাইভার ফেলে দেওয়া ভেন্ডরের সমর্থিত কাজ নয়, আর সামঞ্জস্য-মোড সেটিংস x64 কার্নেল ড্রাইভারকে রূপান্তর করে না।

ইনস্টল করা সংস্করণটি Arm-এর জন্য ভেন্ডরের সমর্থিত তালিকার সঙ্গে তুলনা করুন, এবং ইনস্টলারটি ভেন্ডরের বদলে অভ্যন্তরীণ রিপোজিটরি থেকে এলে পার্থক্য টুকে রাখুন।

কাজের চাপ অনুমোদন করুন, লগইন স্ক্রিন নয়

পাইলট চালান, আগের কাজ করা ডিভাইসটি ফলব্যাক হিসেবে হাতের কাছে রেখে। প্রোফাইল প্রস্তুতি, অভীষ্ট পরিচয় এবং যেকোনো ডিভাইস পরীক্ষা যাচাই করুন, তারপর কেবল টানেলের অবস্থা নয়, ব্যক্তিগত অ্যাপ্লিকেশনটি চালিয়ে দেখুন।

ব্যক্তিগত DNS, প্রয়োজনীয় রুট ও ঠিকানা পরিবার, নেটওয়ার্ক পরিবর্তনের পরে পুনঃসংযোগ এবং নির্দিষ্ট বিচ্ছিন্ন অবস্থা অন্তর্ভুক্ত করুন। ক্লায়েন্ট ও উপাদানের সংস্করণ ফলাফলের সঙ্গে লিখে রাখুন, কারণ পরবর্তী আপডেট আবার একই প্রশ্ন করবে।

সবশেষে, এই প্ল্যাটফর্মের জন্য সমর্থিত আপডেট ও অপসারণের পথ আছে কি না নিশ্চিত করুন। যে প্যাকেজ কেবল অনথিভুক্ত প্রতিস্থাপনের পরে কাজ করে, তা পরবর্তী সংস্করণে একই মাইগ্রেশন সমস্যা তৈরি করে, সমাধানের কম সময় নিয়ে।

সম্পর্কিত নিবন্ধ