VPN پورٹ تقاضے: موازنے سے پہلے لکھنے کی تین سطریں
معلوم کریں کہ آپ کے پاس واقعی کون سا پورٹ سوال ہے: باہر جانے والی منزل، اندر شائع کرنا، یا سرنگ کی اپنی منتقلی۔ پھر فراہم کنندہ سے صرف وہی پوچھیں۔
VPN سروسوں کے پورٹ کی فہرستیں موازنے کے صفحات کے درمیان اس تفصیل کے بغیر نقل کی جاتی ہیں جو طے کرتی ہے کہ وہ اہم ہیں یا نہیں: رابطہ کون شروع کرتا ہے۔ باہر جانے والے TCP 443 کی اجازت دینے والا قاعدہ اس بارے میں کچھ نہیں کہتا کہ کوئی دوسرا ہوسٹ آپ کی مشین پر سننے والے تک پہنچ سکتا ہے یا نہیں۔ ایک بھی منصوبے کا موازنہ کرنے سے پہلے تین الگ تقاضے لکھیں، اور نشان زد کریں کہ آپ کے کام کو واقعی کون سے چاہیے۔ وہ پرچہ موجود ہو تو زیادہ تر موازنے ایک ہی مختصر سوال میں سمٹ جاتے ہیں۔
کوئی بھی پورٹ فہرست پڑھنے سے پہلے تقاضے کو الگ کریں
تین سطریں تقریباً ہر صورت کو ڈھانپتی ہیں: سرنگ سے پرے کسی منزل تک پہنچنا، کچھ شائع کرنا تاکہ دوسرے اندر جڑ سکیں، اور خود سرنگ کو ڈھونا۔ ہر سطر مختلف وجہ سے ناکام ہوتی ہے، اور ایک کو پورا کرنے والی فراہم کنندہ کی پالیسی باقی دو کو اچھوتا چھوڑ سکتی ہے۔ آپ کے کام کو درست سطر میں رکھنے میں پانچ منٹ لگتے ہیں اور بعد میں ایک بحث بچتی ہے۔
| Line | Who starts it | What can block it | Question for the provider |
|---|---|---|---|
| Outbound destination | Your application | Egress filter on the exit node | Is this protocol and port allowed to that destination? |
| Inbound publishing | A remote peer | No mapping, no public address, short lifetime | Which protocol, which external port, and how long does the mapping last? |
| Tunnel transport | Your client to the gateway | The access network drops that protocol | Does 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 واپس کرتی ہے اور آپ کے قابو سے باہر نیٹ ورک کی درخواست اب بھی وقت ختم کر کے رکتی ہے، تو خلا عوامی طرف ہے۔ یہی وہ لمحہ ہے جب ایپلیکیشن کو نام سے بتانے کے بجائے آپریٹر کو پروٹوکول اور بیرونی پورٹ بتانا چاہیے۔
سرنگ کی اپنی منتقلی الگ سوال ہے
کیریئر کی پورٹیں مسئلے کا سب سے چھوٹا حصہ ہیں اور دیکھنے میں سب سے آسان۔ ڈیفالٹ اقدار پروٹوکول کے مطابق بدلتی ہیں، اور کلائنٹ کس چیز پر بات چیت کر سکتا ہے یہ کسی بھی منصوبے کی تفصیل سے زیادہ اہم ہے۔
| Client | Outer transport | Default port | When it helps |
|---|---|---|---|
| OpenVPN | UDP | 1194 | Default mode; needs outbound UDP to pass |
| OpenVPN | TCP | 443 | UDP is dropped and TCP 443 is not |
| WireGuard | UDP | 51820 | Short handshake; there is no TCP mode |
| IKEv2/IPsec | UDP | 500 and 4500 | Mobile 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
آؤٹ پٹ کو چیک لسٹ کی طرح پڑھیں۔ سرنگ چلنے پر منزل جواب دے تو باہر جانا کام کرتا ہے۔ اندر آنا صرف اُس وقت کام کرتا ہے جب آپ کے نیٹ ورک سے باہر کا ہوسٹ بیرونی پورٹ پر سننے والے تک پہنچے۔ کیریئر اُس وقت کام کرتا ہے جب آپ کا رسائی نیٹ ورک جس پروٹوکول کی اجازت دیتا ہے اُس پر ہینڈ شیک مکمل ہو۔
دو عادتیں پرچے کو ایماندار رکھتی ہیں۔ ہر نتیجے کے ساتھ تاریخ اور کلائنٹ ورژن لکھیں، کیونکہ فراہم کنندگان کی پالیسیاں اور کلائنٹ کی ڈیفالٹ قدریں دونوں بدلتی ہیں۔ پھر بہاؤ کی خدمت کرنے والی سب سے تنگ میپنگ مانگیں، کیونکہ سب کچھ کھولنے کی درخواست عام طور پر تکنیکی جواب کے بجائے انکار یا اضافی فروخت پاتی ہے۔