VPN سروسوں کے پورٹ کی فہرستیں موازنے کے صفحات کے درمیان اس تفصیل کے بغیر نقل کی جاتی ہیں جو طے کرتی ہے کہ وہ اہم ہیں یا نہیں: رابطہ کون شروع کرتا ہے۔ باہر جانے والے TCP 443 کی اجازت دینے والا قاعدہ اس بارے میں کچھ نہیں کہتا کہ کوئی دوسرا ہوسٹ آپ کی مشین پر سننے والے تک پہنچ سکتا ہے یا نہیں۔ ایک بھی منصوبے کا موازنہ کرنے سے پہلے تین الگ تقاضے لکھیں، اور نشان زد کریں کہ آپ کے کام کو واقعی کون سے چاہیے۔ وہ پرچہ موجود ہو تو زیادہ تر موازنے ایک ہی مختصر سوال میں سمٹ جاتے ہیں۔

کوئی بھی پورٹ فہرست پڑھنے سے پہلے تقاضے کو الگ کریں

تین سطریں تقریباً ہر صورت کو ڈھانپتی ہیں: سرنگ سے پرے کسی منزل تک پہنچنا، کچھ شائع کرنا تاکہ دوسرے اندر جڑ سکیں، اور خود سرنگ کو ڈھونا۔ ہر سطر مختلف وجہ سے ناکام ہوتی ہے، اور ایک کو پورا کرنے والی فراہم کنندہ کی پالیسی باقی دو کو اچھوتا چھوڑ سکتی ہے۔ آپ کے کام کو درست سطر میں رکھنے میں پانچ منٹ لگتے ہیں اور بعد میں ایک بحث بچتی ہے۔

LineWho starts itWhat can block itQuestion for the provider
Outbound destinationYour applicationEgress filter on the exit nodeIs this protocol and port allowed to that destination?
Inbound publishingA remote peerNo mapping, no public address, short lifetimeWhich protocol, which external port, and how long does the mapping last?
Tunnel transportYour client to the gatewayThe access network drops that protocolDoes the client offer a fallback the local network permits?

مارکیٹنگ کے بیانات تینوں سطروں کو جان بوجھ کر دھندلا کرتے ہیں۔ P2P کی اجازت منزل کی پالیسی بیان کرتی ہے، مخصوص پتہ پتے کا بیان کرتا ہے، اور پورٹ پر کوئی پابندی نہ ہونے کا دعویٰ عام طور پر یہ بتاتا ہے کہ منصوبہ انہیں فہرست نہیں کرتا۔ ان میں سے کوئی جملہ باقیوں کا جواب نہیں دیتا۔

ایک ٹھوس بہاؤ چنیں اور اسے جملے کے طور پر لکھیں: شروع کرنے والا، منتقلی، پورٹ، پتوں کا خاندان، سمت۔ رات کا بیک اپ کلائنٹ جو دور کے ہوسٹ پر اپ لوڈ کرتا ہے صرف باہر جاتا ہے۔ آپ کی میز پر رکھا گیم سرور جس سے دوست جڑتے ہیں اندر آتا ہے۔ دونوں کو ایک سرنگ سے چلانے کا مطلب ہے کہ پرچے کو دونوں سطریں چاہیے، ان کے درمیان کوئی سمجھوتہ نہیں۔

باہر جانے والی رسائی سرنگ پر نہیں، منزل کی پالیسی پر ناکام ہوتی ہے

ترجمہ کرنے والے گیٹ وے سے باہر جانے والا ٹریفک حالت پیدا کرتا ہے۔ اندرونی پتے اور پورٹ سے پہلا پیکٹ ترجمہ اندراج بناتا ہے، اور جوابات اس سے میل کھاتے ہیں، یہی RFC 3022 میں بیان کردہ میپنگ رویہ ہے۔ یہی وجہ ہے کہ براؤزر کا ٹیب عام طور پر بغیر کسی پورٹ درخواست کے کام کرتا ہے۔

دو چیزیں پھر بھی اسے توڑتی ہیں۔ ایگزٹ نوڈ ایسی منزلیں یا پورٹ نمبر فلٹر کر سکتا ہے جنہیں وہ ناجائز استعمال کے قابل سمجھتا ہے، اور ایپلیکیشن ایسی پورٹ پر سن رہی ہو سکتی ہے جس کی ایگزٹ پالیسی نے کبھی توقع نہیں کی۔ اندر آنے والے قواعد کے بجائے منزل کے جوڑے کے بارے میں پوچھیں، اور TCP اور UDP کے لیے مختلف جوابات کی توقع رکھیں۔

بحث کرنے سے پہلے پیمائش کریں۔ یہ اُس مشین پر چلائیں جو سرنگ کے پیچھے ہو گی، ایک بار سرنگ بند ہونے پر اور ایک بار چلنے پر:

ss -lntup | sort
nc -vz -w 3 203.0.113.10 443
curl -sS -o /dev/null -w '%{http_code}\n' --max-time 5 https://example.com

وہی کمانڈز، وہی منزل، سرنگ کی دو حالتیں، آپریٹر کو ایسا پہلے اور بعد کا موازنہ دیتی ہیں جس پر وہ عمل کر سکے۔ دستاویزی پتے کو اُس ہوسٹ سے بدلیں جو آپ کو واقعی چاہیے؛ اہم بات موازنے کا دہرایا جانا ہے، نہ کہ کوئی عدد متاثر کن دکھے۔

اندر شائع کرنے کے لیے میپنگ، پتہ اور عمر چاہیے

