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

কোনো সেশনে যোগ দেওয়াকে তা খোঁজা থেকে আলাদা করুন

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

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

টানেল স্পর্শ করার আগে সরাসরি যোগদান পরীক্ষা করুন

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

ডিসকভারি পোর্ট আর সেশন পোর্ট একই সংখ্যা ভেবো না। গেম সাধারণত এক UDP পোর্টে ঘোষণা করে আর অন্য পোর্টে খেলোয়াড় গ্রহণ করে, আর ভুল পোর্টের জন্য বানানো রিলে এমন তালিকা দেয় যা তবু খালি থাকে।

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

ব্রডকাস্ট কোথায় থামে তা বুঝুন

রাউট করা TUN টানেল পিয়ারদের মধ্যে IP প্যাকেট বহন করে এবং প্রতিটি পিয়ারের নেটওয়ার্কে স্থানীয় ব্রডকাস্ট পুনরুৎপাদন করে না। সীমিত ব্রডকাস্ট ঠিকানা 255.255.255.255 যেই ইন্টারফেস তা নির্গত করে তার ভিতরেই থাকে, আর সাবনেট-নির্দেশিত ব্রডকাস্ট আলাদা একটি বিষয়, রাউটারদের ঘোষণায় প্লাবিত করার সাধারণ লাইসেন্স নয়।

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

মাল্টিকাস্ট ডিসকভারির একই সমস্যা ভিন্ন ঠিকানা শ্রেণিতে হয়, আর তার জন্য ব্রডকাস্ট ব্যতিক্রম নয়, মাল্টিকাস্ট রাউটিং বা রিলে দরকার।

রিলে যখন ন্যায্য, তখন তা সংকীর্ণ রাখুন

স্বয়ংক্রিয় ডিসকভারি যদি আবশ্যক হয়, আগে প্রকৃত বিনিময়টি চিহ্নিত করুন: ব্রডকাস্ট না মাল্টিকাস্ট, গন্তব্য ঠিকানা, UDP পোর্ট, যে ইন্টারফেস এটি পাঠায়, এবং উত্তরের ভিতরের ঠিকানা। এই পাঁচটি তথ্যে সীমিত প্রোটোকল-উপযুক্ত রিলে পুরো একটি Ethernet সেগমেন্ট বাড়ানোর চেয়ে অনেক সংকীর্ণ।

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

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

ডিজাইনের Ethernet দরকার হলেই কেবল ব্রিজ করুন

Ethernet ফ্রেম TAP-এর ভিতরে চলে, তাই একটি TAP টানেল ইচ্ছাকৃতভাবে ব্রিজ করা ব্রডকাস্ট ডোমেইনের অন্তর্গত হতে পারে। শুধু dev tun থেকে dev tap এ বদলালে ওই ব্রিজ তৈরি হয় না, সার্ভার কনফিগারেশন সামঞ্জস্যপূর্ণ হয় না, আর অ্যাপ্লিকেশন নতুন ইন্টারফেস বেছে নেয় না। OpenVPN ব্রিজিং নির্দেশিকা একটি খালি লবির প্রতিকার নয়, বরং বৃহত্তর বিন্যাস বর্ণনা করে।

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

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

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