MTU 1420: کچھ سائٹس کیوں ہینگ ہو سکتی ہیں اور اسے کیسے ٹھیک کریں
MTU کیا ہے، 1420 کہاں سے آتا ہے، “صفحہ آدھے راستے پر ہینگ” کا مسئلہ کیسا دکھتا ہے، اور اسے کیسے جانچیں اور ٹھیک کریں۔
اپ ڈیٹ 23 اگست، 2026
MTU وہ زیادہ سے زیادہ پیکٹ سائز ہے جو کسی نیٹ ورک پر بغیر فریگمنٹیشن کے بھیجا جا سکتا ہے۔ ایتھرنیٹ پر عام قدر 1500 بائٹس ہے۔ جب ٹریفک کسی ٹنل سے گزرتی ہے تو اس کے اپنے ہیڈرز اس جگہ کا کچھ حصہ لے لیتے ہیں، جس سے پے لوڈ کم رہ جاتا ہے: عام قدر 1420 ہے۔
بذات خود یہ کوئی مسئلہ نہیں ہے۔ مسائل اس وقت شروع ہوتے ہیں جب ایک طرف یہ سمجھتی ہے کہ وہ 1500 بھیج سکتی ہے، لیکن راستے میں 1420 والا کوئی سیگمنٹ موجود ہو اور اس کے بارے میں پیغام گم ہو جائے۔
علامت کیسی دکھتی ہے
- SSH جڑ جاتا ہے، گریٹنگ آ جاتی ہے، لیکن بڑی ڈائریکٹری میں
lsسیشن کو ہینگ کر دیتا ہے۔ - صفحہ لوڈ ہونا شروع ہوتا ہے اور درمیان میں جم جاتا ہے۔
curl -I(صرف ہیڈرز) کام کرتا ہے، لیکن مکملcurlہینگ ہو جاتا ہے۔apt updateکامیاب ہوتا ہے،apt upgradeڈاؤن لوڈ کے دوران رک جاتا ہے۔- چھوٹی درخواستیں اڑتی ہیں، بڑے جواب کبھی نہیں پہنچتے۔
عام نشانی ہر جگہ ایک ہی ہے: چھوٹے پیکٹ گزر جاتے ہیں، بڑے بغیر کسی ایرر کے غائب ہو جاتے ہیں۔ کنکشن ٹوٹتا نہیں؛ بس خاموش ہو جاتا ہے۔
اس کی وجہ یہ ہے کہ پیکٹ سائز کی گفت و شنید کا میکانزم ICMP سروس پیغامات پر منحصر ہے۔ اگر راستے میں کوئی انہیں فلٹر کر دے تو بھیجنے والے کو کبھی پتہ نہیں چلتا کہ پیکٹ بہت بڑا ہے اور وہ اسے بار بار بھیجتا رہتا ہے۔
جانچ
ڈونٹ-فریگمنٹ بٹ سیٹ کے ساتھ پیکٹ بھیجیں اور سائز کم کرتے جائیں جب تک وہ گزر نہ جائے:
ping -M do -s 1472 -c 2 1.1.1.1
ping -M do -s 1392 -c 2 1.1.1.1
-s سائز میں 28 بائٹس کے ہیڈرز شامل ہو جاتے ہیں: 1472 کا مطلب MTU 1500 ہے، اور 1392 کا مطلب MTU 1420۔ اگر پہلا آپشن ناکام ہو اور دوسرا کامیاب، تو آپ کو حد مل گئی۔
انٹرفیس کی موجودہ قدر:
ip link show
ip route get 1.1.1.1
اسے کیسے ٹھیک کریں
ایک بار کی جانچ:
ip link set dev eth0 mtu 1420
مستقل طور پر، systemd-networkd کے ذریعے — فائل /etc/systemd/network/10-eth0.network:
[Match]
Name=eth0
[Link]
MTUBytes=1420
systemctl restart systemd-networkd
اگر نیٹ ورک NetworkManager چلا رہا ہو:
nmcli connection modify "System eth0" 802-3-ethernet.mtu 1420
nmcli connection up "System eth0"
دوسری تکنیک، جو اس وقت کام آتی ہے جب آپ MTU کو چھو نہیں سکتے، یہ ہے کہ بارڈری پر TCP سیگمنٹ سائز کو کلیمپ کر دیں۔ nftables میں:
tcp flags syn tcp option maxseg size set rt mtu
یہ آپ کو کب متاثر کرتا ہے
خود Millida VDS مشین پر نیٹ ورک ٹھیک طریقے سے کنفیگر ہوتا ہے، اور عام طور پر آپ کو MTU کو دستی طور پر چھونے کی ضرورت نہیں پڑتی۔ آپ کو اس سے نمٹنا اس وقت پڑتا ہے جب آپ خود کوئی ٹنل سیٹ اپ کریں: WireGuard، OpenVPN، GRE، دفتر تک کوئی VPN، یا مشینوں کے درمیان کوئی لنک۔ ٹنل کے اندر MTU ہمیشہ کم ہوتا ہے، اور آپ کو اسے واضح طور پر سیٹ کرنا پڑتا ہے۔
WireGuard میں [Interface] سیکشن کے اندر:
MTU = 1420
عام غلطیاں
| غلطی | نتیجہ |
|---|---|
| فائر وال میں ICMP کو مکمل طور پر بلاک کر دینا | آپ اپنے لیے پیکٹ سائز کی گفت و شنید توڑ دیتے ہیں |
| ٹنل کے صرف ایک طرف MTU سیٹ کرنا | ٹریفک ایک ہی سمت میں ہینگ ہو جاتی ہے |
| بے ترتیب طور پر MTU تبدیل کرنا | آپ اصل وجہ چھپا دیتے ہیں: پیکٹ لاس یا کسی سروس کا ایرر |
جب تک آپ
ping -M doکمانڈ سے علامت دوبارہ پیدا نہ کر لیں، MTU کو نہ چھوئیں۔ اس جانچ کے بغیر آپ ایک اندازے کی بنیاد پر کام کرتی کنفیگریشن بدل رہے ہوتے ہیں — اور پرانے مسئلے کی جگہ ایک نیا مسئلہ لے آتے ہیں۔ ICMP کو مکمل طور پر بلاک نہ کریں؛ nftables دیکھیں۔