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

روٹنگ کو چھونے سے پہلے ریٹرن ماڈل کا فیصلہ کریں

اس واک تھرو میں ڈاؤن اسٹریم کلائنٹ 10.90.0.0/24 استعمال کرتے ہیں، گیٹ وے کو دیا گیا اپ اسٹریم ٹنل پتہ 10.80.0.6 ہے، اور منظور شدہ دور دراز وسیلہ 172.20.0.30 ہے۔ اس شکل سے دو ماڈل مطابقت رکھتے ہیں: ڈاؤن اسٹریم ماخذ کو برقرار رکھ کر دور والے فریق سے اسے روٹ کرانا، یا ماخذ کو گیٹ وے کے اپنے ٹنل پتے میں ترجمہ کرنا۔ اس فیصلے کے بعد سب کچھ مشینی ہے، اور فیصلے کو خود سروس کے مالک کی ضرورت ہے۔ اوپر کی ایک سطر دور والے فریق کے ساتھ روٹنگ معاہدہ ہے؛ دوسری مقامی پالیسی کی تبدیلی ہے جو آپ اکیلے کر سکتے ہیں۔ ان دونوں کو خلط ملط کرنا ہی دس منٹ کے کام کو گفت و شنید میں بدل دیتا ہے۔

preserved:  10.90.0.23 -> 172.20.0.30
translated: 10.80.0.6  -> 172.20.0.30

ایک سطر منتخب کریں اور اس پر قائم رہیں۔ سطریں متبادل ہیں، مراحل نہیں، اور انہیں ملانا ایسا ڈیزائن بناتا ہے جسے جائزے میں کوئی بیان نہیں کر سکتا۔

روٹ کے ذریعے ماخذ کی حفاظت

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

اگر جواب ہاں ہے تو مقامی کنفیگریشن مختصر ہے: فارورڈنگ فعال، ڈاؤن اسٹریم رینج کو ڈھانپنے والے WireGuard peer کے allowed-ips، اور ایسی فائر وال پالیسی جو دونوں سمتوں میں گزرنے کی اجازت دے۔

دانستہ ماخذ ترجمہ

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

IPv6 کو اپنا ڈیزائن درکار ہے؛ IPv4 masquerade لائن کاپی کرنا کوئی فن تعمیر نہیں۔ ترجمہ شدہ راستے کو کیش شدہ کنکشن کی بجائے نئے کنکشن سے جانچیں۔

مقامی ڈیٹا راستہ پھر بھی کام کرنا چاہیے

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

گیٹ وے سے نہیں، حقیقی ڈاؤن اسٹریم آلے سے جانچیں۔ ماخذ پتہ ہی اس مشق کا پورا مقصد ہے۔

ایک ماخذ کا مطلب ایک سیشن شناخت

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

وہ تصدیق اصول کے ساتھ runbook میں لکھیں، کیونکہ اگلا جائزہ لینے والا پوچھے گا کہ ڈیزائن منظور ہوا تھا یا صرف سہولت تھی۔

منقطع حالت کی تعریف کریں، پھر تین درخواستیں جانچیں

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

ہر اصول کے لیے ایک سطر میں رول بیک درج کریں، تاکہ ارادے کو دوبارہ تعمیر کیے بغیر تبدیلی واپس لی جا سکے۔

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