عوامی طرف کچھ جانے بغیر کہ اسے کہاں پہنچانا ہے، باہر سے کوئی بھی آپ کے سننے والے سے رابطہ شروع نہیں کر سکتا۔ آپریٹر کے پاس رکھا مستقل پورٹ ریزرویشن، کلائنٹ کی UPnP، NAT-PMP یا PCP کے ذریعے مانگی گئی میپنگ، اور روٹ شدہ عوامی پتہ — یہ تین مختلف مصنوعات ہیں، تین مختلف حدوں کے ساتھ۔

ان میں سے کسی کے بارے میں پانچ سوال پوچھیں: کون سا پروٹوکول، کون سی بیرونی پورٹ، کیا بیرونی پورٹ مقامی سے مختلف ہو سکتی ہے، یہ کس پتہ خاندان کو ڈھانپتی ہے، اور دوبارہ جڑنے کے بعد میپنگ کتنی دیر رہتی ہے۔ فعال سیشن سے بندھی ریزرویشن اس سیشن کے ختم ہوتے ہی غائب ہو جاتی ہے، منصوبے کا صفحہ چاہے کچھ کہے۔

پہلے مقامی آدھا حصہ تصدیق کریں، کیونکہ مردہ سننے والا اور مسدود اندر آنے والا راستہ باہر سے ایک جیسے دکھتے ہیں:

ss -lntup | grep -E ':(8080|51820)\b'
python3 -m http.server 8080 --bind 0.0.0.0
curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8080

جب مقامی درخواست 200 واپس کرتی ہے اور آپ کے قابو سے باہر نیٹ ورک کی درخواست اب بھی وقت ختم کر کے رکتی ہے، تو خلا عوامی طرف ہے۔ یہی وہ لمحہ ہے جب ایپلیکیشن کو نام سے بتانے کے بجائے آپریٹر کو پروٹوکول اور بیرونی پورٹ بتانا چاہیے۔

سرنگ کی اپنی منتقلی الگ سوال ہے

کیریئر کی پورٹیں مسئلے کا سب سے چھوٹا حصہ ہیں اور دیکھنے میں سب سے آسان۔ ڈیفالٹ اقدار پروٹوکول کے مطابق بدلتی ہیں، اور کلائنٹ کس چیز پر بات چیت کر سکتا ہے یہ کسی بھی منصوبے کی تفصیل سے زیادہ اہم ہے۔

ClientOuter transportDefault portWhen it helps
OpenVPNUDP1194Default mode; needs outbound UDP to pass
OpenVPNTCP443UDP is dropped and TCP 443 is not
WireGuardUDP51820Short handshake; there is no TCP mode
IKEv2/IPsecUDP500 and 4500Mobile clients; 4500 carries NAT traversal

جو نیٹ ورک باہر جانے والا UDP پھینک دیتا ہے وہ TCP 443 سرنگ قبول کرے گا اور UDP والی رد کر دے گا، اس لیے فال بیک موڈ تقاضوں کے پرچے میں ہی ہونا چاہیے۔ کیریئر بدلنے سے سرنگ کے اندر ایپلیکیشن پورٹ نہیں ہلتی اور منزل کی پالیسی نہیں پھیلتی؛ وہ اپنی اپنی سطروں میں رہتے ہیں۔

وہاں ہوتے ہوئے تقسیم کی ایک جانچ بنتی ہے، کیونکہ جڑ کر پھر بڑی منتقلیوں پر رکنے والی سرنگ میں عام طور پر بند پورٹ نہیں بلکہ غلط MTU ہوتا ہے:

ping -M do -s 1400 203.0.113.10
ping -M do -s 1372 203.0.113.10

Windows پر وہی جانچ ping -f -l 1400 203.0.113.10 ہے۔ جو سب سے بڑا حجم گزرتا ہے اس سے نیچے سرنگ کا MTU مقرر کریں، پھر ناکام منتقلی دوبارہ جانچیں۔

منصوبے کی ادائیگی سے پہلے تینوں سطریں جانچیں

تینوں سطریں ایک صفحے پر رکھیں اور ہر خانے کو وعدے کے بجائے ناپے گئے نتیجے سے بھریں۔ یہ کمانڈز اس صفحے کا مقامی آدھا حصہ تقریباً ایک منٹ میں بناتی ہیں:

ss -lntup | sort
nc -vz -w 3 203.0.113.10 443
python3 -m http.server 8080 --bind 0.0.0.0
curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8080
ping -M do -s 1400 203.0.113.10

آؤٹ پٹ کو چیک لسٹ کی طرح پڑھیں۔ سرنگ چلنے پر منزل جواب دے تو باہر جانا کام کرتا ہے۔ اندر آنا صرف اُس وقت کام کرتا ہے جب آپ کے نیٹ ورک سے باہر کا ہوسٹ بیرونی پورٹ پر سننے والے تک پہنچے۔ کیریئر اُس وقت کام کرتا ہے جب آپ کا رسائی نیٹ ورک جس پروٹوکول کی اجازت دیتا ہے اُس پر ہینڈ شیک مکمل ہو۔

دو عادتیں پرچے کو ایماندار رکھتی ہیں۔ ہر نتیجے کے ساتھ تاریخ اور کلائنٹ ورژن لکھیں، کیونکہ فراہم کنندگان کی پالیسیاں اور کلائنٹ کی ڈیفالٹ قدریں دونوں بدلتی ہیں۔ پھر بہاؤ کی خدمت کرنے والی سب سے تنگ میپنگ مانگیں، کیونکہ سب کچھ کھولنے کی درخواست عام طور پر تکنیکی جواب کے بجائے انکار یا اضافی فروخت پاتی ہے۔

متعلقہ مضامین