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

বিরতিকে একটি সংখ্যায় পরিণত করুন

পাঁচ বা ছয়টি ঘটনা সংগ্রহ করুন এবং দিনের শুরু থেকে নয়, তাদের মধ্যকার ব্যবধান হিসাব করুন। 09:12, 10:12 এবং 11:12-এ সংযোগ কাটা ঘণ্টার সীমানা; 09:12, 09:27 এবং 09:42-এ কাটা শেষ সফল সংযোগ থেকে পনেরো মিনিট। ফলাফলটিকে নিকটতম মিনিটে নয়, নিকটতম বিশ্বাসযোগ্য টাইমারে গোল করুন।

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

পুনঃসংযোগ স্বয়ংক্রিয় কি না তা লক্ষ করুন। যে ক্লায়েন্ট সেকেন্ডের মধ্যে আবার সংযোগ করে সে বিরতিটিকে লগে দৃশ্যমান এবং ব্যবহারকারীর প্রতিবেদনের বাইরে রাখে, তাই এই ব্যর্থতাগুলোকে প্রায়ই পর্যায়ক্রমিক নয়, মাঝেমধ্যে ঘটে এমন বলে বর্ণনা করা হয়। এটি ল্যাপটপ ব্যবহারকারী ব্যক্তির কাছ থেকেও ঘটনাটি লুকায়।

চারটি টাইমার যা একই রকম দেখায়

প্রায় প্রতিটি পুনরাবৃত্ত টানেল পতন এগুলোর একটি থেকে আসে: প্রোটোকল কী পুনর্নবীকরণ, নিষ্ক্রিয় ম্যাপিংয়ের মেয়াদ শেষ, DHCP বা ইন্টারফেস ঘটনা, অথবা অ্যাকাউন্ট নীতি। ট্রাফিক চলছিল কি না এবং সীমানায় লগ কী বলছে তা দিয়ে এগুলো আলাদা হয়।

নিচের স্বাক্ষরগুলো শেখার মতো, কারণ এগুলো একটি লগ লাইন থেকেই তিনটি ব্যাখ্যা বাতিল করতে দেয়:

TimerTypical triggerWhat the log shows at the boundary
Protocol rekeyTraffic present, fixed intervalNegotiation lines, sometimes a failure
NAT or firewall idleNo traffic for minutesSilence, then a timeout on send
DHCP lease or link changeHalf the lease, or a radio eventAddress or interface churn
Account session limitWall-clock hours since loginClean disconnect, server-side reason

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

ব্যস্ত বনাম নিষ্ক্রিয় কোন অর্ধেক তা বলে দেয়

ক্রমাগত ট্রাফিক দিয়ে একটি নিয়ন্ত্রিত তুলনা করুন, যেমন টানেলের ভিতরের একটি হোস্টে দীর্ঘ স্ট্রিম, এবং বিরতিটি বদলায় কি না দেখুন। ডেটা প্রবাহিত হওয়ার সময় কাটা পড়া বন্ধ হলে টাইমারটি নিষ্ক্রিয়তার ভিত্তিতে।

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

পরীক্ষার সময় অ্যাক্সেস নেটওয়ার্ক অপরিবর্তিত রাখুন। তুলনার মাঝখানে Wi-Fi ও Ethernet-এর মধ্যে বদল করা ঠিক সেই ইন্টারফেস ঘটনাটিই নিয়ে আসে যা আপনি টাইমার থেকে আলাদা করতে চাইছেন।

লগ লাইনটি সীমানার সঙ্গে মিলিয়ে দেখুন

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

এই কমান্ডগুলো প্রতিটি উৎস থেকে সংশ্লিষ্ট জানালাটি টেনে আনে:

grep -iE "reneg|TLS Error|Inactivity" /var/log/openvpn.log | tail -20
journalctl -u NetworkManager --since "-90 min" | grep -iE "dhcp|link"
wg show

তিনটি উৎস যদি টাইমস্ট্যাম্পে একমত হয়, তবে টাইমারটির মালিক আপনি জানেন। যদি শুধু ক্লায়েন্ট লগে কিছু থাকে, তবে সম্ভবত সার্ভারই সেশনটি শেষ করছে না।

পর্যায়টি ঠিক করুন, আইকন নয়

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

আইকন সবুজ রাখতে কী পুনর্নবীকরণ বা প্রমাণীকরণ বন্ধ করা একটি দৃশ্যমান পতনকে অদৃশ্য দুর্বলতার সঙ্গে বদলায়, আর টানেল সর্বশেষ কখন নতুন কী নিয়ে দর-কষাকষি করেছিল তা বলার ক্ষমতা কেড়ে নেয়। এরপর মূল সময়কালটি আবার পরীক্ষা করুন এবং টাইমস্ট্যাম্প রাখুন, যাতে পরের ঘটনাটি নতুন করে শুরু না করে এটির সঙ্গে তুলনা করা যায়।

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