VPN সংযোগ টাইমআউট: DNS, পরিবহন, সমঝোতা নাকি লগইন
টাইমআউট মানে কেবল একটি সময়সীমা পেরিয়ে গেছে। চারটি ধাপ, নাম সমাধান, পরিবহন, সমঝোতা ও লগইন, তুলনা করে দেখুন কোনটি শেষে সম্পন্ন হয়েছিল।
“সংযোগের সময় শেষ” হলো VPN ক্লায়েন্ট যে সবচেয়ে অনির্দিষ্ট ত্রুটি ছাপতে পারে। এর অর্থ একটি কাজ তার সময়সীমা মিস করেছে, আর নাম সমাধান থেকে লগইনের উত্তর পর্যন্ত প্রতিটি ধাপেরই একটি সময়সীমা আছে। যে ক্লায়েন্ট কেবল শেষ বার্তাটি দেখায় তারা ধাপগুলিকে একই রকম দেখায়, তাই মানুষ সময়সীমা বাড়ায়, পোর্ট বদলায় ও প্রোফাইল পুনরায় ইনস্টল করে, সেই ক্রমে, কিছু না শিখেই। ধাপগুলি তুলনা করা দ্রুততর: প্রতিটি ভিন্ন জায়গায় ব্যর্থ হয়, আর প্রতিটি ব্যর্থতা ভিন্ন ধরনের প্রমাণ রেখে যায়।
চার ধাপ, চার ভিন্ন ব্যর্থতা
ক্রমটি নির্দিষ্ট, এমনকি ক্লায়েন্ট যখন তা লুকায়: নামটি সমাধান হতে হবে, প্রাপ্ত ঠিকানায় একটি পরিবহন প্রতিষ্ঠা করতে হবে, প্রোটোকলকে তার প্যারামিটার ও কী নিয়ে সমঝোতা করতে হবে, এবং অ্যাকাউন্টটি প্রমাণীকৃত হতে হবে। OpenVPN-এর সংযোগ সমস্যা সমাধানের নির্দেশিকা নিজের ক্লায়েন্টের জন্য একই ক্রম অনুসরণ করে, আর বাকিরা তা নিকটে অনুসরণ করে। দ্বিতীয় ধাপে টাইমআউট আর চতুর্থ ধাপে টাইমআউটের মধ্যে স্ক্রিনের শব্দটি ছাড়া কিছুই মিল নেই।
| Stage | Looks like | What it does not prove |
|---|---|---|
| Name resolution | fails in under a second, before any contact | nothing about the server being up |
| Transport | waits the full timeout, then gives up | nothing about the VPN service behind the port |
| Negotiation | connects, then stalls at handshake | nothing about credentials |
| Login | a reply arrives and is rejected or hangs on a prompt | nothing about reachability |
লগে ত্রুটির আগের শেষ লাইনটি নয়, বরং অগ্রগতি নির্দেশ করে এমন শেষ লাইনটি পড়ুন। বেশিরভাগ ক্লায়েন্ট সমাধান করা ঠিকানা, প্রতিষ্ঠিত সকেট, শুরু হওয়া হ্যান্ডশেক বা প্রমাণীকরণ অনুরোধের মতো কিছু ছাপে, আর সেই লাইনের পরের ধাপটিই সময়সীমা অতিক্রম করেছে।
নাম সমাধান কোনো সংযোগের আগেই ব্যর্থ হয়
যদি এন্ডপয়েন্ট কখনোই সমাধান না হয়, ক্লায়েন্টের সংযোগ করার মতো কিছু থাকে না এবং কোনো পরিবহন কাজ ঘটেনি। এই ব্যর্থতা সাধারণত পূর্ণ টাইমআউট নয়, তাৎক্ষণিক, আর এটাই বাকিগুলো থেকে আলাদা করার সস্তা উপায়। নামটি সিস্টেম রিজলভার ও একটি দ্বিতীয় রিজলভার দিয়ে পরীক্ষা করুন, এবং সার্ভার বন্ধ বলে সিদ্ধান্তে আসার আগে দুটি উত্তর তুলনা করুন।
ফোরাম পোস্ট থেকে কপি করা পুরোনো ঠিকানা হলো সার্ভার সমস্যার মতো দেখানো টাইমআউটের একটি সাধারণ কারণ, কারণ ঠিকানাটি এখন অন্য কিছু বা কিছুরই নয়। আগে কাজ করা ঠিকানা প্রতিস্থাপনের বদলে অপারেটরের বর্তমান প্রোফাইল ব্যবহার করুন। ping-এর উত্তর না আসা কোনো দিকেই প্রমাণ নয়: অনেক এন্ডপয়েন্ট ICMP ফেলে দেয় অথচ পুরোপুরি ভালোভাবে সেবা দেয়।
পরিবহন স্থাপন এমন প্যাকেটের জন্য অপেক্ষা করে যা আসবে না
যখন DNS ঠিক আছে আর ক্লায়েন্ট তবুও পুরো সময়সীমা পুড়িয়ে ফেলে, তখন পরিবহন স্তরই সন্দেহভাজন। TCP-তে আপনি পোর্টটি সরাসরি পরীক্ষা করতে পারেন; Test-NetConnection Windows-এ বা nc -vz Linux-এ আপনাকে বলে কিছু সংযোগটি গ্রহণ করে কি না, আর তা ping-এর চেয়ে বেশি কাজে দেয়। UDP-তে একইভাবে পরীক্ষা করা যায় না, কারণ সেই স্তরে সম্পন্ন করার মতো কোনো হ্যান্ডশেক নেই, আর এই অসমতা অনেক ভুল সিদ্ধান্তের জন্ম দেয়।
TCP পরীক্ষা যা প্রমাণ করে তা সীমিত: 443 পোর্ট গ্রহণকারী একটি সেবা অবশ্যই VPN শ্রোতা নয়, আর কেবল-UDP এন্ডপয়েন্টের কোনো কিছু গ্রহণ করার TCP পোর্ট নেই। প্রোফাইল UDP থেকে TCP-তে পুনর্লিখন করলে অন্য পাশে শ্রোতা তৈরি হয় না; এটি কেবল বদলে দেয় আপনার ক্লায়েন্ট কীসের জন্য অপেক্ষা করবে। যদি নেটওয়ার্ক প্রোটোকলটি ফিল্টার করে, পরিবর্তনটি একই ধাপে ভিন্ন টাইমআউট তৈরি করে।
ক্যাপটিভ পোর্টাল এই ধাপে আলাদা পরীক্ষার দাবি রাখে। পোর্টাল ডিভাইসটিকে অনুমোদন না দেওয়া পর্যন্ত বাইরের ট্রাফিক পোর্টালে যায় আর টানেলের প্রচেষ্টা শুধু ঝুলে থাকে। আগে ব্রাউজারে পোর্টালটি সম্পন্ন করুন, তারপর আবার চেষ্টা করুন, আর পোর্টাল ঝুলে থাকা অবস্থায় প্রোফাইল বদলাবেন না।
সমঝোতা ও লগইন মানে সার্ভার উত্তর দিয়েছে
একবার টানেল সার্ভারে পৌঁছালে ক্লায়েন্ট হ্যান্ডশেক শুরু করে আর ত্রুটির চরিত্র বদলে যায়। এখানে আটকে যাওয়া পৌঁছানোর বদলে সামঞ্জস্য নিয়ে: মিলহীন প্রোটোকল সংস্করণ, অন্য পাশ গ্রহণ করবে না এমন সাইফার বা ডেটা-চ্যানেল সেটিং, বা এমন প্রোফাইল যা সার্ভার দেয় না এমন বৈশিষ্ট্য আশা করে। OpenVPN প্রধান সংস্করণগুলোর মধ্যে তার সমঝোতার ডিফল্ট এতবার সরিয়েছে যে এক প্রজন্মের জন্য লেখা প্রোফাইল সার্ভারে পৌঁছেও তবুও উঠতে ব্যর্থ হতে পারে।
প্রমাণীকরণ শেষ ধাপ এবং ভুল পড়া সবচেয়ে সহজ। স্পষ্ট প্রত্যাখ্যান একটি উত্তর, যার মানে পথটি কাজ করে আর সমস্যাটি পরিচয়, সার্টিফিকেট বা অ্যাকাউন্টের অবস্থায়। ব্রাউজার-ভিত্তিক একক সাইন-অন প্রবাহ তৃতীয় একটি ক্ষেত্র: ক্লায়েন্ট এমন কাজের জন্য অপেক্ষা করছে যা আপনি করেননি, বা এমন ব্রাউজারের জন্য যা সে চালু করতে পারে না, আর আপনি সেই ধাপটি শেষ না করা পর্যন্ত কিছুই আসবে না।
পুনরায় চেষ্টা বদলানোর আগে প্রমাণ তুলনা করুন
ডিভাইস ও প্রোফাইল স্থির রাখুন আর একবারে একটি জিনিস বদলান, নেটওয়ার্ক দিয়ে শুরু করে। যদি একই প্রোফাইল ফোনের হটস্পটে সংযোগ করে আর হোটেল Wi-Fi-তে টাইমআউট হয়, তবে চলকটি সার্ভার নয়, পথ। যদি সব জায়গায় ব্যর্থ হয়, চলকটি প্রোফাইল বা এন্ডপয়েন্ট। যদি দিনের একটি নির্দিষ্ট সময়ে কেবল ব্যর্থ হয়, টাইমস্ট্যাম্পটি ধরুন এবং লোড নিয়ে কিছু ধরে নেওয়ার আগে সার্ভার-পাশের ঘটনার সঙ্গে তুলনা করুন।
আপনি যে সেবা পরিচালনা করেন, তার জন্য নির্ণায়ক তুলনা হলো প্রচেষ্টাটি আদৌ পৌঁছায় কি না। যে সংযোগ শ্রোতায় পৌঁছে তারপর আটকে যায় তা সমঝোতা ধাপের; যা শ্রোতার দৃষ্টিতে কখনোই দেখা যায় না তা পরিবহন বা সমাধান সমস্যা, আর কোনো পরিমাণ পুনঃচেষ্টা টিউনিং তা সরাতে পারবে না। সার্ভার লগ প্রত্যাখ্যাত লগইনকে নীরব ফেলে দেওয়া থেকে আলাদা করে, যা পরিচয় সংশোধন আর ফায়ারওয়াল সংশোধনের পার্থক্য।
ক্লায়েন্ট সংস্করণ, প্রোফাইলের নাম, সময় অঞ্চলসহ প্রচেষ্টার সময় এবং শেষ বিচ্ছিন্ন লাইনের বদলে প্রথম কাজে লাগা ত্রুটিটি লিপিবদ্ধ করুন। উদ্ধৃতিটি ভাগ করার আগে কী ও ক্রেডেনশিয়ালযুক্ত উপাদান সরিয়ে ফেলুন। তারপর একটি অর্থপূর্ণ সংশোধন করে আবার চেষ্টা করুন, কারণ দীর্ঘতর সময়সীমা কেবল নথিভুক্ত ধীর কাজটিতে সাহায্য করে, আর ভুল ঠিকানা বা অবরুদ্ধ পোর্টে কিছুই করে না।