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

তিনটি প্রার্থী আছে, আর তাদের গুলিয়ে ফেলা সহজ।

মানটি আসতে পারে এমন তিনটি জায়গা

মানটি ইন্টারফেস কনফিগারেশনে সরাসরি দেওয়া যেতে পারে, সেটআপ টুল রুট তথ্য থেকে হিসাব করতে পারে, অথবা ইন্টারফেসের মালিক যে-ই নেটওয়ার্ক ম্যানেজার থাকুক সে দিতে পারে। সাধারণ wg কল এর কোনোটিই করে না, কারণ wg কেবল কী ও পিয়ার পরিচালনা করে। MTU থাকে নেটওয়ার্ক ইন্টারফেসে, তাই ip link show wg0 হলো সেই জায়গা যেখানে আপনি এটি পড়েন।

কোনটি প্রযোজ্য তা নিশ্চিত না হলে আগে MTU পড়ুন, তারপর জেনে নিন কে ইন্টারফেসটি চালু করেছে।

কে ইন্টারফেস চালায় তার ভিত্তিতে সিদ্ধান্ত নিন

যদি wg-quick এটি চালু করে, তাহলে স্পষ্ট MTU লাইনই জিতে যায়, নাহলে সে একটি মান হিসাব করে। যদি নেটওয়ার্ক ম্যানেজার চালু করে, তাহলে সেই ম্যানেজারের প্রোফাইল সিদ্ধান্ত নেয়। যদি কন্টেইনার রানটাইম বা প্রোভাইডার ক্লায়েন্ট চালু করে, তাহলে wg-quick-এর আচরণ ধরে না নিয়ে তাদের ডকুমেন্টেশন পড়ুন।

সিদ্ধান্তটি এই নয় যে বিমূর্তভাবে কোন সংখ্যাটি সেরা। সিদ্ধান্তটি এই যে আপনি আসলে কোন কম্পোনেন্টটি কনফিগার করতে পারেন।

ডিফল্ট হিসাবটি কী করে

wg-quick পিয়ারের এন্ডপয়েন্ট পর্যন্ত রুট খুঁজে নেয়, সেই আউটগোয়িং ইন্টারফেসের MTU নেয়, আর এনক্যাপসুলেশন ওভারহেড বিয়োগ করে। IPv4 বহিঃস্থ হেডার হলে তা প্রায় 60 বাইট; IPv6 হলে প্রায় 80। ফলাফলটি একটি সীমার মধ্যে রাখা হয়, যাতে 1500 বাইটের পথ 1420 দেয়, কেবল একটি অ্যাড্রেস ফ্যামিলিতে কাজ করা মান নয়। এটি একটি যুক্তিসঙ্গত ডিফল্ট, আপনার পথের মাপ নয়।

পরে আসা কোনো টানেল, মোবাইল লিংক বা ফিল্টার করা ICMP পথ সম্পর্কে সে জানতে পারে না।

সীমাটি একটি বাস্তব প্রশ্ন লুকিয়ে রাখে। যদি আপনার পথ সত্যিই প্রান্ত থেকে প্রান্ত 9000 বাইট হয়, তাহলে 1420 কর্মক্ষমতা টেবিলে ফেলে রাখে, আর পথটি 1400 হলে 1420 ইতিমধ্যেই খুব বড়। ডিফল্ট মানটি একটি আপস, আর সেটিকেই আপস হিসেবে গণ্য করা উচিত।

যখন আপনার নিচে পথটি বদলে যায়

যে ল্যাপটপ Ethernet থেকে Wi-Fi, তারপর ফোনের হটস্পটে ঘোরে, সে যে ইন্টারফেস MTU দিয়ে শুরু করেছিল তা-ই ধরে রাখে। বহিঃস্থ পথটি এখন ছোট হতে পারে, আর কিছুই আবার দরকষাকষি করে না। নেস্টেড টানেল অবস্থা আরও খারাপ করে, কারণ প্রতিটি স্তর একই বাজেট থেকে নিজের ওভারহেড বিয়োগ করে। অফিসে যে মান কাজ করেছিল, বিমানবন্দরে সেটি কাজ করে না।

সাম্প্রতিক হ্যান্ডশেক প্রমাণ করে যে কী-গুলো কাজ করে। বড় প্যাকেট ফিট করে কিনা সে বিষয়ে এটি কিছুই প্রমাণ করে না।

একবারে একটি সংখ্যা পরীক্ষা করুন

একই অ্যাপ্লিকেশন ও গন্তব্য রাখুন, একটি মান বদলে মাপুন। ping -M do -s 1372 DF বিট দেওয়া 1400 বাইটের প্যাকেট পরীক্ষা করে, আর এটিই আপনার কাঙ্ক্ষিত পরীক্ষার ধরন। ছোট অনুরোধ কাজ করলে এবং বড়গুলো আটকে গেলে আপনার রাউটিং নয়, আকারের সমস্যা আছে।

শুধু MTU পরিবর্তন করুন। একসাথে কয়েকটি প্যাকেট অপশন সমন্বয় করলে কোনটি গুরুত্বপূর্ণ ছিল তা জানতে পারবেন না।

আর ভাববেন না যে MTU পরিবর্তন অনুপস্থিত রিটার্ন রুট, ফরওয়ার্ডিং নিয়ম বা DNS ব্যর্থতা সারিয়ে দেবে। সেগুলোও ট্রাফিক না থাকার লক্ষণ তৈরি করে, আর তাদের নিজস্ব পরীক্ষা আছে। wg-quick ম্যানুয়াল স্বয়ংক্রিয় নির্বাচনটি নথিভুক্ত করে।

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