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

مرحلہ 1: پتہ لگائیں کہ اخراج کس کلائنٹ کے پاس ہے

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

ip route get 1.1.1.1
ip route show default
route print

کچھ کلائنٹ ڈیفالٹ روٹ بالکل نہیں بدلتے؛ وہ دو نصف حصے شامل کرتے ہیں، ایک پتہ کی جگہ کے نچلے نصف کے لیے اور ایک اوپر کے نصف کے لیے، جو مل کر سب کچھ ڈھانپ لیتے ہیں۔ اس سے اصل ڈیفالٹ روٹ نظر آتا رہتا ہے اور ہاتھ سے کی گئی مرمت درست دکھتی ہے، جبکہ ٹریفک اب بھی سرنگ سے باہر جاتی ہے۔ صرف ڈیفالٹ اندراج کی موجودگی نہیں، میٹرک اور پری فکس کی لمبائی پڑھیں۔

اگر دونوں کلائنٹ ایک ہی میٹرک کے ساتھ ایک ہی پری فکس کا دعویٰ کریں تو رک جائیں۔ کرنل ایک چنے گا، اور دوسرا کچھ نہ اٹھاتے ہوئے بھی جڑا ہوا دکھائی دے گا۔

مرحلہ 2: ریزولور اور اوورلیپ ہوتے پری فکس چیک کریں

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

resolvectl status
Get-DnsClientServerAddress
dig +short intranet.corp.example

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

اگر پری فکس اوورلیپ کریں تو یہیں رک جائیں۔ اس فہرست میں آگے سب کچھ فرض کرتا ہے کہ وہ اوورلیپ نہیں کرتے۔

مرحلہ 3: ایسا علیحدگی کا نمونہ چنیں جو قائم رہے

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

sudo ip netns add vpn2
sudo ip netns exec vpn2 ip link show
sudo ip netns exec vpn2 curl -sI https://intranet.corp.example/

نیم اسپیس دوسرے آپریٹنگ سسٹم کے بغیر ورچوئل مشین جیسی علیحدگی دیتا ہے، لیکن اس کے کنارے کھردرے ہیں: سرنگ کا آلہ اس میں منتقل کرنا ہوتا ہے، اور ایپلیکیشن اس کے اندر شروع کرنی ہوتی ہے۔ زیرِ انتظام کام کے کلائنٹ کے ساتھ ذاتی VPN کے لیے الگ جسمانی آلہ اکثر سب سے کم حیران کن آپشن ہوتا ہے۔ ایک سرنگ کو دوسری کے اندر ڈھیر کرنا علیحدگی کا نمونہ نہیں ہے؛ اندرونی سرا بیرونی سرنگ کے ذریعے قابل رسائی رہنا چاہیے، اور یہ ترتیب اوپر سے MTU اور تاخیر کے مسائل بھی شامل کرتی ہے۔

ایک نمونہ چنیں اور لکھیں کہ کیوں۔ ایک ایپلیکیشن کے لیے نیم اسپیس اور باقی کے لیے اسپلٹ ٹنل ملانا اصل ٹکراؤ کو مشکل ڈیبگ ہونے والی شکل میں دوبارہ پیدا کرتا ہے۔

مرحلہ 4: اسی سیشن سے دونوں نیٹ ورکس کی تصدیق کریں

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

curl -sI https://intranet.corp.example/
curl -sI https://files.personal.example/
ip route get 10.20.30.40

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

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

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