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

চার মালিক, চার ভিন্ন পাঠক

চার ভিন্ন মালিক একই রকম দেখতে ফাইল লেখে। ব্যবহারকারী-ভিত্তিক নেটিভ সংযোগ বর্তমান ব্যবহারকারীর ফোন বুক-এ ঢোকে, আর সব-ব্যবহারকারীর সংযোগ ঢোকে মেশিন-ব্যাপী স্টোরে যা হোস্টের প্রতিটি অ্যাকাউন্ট পড়তে পারে। একটি RRAS সার্ভার তার নিজের রাউটিং ভূমিকার জন্য ডিমান্ড-ডায়াল কনফিগারেশন রাখে, আর কোনো তৃতীয় পক্ষের ক্লায়েন্ট নিজস্ব ফরম্যাট রাখতে পারে যা শুধু এক্সটেনশনটি ভাগ করে। একই এক্সটেনশন, চার পাঠক, চার সেট নিয়ম।

মিলে যাওয়া প্রদর্শন-নাম দুটি ভুক্তিকে একই ভুক্তি বানায় না, আর তাদের মধ্যে একটি কী কপি করা ধরে নেয় একটি ম্যানেজার এমন কিছু মানবে যা সে কখনো ডকুমেন্ট করেনি। মালিক এও ঠিক করে কে ফাইলটি বদলাতে পারে: ব্যবহারকারী-ভিত্তিক প্রোফাইল ব্যবহারকারীর পছন্দ, মেশিন-ব্যাপী প্রোফাইল প্রশাসনিক সিদ্ধান্ত, আর সার্ভারের ডিমান্ড-ডায়াল ভুক্তি হলো নিজস্ব পরিবর্তন-নিয়ন্ত্রণাধীন রাউটিং কনফিগারেশন। এতে মালিকানা-সংক্রান্ত ভুল ফরম্যাটিং সমস্যা হওয়ার আগেই অনুমতি সমস্যা হয়ে ওঠে।

সংযোগটি যে উপাদান পরিচালনা করে তার দিকে তাকিয়ে মালিক নির্ধারণ করুন, ফাইলের দিকে নয়। ফাইল একটি নিদর্শন; পরিচালক উপাদানই ঠিক করে সে কোন কী কখন পড়ে। প্রথমে নিদর্শন আর পরে ম্যানেজার পড়াই হলো সেই পথ যেখানে মানুষ এমন একটি ক্ষেত্র সম্পাদনা করে ফেলে যা কিছুই জিজ্ঞাসা করে না।

প্রকাশিত ফরম্যাট কোথায় আপনার ফাইল বর্ণনা করা থামায়

RRAS ম্যানেজমেন্ট প্রোটোকলে ফোন বুক হলো সাধারণ টেক্সট যা একটি ম্যানেজমেন্ট ক্লায়েন্ট লেখে আর রাউটিং সেবা পড়ে, তাই MS-RRASM স্পেসিফিকেশন সার্ভারের জন্য ডিমান্ড-ডায়াল সেটিংস বর্ণনা করে, ডেস্কটপ প্রোফাইলের জন্য নয়। কাঠামোই সেই অংশ যা সমতল পাঠ ধ্বংস করে। একটি ভুক্তিতে একাধিক মিডিয়া ব্লক থাকতে পারে, প্রতিটিতে ডিভাইস ব্লক থাকে যা আবার আলাদা নম্বরের ব্লক রাখে। তাই একই কী একাধিক জায়গায় ভিন্ন অর্থে দেখা দিতে পারে।

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

OwnerWhat reads the fileWhat a key means there
Per-user native connectionThe user's own connection managerA property of that user profile
All-user native connectionThe machine-wide connection storeA property shared by everyone on the host
RRAS demand-dialThe RRAS service, using the documented hierarchyA field inside a media, device or number section
Third-party clientThat vendor's own parserWhatever that vendor documents, if anything

সারণিটি স্পেসিফিকেশন নয়, পাঠ-সহায়ক: এটি বলে কোন পাঠককে জিজ্ঞাসা করবেন, আর পাঠক বলে ক্ষেত্রটির অর্থ কী। যখন সেই পাঠক তৃতীয় পক্ষের পার্সার, তখন সৎ উত্তর হতে পারে যে কোনো প্রকাশ্য নথি এই ক্ষেত্রটি আদৌ ডকুমেন্ট করে না।

ফাইল নয়, Windows-কে জিজ্ঞাসা করুন

নেটিভ সংযোগের জন্য ফাইল পড়ার বদলে Windows-এর কাছে প্রোফাইল চান, কারণ টাইপযুক্ত বৈশিষ্ট্যগুলোই ডকুমেন্টেড পৃষ্ঠতল এবং সমর্থিত পরিবর্তন কেবল সেগুলোই বদলায়। নিচের দুটি কমান্ড দুটি নেটিভ স্টোর আলাদাভাবে পড়ে। প্রোফাইল যদি কোনো স্টোরেই না থাকে, তবে যা পরিচালনা করছে সেই ক্লায়েন্ট নেটিভ ব্যবস্থা ব্যবহার করছে না এবং কোনো নেটিভ cmdlet এটি বর্ণনা করবে না।

Get-VpnConnection -Name 'Field Ops'
Get-VpnConnection -AllUserConnection | Select-Object Name, ServerAddress, TunnelType

পরিদর্শনের বদলে স্থাপনার জন্য ডকুমেন্টেড পথ হলো নামযুক্ত স্কিমাসহ একটি পরিচালিত প্রোফাইল সেটিং, টেক্সট বা বাইনারি ব্লবের ভেতরে সংখ্যাগত সম্পাদনা নয়। প্রোফাইল সংজ্ঞা সমর্থিত সেটিংস বর্ণনা করে; এটি প্রোফাইলের নির্ভরশীল সার্টিফিকেট ও প্রাইভেট কী সরবরাহ করে না। নথিভুক্তি নিজস্ব কর্তৃত্বসহ আলাদা প্রক্রিয়া, আর ফোন-বুকের একটি কী বোঝা কখনো প্রাইভেট কী বিতরণ করেনি। দুটি পথ আলাদা করে পরিকল্পনা করুন, নইলে প্রথম সার্টিফিকেট স্থাপনই দ্বিতীয় ঘটনা হয়ে দাঁড়ায়।

একটি বৈশিষ্ট্য, তারপর তার চারপাশের জীবনচক্র

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

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

প্রতিটি ধাপে নিয়মানুবর্তিতা একই: মালিকের নাম বলুন, বিভাগের নাম বলুন, তারপর সমর্থিত ক্রিয়ার নাম বলুন। এর বাইরে যা কিছু তা একটি উদ্ধৃতি সেঁটে দেওয়া অনুমান।

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