একটি Windows টানেল ব্যর্থ হয় এবং লগ 10051 নম্বরটি দেয়। এটি WSAENETUNREACH, যা তখন জানানো হয় যখন কোনো সকেট অপারেশন গন্তব্যে কোনো ব্যবহারযোগ্য পথ খুঁজে পায় না। এটি প্রত্যাখ্যাত পাসওয়ার্ড, মেয়াদোত্তীর্ণ সার্টিফিকেট বা সার্ভার টানেল প্যাকেট দেখে তা প্রত্যাখ্যান করেছে—এসবের প্রমাণ নয়।

দুটি ভিন্ন অপারেশন একই সেশনে এটি তৈরি করতে পারে। তাদের অর্থ ভিন্ন এবং তারা ভিন্ন মালিকের।

কোডটি কী জানায় আর কী জানে না

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

এটি রেকর্ড করার সময় আশপাশের লগ লাইনগুলি রাখুন। একা নম্বরটি গন্তব্য, পরিবহন ও মুহূর্ত হারায়, আর এই তিনটি তথ্যই এক সপ্তাহ পরেও এন্ট্রিটিকে ব্যাখ্যাযোগ্য করে।

কোন অপারেশন ব্যর্থ হলো, আর কখন

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

শুধু ত্রুটি নয়, ব্যর্থ অপারেশনটি উদ্ধৃত করুন: কোন ঠিকানায়, কোন পরিবহনে এবং ক্রমের কোন বিন্দুতে সংযোগ। এই ভাষ্যই দ্বিতীয় ব্যক্তিকে সিদ্ধান্তটি পুনরুৎপাদন করতে দেয়।

এন্ডপয়েন্ট ও ঠিকানার পরিবার তুলনা করুন

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

Resolve-DnsName vpn.example.net -Type A,AAAA
Find-NetRoute -RemoteIPAddress 198.51.100.62
Get-NetConnectionProfile

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

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

অন্যান্য সকেট ত্রুটি ও হস্তান্তর

ত্রুটি 10054 ভিন্ন একটি প্রতিবেদন, এবং UDP রিসিভে এটি আগের পাঠানোর সঙ্গে যুক্ত একটি ICMP পোর্ট-আনরিচেবল দেখাতে পারে। এটি নির্দিষ্ট গন্তব্য পোর্ট সম্পর্কে একটি বার্তা, কোনো রুট নেই—এমন বিবৃতি নয়, আর দুটি ভিন্ন তদন্তের দিকে নেয়। প্রতিটি সকেট নম্বরকে সংযোগ ব্যর্থতার রূপ হিসেবে ধরা—এভাবেই অনুপস্থিত রুট ক্লায়েন্ট পুনঃস্থাপন করে 'সারিয়ে' ফেলা হয়।

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

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