MTU چیست و چرا روی سرعت VPN شما اثر میگذارد؟
عیبیابی 7 دقیقه مطالعه
اگر تا به حال با وضعیتی روبهرو شدهاید که اتصال VPN شما برقرار است اما برخی سایتها باز نمیشوند، دانلودها نیمهکاره متوقف میشوند یا سرعت بهطور غیرمنطقی پایین میآید، احتمال زیادی وجود دارد که ریشهی مشکل در مقداری به نام MTU باشد. اینکه MTU چیست و چرا یک عدد ظاهراً ساده میتواند تفاوت میان یک تجربهی پایدار و یک اتصال کند را رقم بزند، چیزی است که کمتر کاربری به آن توجه میکند. در این مقاله به زبان دقیق اما قابلفهم توضیح میدهیم که این پارامتر چه نقشی در شبکه و بهویژه در تونلهای VPN ایفا میکند و چگونه با تنظیم درست آن میتوانید سرعت و پایداری اتصال خود را بهشکل محسوسی بهبود دهید.
MTU دقیقاً چیست و چه کاری انجام میدهد؟
عبارت MTU مخفف Maximum Transmission Unit یا «بزرگترین واحد انتقال» است. به زبان ساده، MTU بیشترین اندازهای را مشخص میکند که یک بستهی داده (Packet) میتواند هنگام عبور از یک رابط شبکه داشته باشد، بدون اینکه نیاز به شکستهشدن پیدا کند. این مقدار بر حسب بایت اندازهگیری میشود.
در اکثر شبکههای اترنت و اینترنت خانگی، مقدار استاندارد MTU برابر با ۱۵۰۰ بایت است. این عدد شامل خود داده بهعلاوهی سرآیندهای (Header) لازم برای مسیریابی نیست؛ بلکه حداکثر اندازهی payload در لایهی شبکه را تعیین میکند. وقتی دستگاه شما میخواهد حجمی از داده را ارسال کند، آن را به بستههایی تقسیم میکند که هیچکدام از سقف MTU بزرگتر نباشند.
تصور کنید بخواهید مقدار زیادی کالا را با کامیون جابهجا کنید، اما هر پل سر راه محدودیت ارتفاع دارد. MTU دقیقاً مانند آن محدودیت ارتفاع عمل میکند؛ اگر باری بلندتر از حد مجاز بارگیری شود، یا باید پایینتر چیده شود یا اصلاً اجازهی عبور نخواهد داشت. در شبکه هم بستههای بزرگتر از MTU یا باید قطعهقطعه شوند یا کنار گذاشته میشوند.
قطعهبندی بستهها؛ دشمن پنهان سرعت
وقتی یک بستهی داده بزرگتر از MTU مسیری باشد که از آن عبور میکند، اتفاقی به نام قطعهبندی بسته (Packet Fragmentation) رخ میدهد. در این حالت بسته به چند تکهی کوچکتر شکسته میشود تا بتواند از مسیر عبور کند و در مقصد دوباره سرهم میشود.
این فرایند در ظاهر بیخطر به نظر میرسد، اما در عمل چند هزینهی جدی به همراه دارد:
- افزایش سربار پردازشی: دستگاهها باید برای شکستن و سرهمکردن مجدد بستهها توان پردازشی مصرف کنند.
- تأخیر بیشتر: فرایند سرهمسازی در مقصد زمان میبرد و تأخیر (Latency) را بالا میبرد.
- احتمال گمشدن داده: اگر فقط یکی از قطعهها در مسیر گم شود، کل بستهی اصلی باید دوباره ارسال شود.
- مسدودشدن کامل: برخی مسیریابها بستههای قطعهبندیشده را بهکلی دور میاندازند.
نکتهی مهمتر اینجاست که بسیاری از بستهها با پرچمی به نام DF (مخفف Don't Fragment) ارسال میشوند که به شبکه میگوید این بسته نباید شکسته شود. اگر چنین بستهای به مسیری با MTU کوچکتر برسد، بهجای قطعهبندی بهسادگی حذف میشود و همین مسئله است که باعث میشود برخی صفحات اصلاً بارگذاری نشوند.
چرا MTU در اتصال VPN اهمیت دوچندان پیدا میکند؟
تا اینجا دربارهی شبکهی معمولی صحبت کردیم، اما در یک تونل VPN ماجرا پیچیدهتر میشود. هنگام استفاده از VPN، هر بستهی دادهی شما داخل یک بستهی دیگر بستهبندی میشود تا رمزنگاری و عبور امن از تونل ممکن شود. این فرایند را Encapsulation مینامند و طبیعتاً سرآیندهای اضافهای به بسته اضافه میکند.
هر پروتکل مقدار سربار متفاوتی دارد. برای مثال:
- WireGuard سربار نسبتاً کمی دارد و معمولاً به MTU حدود ۱۴۲۰ بایت نیاز پیدا میکند.
- OpenVPN بهدلیل لایههای رمزنگاری و احراز هویت سربار بیشتری مصرف میکند.
- L2TP بهویژه وقتی همراه با IPSec اجرا شود، سرآیندهای متعددی به بسته میافزاید.
- V2Ray بسته به پیکربندی و لایههای انتقال، رفتار متفاوتی در مصرف فضای بسته دارد.
نتیجه این است که اگر MTU رابط مجازی VPN روی همان مقدار پیشفرض ۱۵۰۰ باقی بماند، بستهها پس از افزودهشدن سرآیندها از سقف مسیر عبور میکنند و دچار قطعهبندی یا حذف میشوند. این دقیقاً همان نقطهای است که کاربران افت سرعت یا قطعوصلهای مرموز را تجربه میکنند. اگر به دنبال یک اتصال پایدار و سریع هستید، استفاده از یک پلنهای آی پی ثابت باکیفیت در کنار تنظیم درست MTU میتواند تفاوت چشمگیری ایجاد کند.
چگونه مقدار بهینهی MTU را پیدا کنیم؟
برای یافتن مقدار درست MTU نیازی به حدسزدن نیست؛ یک روش عملی و دقیق وجود دارد که بر پایهی فرمان ping کار میکند. ایدهی اصلی این است که بستهای با پرچم «عدم قطعهبندی» ارسال کنیم و اندازهی آن را آنقدر کم کنیم تا بدون خطا عبور کند.
در ویندوز میتوانید از این الگو استفاده کنید:
- دستور ping -f -l 1472 8.8.8.8 را اجرا کنید. عدد ۱۴۷۲ همان دادهی خالص است و با افزودن ۲۸ بایت سرآیند به MTU برابر ۱۵۰۰ میرسد.
- اگر پیام Packet needs to be fragmented دیدید، عدد را پلهپله کاهش دهید (مثلاً ۱۴۶۴، ۱۴۵۶ و ...).
- وقتی بزرگترین عددی را یافتید که بدون خطا پاسخ میدهد، آن را با ۲۸ جمع کنید؛ حاصل، MTU بهینهی مسیر شماست.
در لینوکس و مک نیز همین منطق با سوییچهای متفاوت (مانند ping -D -s) قابل اجراست. توجه داشته باشید که این آزمایش را بهتر است هم در حالت اتصال مستقیم و هم در حالت اتصال از طریق VPN انجام دهید تا تفاوت سربار تونل را بهروشنی ببینید.
تنظیم MTU روی دستگاه و رابط VPN
پس از یافتن مقدار درست، نوبت به تنظیم MTU میرسد. محل اعمال این تنظیم بسته به پروتکل و سیستمعامل متفاوت است:
- WireGuard: در فایل پیکربندی، در بخش Interface میتوانید خط MTU = 1420 یا مقدار بهدستآمده را اضافه کنید.
- OpenVPN: با دستورهای tun-mtu و mssfix میتوان اندازهی بسته را کنترل کرد.
- سیستمعامل: در ویندوز با netsh و در لینوکس با فرمان ip link set میتوان MTU رابط را تغییر داد.
یک تکنیک تکمیلی و بسیار مؤثر، تنظیم پارامتری به نام MSS (Maximum Segment Size) است. MSS تعیین میکند که هر بخش TCP چقدر داده حمل کند و معمولاً برابر است با MTU منهای ۴۰ بایت. تنظیم درست MSS از قطعهبندی در سطح TCP جلوگیری میکند و در بسیاری از موارد حتی مؤثرتر از تغییر مستقیم MTU عمل میکند.
اگر در پیادهسازی این تنظیمات روی پروتکل موردنظر خود تردید دارید، میتوانید گامبهگام از آموزش اتصال کمک بگیرید تا پیکربندی را بدون خطا انجام دهید.
توصیههای عملی برای حفظ سرعت پایدار
تنظیم MTU یکبار برای همیشه نیست و بهتر است آن را بخشی از روند بهینهسازی اتصال خود بدانید. چند نکتهی کاربردی که تجربه نشان داده تفاوت ایجاد میکنند:
- همیشه از یک مقدار محافظهکارانه شروع کنید؛ اگر مطمئن نیستید، MTU برابر ۱۴۰۰ برای اکثر تونلها انتخاب امنی است.
- پس از هر تغییر، سرعت و پایداری را با چند سایت و سرویس مختلف آزمایش کنید، نه فقط یک تست سرعت.
- اگر روی شبکهی موبایل یا اتصالی با کیفیت متغیر هستید، مقدار MTU را کمی پایینتر نگه دارید چون مسیرها ممکن است سقف کوچکتری داشته باشند.
- کیفیت زیرساخت سرور نقش تعیینکننده دارد؛ حتی بهترین MTU روی یک سرور شلوغ نتیجهی خوبی نمیدهد. به همین دلیل انتخاب یک آی پی ثابت معتبر، پایهی یک اتصال سریع است.
در نهایت به یاد داشته باشید که MTU تنها یکی از قطعات پازل سرعت است، اما قطعهای است که نادیدهگرفتنش میتواند تمام تلاشهای دیگر را بیاثر کند. چند دقیقه وقتگذاشتن برای یافتن مقدار درست، اغلب به یک تجربهی بهمراتب روانتر منتهی میشود.
پرسشهای متداول
اگر MTU را خیلی پایین تنظیم کنم چه اتفاقی میافتد؟
مقدار بیش از حد پایین باعث میشود دادههای شما به بستههای کوچکتر و بیشتری تقسیم شود. این کار سربار پردازشی و تعداد سرآیندها را افزایش میدهد و در نتیجه بازده انتقال داده کاهش مییابد. بنابراین هدف، یافتن بزرگترین مقدار بدون قطعهبندی است، نه صرفاً کوچکترین مقدار ممکن.
چرا با وجود اتصال موفق VPN برخی سایتها باز نمیشوند؟
این یکی از نشانههای کلاسیک مشکل MTU است. وقتی بستهها بزرگتر از سقف مسیر باشند و پرچم عدم قطعهبندی داشته باشند، در مسیر حذف میشوند و صفحه هرگز کامل بارگذاری نمیشود. کاهش MTU یا تنظیم MSS معمولاً این مشکل را برطرف میکند.
آیا برای هر پروتکل باید MTU متفاوتی تنظیم کنم؟
بله، چون هر پروتکل سربار متفاوتی دارد. برای نمونه WireGuard معمولاً با MTU حدود ۱۴۲۰ خوب کار میکند، در حالی که L2TP/IPSec بهدلیل سرآیندهای بیشتر ممکن است به مقدار پایینتری نیاز داشته باشد. بهترین کار، آزمایش جداگانه برای هر پروتکل است.
تفاوت MTU با MSS چیست؟
MTU بیشترین اندازهی کل بسته در لایهی شبکه را تعیین میکند، در حالی که MSS فقط به بخش دادهی TCP اشاره دارد و معمولاً برابر MTU منهای ۴۰ بایت است. تنظیم MSS اغلب راه سادهتری برای جلوگیری از قطعهبندی در ترافیک TCP محسوب میشود.
تنظیم MTU روی همهی دستگاهها لازم است یا فقط مودم؟
بستگی به محل بروز مشکل دارد. گاهی تنظیم MTU روی رابط VPN کافی است، اما در برخی شبکهها لازم است مقدار را روی مودم یا روتر نیز هماهنگ کنید تا کل مسیر یکدست شود و قطعهبندی در هیچ نقطهای رخ ندهد.