تقسیم شدہ ٹنل کیسے طے کرتی ہے کہ کون سی ٹریفک VPN استعمال کرتی ہے
تقسیم شدہ ٹنل راستے اور بائنڈنگ کے فیصلوں کا مجموعہ ہے، کوئی موڈ نہیں جسے آپ آن کرتے ہیں۔ دیکھیں کہ فی ایپ قواعد، سابقے، DNS اور حفاظتی سوئچ کیسے باہم کام کرتے ہیں۔
تقسیم شدہ ٹنل قواعد کے مجموعے کے طور پر بیان کردہ روٹنگ پالیسی ہے، اور کلائنٹ صرف وہ چیز ہے جو انہیں انسٹال کرتا ہے۔ علیحدگی دو جگہوں پر ہوتی ہے: مماثلت کے قواعد جو ہر پیکٹ کے لیے راستہ چنتے ہیں، اور بائنڈنگیں جو کسی ایپ کو ایک ہی انٹرفیس پر رکھتی ہیں، جدول کچھ بھی کہے۔ آپ کا کلائنٹ کس طریقہ کار پر انحصار کرتا ہے، یہ لوگوں کی بتائی ہوئی بیشتر حیرتوں کی وضاحت کرتا ہے۔
وہ پالیسی جو آپ ایک سطر میں بیان کر سکیں، قابلِ جانچ ہے۔ تیز براؤزنگ کے طور پر بیان کردہ پالیسی ایسی نہیں، اور جب کوئی درخواست غلط سمت جائے تو یہ نہیں بتائے گی کہ کون سا قاعدہ بدلنا ہے۔
کلائنٹ قواعد انسٹال کرتا ہے، کرنل انتخاب کرتا ہے
جب ٹنل اوپر آتی ہے، کلائنٹ آپ کے دوسرے انٹرفیسوں کے استعمال کردہ اسی جدول میں راستے اور اکثر پالیسی قواعد شامل کرتا ہے۔ پھر ہر پیکٹ ایسی تلاش تک پہنچتا ہے جو اس کے منزل کا موازنہ ہر امیدوار سابقے سے کرتی ہے اور سب سے مخصوص مماثلت رکھتی ہے، جبکہ ترجیح مختلف جدولوں کی طرف اشارہ کرنے والے قواعد کے درمیان برابری طے کرتی ہے۔ اس تلاش میں کسی کو معلوم نہیں کہ پیکٹ بیک اپ کام سے نہیں بلکہ براؤزر ٹیب سے آیا ہے۔ جیتنے والا قاعدہ ہی راستہ طے کرتا ہے، اور آپ اسے تبدیلی سے پہلے اور بعد پڑھ سکتے ہیں۔
اسی لیے تقسیم شدہ ٹنل منمانی معلوم ہو سکتی ہے۔ ایک ایپ میں دو منزلیں مختلف راستے لے سکتی ہیں، صرف اس لیے کہ ایک سابقہ دوسرے سے تنگ ہے۔
وہی انتخاب ہر پلیٹ فارم پر موجود ہے، اگرچہ نام بدلتے ہیں۔ Windows فیصلہ اپنے فلٹر پلیٹ فارم میں دھکیلتا ہے، Android اپنی VPN سروس کے ذریعے فی ایپ اجازت فہرست دکھاتا ہے، اور macOS ٹنل کو ایسے آلے سے جوڑتا ہے جو اب بھی روٹنگ جدول مانتا ہے۔ Microsoft کے روٹنگ نوٹس Windows کے معاملے میں پڑھنے کے قابل ہیں، اور ایک پلیٹ فارم کے لیے لکھی گئی رہنما کتاب شاذ و نادر ہی بغیر تبدیلی دوسرے پر منتقل ہوتی ہے۔
فی ایپ بائنڈنگ اور منزل کے سابقے مختلف اوزار ہیں
منزل کی پالیسی پوچھتی ہے کہ پیکٹ کہاں جا رہا ہے اور راستے کے جدول یا پالیسی قاعدے سے مشورہ کرتی ہے۔ فی ایپ پالیسی پوچھتی ہے کہ کس پروگرام نے ساکٹ کھولا، اور پلیٹ فارم اس پروگرام کو ٹنل انٹرفیس پر رکھتا ہے چاہے کوئی زیادہ مخصوص راستہ کہیں اور اشارہ کرے۔ دوسری زیادہ مضبوط ہے کیونکہ وہ جدول کی تبدیلیوں میں قائم رہتی ہے، مگر صرف انہی عملوں کو ڈھانپتی ہے جنہیں پلیٹ فارم منسوب کر سکے۔ کوئی معاون عمل، کوئی اندرونی براؤزر، یا اپنا رابطہ کھولنے والی سروس شاید وہ بائنڈنگ ورثے میں نہ پائے جو آپ نے فرض کی۔
دونوں میں سے کوئی طریقہ ناموں پر مبنی پالیسی کو مدد کے بغیر نہیں سنبھال سکتا۔ بڑی سائٹوں کے پتے مواد کے نیٹ ورک کے درمیان گھومتے ہیں، اس لیے کسی ہوسٹ نام کو چند سابقوں سے باندھنا ایسا قاعدہ بناتا ہے جو خاموشی سے مماثلت بند کر دیتا ہے۔ جو پالیسی ناموں کی پیروی کرے اسے مستقل راستے کی بجائے حل کنندہ سے واقف جزو درکار ہے۔
DNS اور حفاظتی سوئچ اپنے قواعد مانتے ہیں
ناموں کا حل پیکٹ روٹنگ سے الگ فیصلہ ہے، اور تقسیم شدہ ٹنل عام طور پر دو حل کنندے چاہتی ہے: اندرونی ناموں کے لیے کمپنی کا، باقی سب کے لیے مقامی۔ کلائنٹ فی انٹرفیس DNS ترتیبات انسٹال کر سکتا ہے، سوالات کسی درمیانی حل کنندے کو دے سکتا ہے، یا نظام کی طے شدہ قدر کو اچھوتا چھوڑ سکتا ہے۔ اپنے خفیہ کردہ حل کنندے والا براؤزر تینوں بندوبستوں سے گزر جاتا ہے۔ یہ فرض کرنے کی بجائے کہ حل کنندہ راستے پر چلا، ایک تلاش آزمائیں۔
حفاظتی سوئچ اوپر ایک فلٹر لگاتا ہے، اور وہ فلٹر ہمیشہ ارادی اخراج کو حادثاتی رساؤ سے نہیں الگ کرتا۔ کچھ کلائنٹ ٹنل سے باہر سب کچھ بلاک کرتے ہیں جبکہ دیگر پالیسی کے اعلان کردہ اخراج کی اجازت دیتے ہیں، اس لیے کسی ایک پر بھروسہ کرنے سے پہلے پڑھیں کہ آپ کا کون سا رویہ نافذ کرتا ہے۔
علیحدگی دونوں طرف سے جانچیں
شامل راستہ اور خارج شدہ راستہ الگ الگ جانچیں، اور نتیجہ کسی عوامی پتے کے بجائے انٹرفیس نام سے پرکھیں۔ یہ کمانڈز ایسے Linux میزبان کا تصور کرتی ہیں جس میں ٹنل آلہ پہلے سے اوپر ہے۔ 203.0.113.10 کو ایسی منزل سے بدلیں جسے آپ کی پالیسی اندر بھیجتی ہے، اور 198.51.100.25 کو اس سے جو وہ باہر بھیجتی ہے۔
ip route get 203.0.113.10
ip route get 198.51.100.25
resolvectl query intranet.example.com
curl -s --interface tun0 https://example.com -o /dev/null -w '%{http_code}\n'
پہلے دو جواب اکٹھے پڑھیں، کیونکہ ہر ایک میں نامزد انٹرفیس دکھاتا ہے کہ علیحدگی نے اس منزل کو ٹنل پر رکھا یا نہیں۔ حل کنندہ کا سوال دکھاتا ہے کہ اندرونی نام کا جواب کس سرور نے دیا، اور آخری کمانڈ ثابت کرتی ہے کہ ٹنل آلہ بنیادی طور پر درخواست اٹھا سکتا ہے۔ پہلی سطر کامیاب ہوتے وقت دوسری میں ناکامی کا مطلب ہے کہ پالیسی وہی کر رہی ہے جو اسے کہا گیا تھا۔
دوبارہ جڑنے کے بعد اور نیٹ ورک کی تبدیلی کے بعد مجموعہ دہرائیں۔ لیز کی تجدید اور انٹرفیسوں کی ہلچل وہ جگہیں ہیں جہاں علیحدگی اپنے مقصد سے میل کھانا چھوڑ دیتی ہے، اور ہر دوڑ کا محفوظ شدہ نتیجہ انحراف واضح کرتا ہے۔