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

প্রথমে উদ্দিষ্ট জোড়াগুলো লিখে ফেলুন

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

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

মিলিয়ে দেখার আগে লেবেল উল্টে দিন

লোকাল আর রিমোট আপেক্ষিক লেবেল। ক্লায়েন্টের লোকাল প্রিফিক্স হলো গেটওয়ের রিমোট পরিসর, আর গেটওয়ের লোকাল পরিসর হলো ক্লায়েন্টের রিমোট। তাই দুই প্রান্তের স্ক্রিনশট কখনো মেলে না, আর সেগুলো আক্ষরিকভাবে মেলানোই বিকেলটা নষ্ট করার চিরাচরিত উপায়।

রেসপন্ডার প্রস্তাব প্রত্যাখ্যান করার বদলে তা একটি গ্রহণযোগ্য উপসেটে সংকুচিত করতে পারে। এই ফল পরিষ্কার ব্যর্থতার চেয়ে খারাপ, কারণ এটি আধা-আধি কাজ করে। পলিসি 10.0.5.0/24 অনুমতি দিলে 10.0.0.0/16 চাইলে আপনি শুধু ওই /24 জুড়ে থাকা একটি চাইল্ড SA নিয়ে শেষ করতে পারেন। একটি হোস্ট উত্তর দেয়, বাকি সব বাইরে পড়ে যায়, আর ক্লায়েন্টে কিছুই তা বলে না। দর-কষাকষি সফল হয়েছে ধরে নেওয়ার আগে অনুরোধ করা সিলেক্টর নয়, গৃহীত সিলেক্টরগুলো পড়ুন।

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

একটি প্রচেষ্টা থেকেই প্রত্যাখ্যান পড়ুন

একই সংযোগ-প্রচেষ্টার দুটি লগই সংগ্রহ করুন। সংরক্ষিত প্রোফাইল দেখায় আপনি কী কনফিগার করেছেন, কী প্রস্তাব দেওয়া হয়েছিল তা নয়, আর strongSwan-এ swanctl --log গৃহীত নোটিফিকেশনটি তার বহন করা সিলেক্টরসহ ছাপে।

তারপর আসলে কী ইনস্টল হয়েছে তা পরীক্ষা করুন। swanctl --list-sas চাইল্ড SA-এর সিলেক্টর দেখায়, আর ip xfrm policy একই পরিসরগুলো কার্নেল পলিসি এন্ট্রি হিসেবে দেখায়। ওই তালিকায় অপ্রত্যাশিত সিলেক্টরসহ চাইল্ড SA থাকা মানে সংকোচন-ঘটনা; লগে চাইল্ড SA ছাড়া TS_UNACCEPTABLE থাকা মানে প্রত্যাখ্যান।

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

কী নিঃশব্দে সেটটি ছোট করে তা পরীক্ষা করুন

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

তৃতীয়টি প্রোটোকল ও পোর্ট নিষেধাজ্ঞা। যেখানে পলিসি কেবল TCP 445-এর অনুমতি দেয়, সেখানে চাইল্ড SA উঠতে পারে অথচ ICMP আর UDP তার বাইরে থাকে, আর ব্যবহারকারী ভাঙা টানেলের কথা জানায় যখন একটিমাত্র প্রোটোকলই অনুমোদিত ছিল।

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

মানানসই ট্রাফিক দিয়ে কভারেজ প্রমাণ করুন

চাইল্ড SA ইনস্টল হওয়ার পর গৃহীত পরিসরের নিশ্চিত ভেতরে পড়ে এমন একটি অনুরোধ পাঠান। স্ট্যাটাস আইকনের বদলে কাউন্টারগুলো দেখুন: ip -s xfrm state আর ip xfrm policy-এর পেছনের কাউন্টার প্যাকেট মিলে গিয়ে সুরক্ষিত হলে বাড়ে। সত্যিকারের ট্রাফিকের পরও শূন্যে থাকা বাইট-সংখ্যা মানে কার্নেল ওই পলিসি কখনোই নির্বাচন করেনি।

এই শূন্যতা রাউটিং বা পলিসি-ক্রমের সমস্যা, ক্রিপ্টোর সমস্যা নয়। ব্যবহারকারীর দিক থেকে এটি সিলেক্টর প্রত্যাখ্যানের সঙ্গে হুবহু একরকম দেখায়, তাই প্রোফাইল আবার খোলার আগে কাউন্টার সংগ্রহ করা যায়। যে কাউন্টার কেবল এক দিকেই বাড়ে, সেটি বরং ফেরার পথের দিকে ইঙ্গিত করে।

শেষে গৃহীত জোড়াটি টিকিটে লিখুন, মূলত যে পরিসর চাওয়া হয়েছিল তার পাশে। নির্বাচনটিকে প্রয়োজন যতটা সংকীর্ণ রাখুন, কারণ বেসরকারি পরিসরকে সব ঠিকানা দিয়ে বদলে ত্রুটি মেটানো অ্যাকাউন্টের জন্য অনুমোদিত তুলনায় অনেক বেশি প্রবেশাধিকার দেয়।

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