ZeroTier سے LAN تک: UFW روٹ قواعد، پورٹ کی اجازت نہیں
گیٹ وے پر پورٹ کی اجازت دینا اس کے پیچھے موجود ہوسٹ تک بھیجنے کے مترادف نہیں۔ منظم روٹ مقرر کریں، ٹرانزٹ فعال کریں اور واپسی کا راستہ منتخب کریں۔
ZeroTier ممبر کے ذریعے دفتر کے LAN پر موجود پرنٹر تک پہنچنا ایک ہی قاعدہ لگتا ہے، لیکن دراصل یہ تین مختلف جگہوں پر تین فیصلے ہیں۔ اوورلے کو جاننا ہوگا کہ LAN کہاں ہے، Linux ہوسٹ کو پیکٹ آگے بھیجنے کے لیے تیار ہونا ہوگا، اور LAN کو جاننا ہوگا کہ جواب واپس کیسے بھیجنا ہے۔ گیٹ وے پر پورٹ کھولنے والا اندر آنے والا قاعدہ ان میں سے کسی کو نہیں چھوتا۔ یہ درست ہوسٹ پر غلط اوزار ہے۔
تین کام، تین مالک
منظم روٹ ZeroTier نیٹ ورک کنفیگریشن کا حصہ ہے۔ یہ ممبران کو بتاتا ہے کہ کوئی سابقہ کسی مخصوص ممبر ایڈریس کے ذریعے قابل رسائی ہے۔
فارورڈنگ Linux کرنل کی اور اس کی فائر وال پالیسی کے مالک کی ہے۔ یہ طے کرتی ہے کہ اوورلے پر آنے والا پیکٹ جسمانی انٹرفیس سے دوبارہ نکلے گا یا نہیں۔ جو ہوسٹ فارورڈ نہیں کرتا وہ پیکٹ قبول کرنے کے بعد خاموشی سے اسے پھینک دے گا۔ بھیجنے والے کو وقت ختم ہونے کا پیغام ملتا ہے اور سروس لاگ میں کچھ ظاہر نہیں ہوتا۔
واپسی کا راستہ LAN کا ہے۔ اس کے ہوسٹ اور اس کا روٹر جاننا چاہیے کہ اوورلے سابقہ آپ کے گیٹ وے کے LAN ایڈریس کے ذریعے قابل رسائی ہے، ورنہ کسی چیز کو ٹریفک کا ترجمہ کرنا ہوگا تاکہ یہ سوال ہی پیدا نہ ہو۔
ان میں سے ہر ایک درست ہو سکتا ہے جبکہ باقی ناکام ہوں، اور اسی لیے صرف گیٹ وے کو پنگ کرنے والا امتحان اس کے پیچھے کی سروس کے بارے میں کچھ ثابت نہیں کرتا۔
منظم روٹ کو ممبر کی طرف موڑیں
مطلوبہ LAN سابقہ کے لیے روٹ گیٹ وے کے اوورلے ایڈریس کے ذریعے شامل کریں، اس کے LAN ایڈریس کے ذریعے نہیں۔ اوورلے ایڈریس وہ ہے جہاں دیگر ممبران پہنچ سکتے ہیں؛ LAN ایڈریس کا مطلب صرف تار پر ہے۔
ڈیزائن کے کام کرنے کے لیے ممبران کو منظم روٹ قبول کرنے ہوں گے، اور ان کے اپنے مقامی نیٹ ورک پہلے سے وہ سابقہ استعمال نہیں کر سکتے جو آپ اعلان کر رہے ہیں۔ گھر میں 192.168.60.0/24 پر موجود دور دراز لیپ ٹاپ بھی اوورلے کے ذریعے 192.168.60.0/24 روٹ نہیں کر سکتا۔
اعلان شدہ سابقہ کو اتنا ہی تنگ رکھیں جتنا کام کی اجازت دیتا ہے۔ ترجیح پر اثر ڈالنے کے لیے بڑا مجموعہ اعلان کرنا ایسی ایڈریس جگہ کا بھی دعویٰ کر سکتا ہے جو آپ کی نہیں، اور نتیجے میں پیدا ہونے والا تصادم دونوں نیٹ ورکس سے منسلک آلات پر ظاہر ہوتا ہے۔ یہ کسی ممبر کو ایسے راستے کو ترجیح دلوانے پر بھی مجبور کر سکتا ہے جو کہیں نہیں جاتا۔ روٹ کو ایماندار رکھیں اور باقی پالیسی کو کرنے دیں۔
سابقہ اور ممبر ایڈریس اسی نوٹ میں لکھیں جس میں فائر وال قواعد ہیں، کیونکہ سب سے عام خرابی غلط ممبر کی طرف اشارہ کرنے والا روٹ ہے۔
کرنل میں ٹرانزٹ فعال کریں
کچھ بھی بدلنے سے پہلے چل رہی فارورڈنگ ویلیو پڑھیں، پھر ترتیب کو اسی طریقہ کار سے مستقل کریں جو آپ کا نظام پہلے سے استعمال کرتا ہے، نہ کہ ری بوٹ پر غائب ہو جانے والے یک وقتی حکم سے۔
اگر پالیسی UFW کی ہے تو اس کے روٹ قواعد ماخذ، منزل اور انٹرفیس کے جوڑے کے لیے فارورڈنگ ظاہر کرتے ہیں۔ یہ گیٹ وے پر ہی سروس کھولنے والے اندر آنے والے قواعد سے الگ ہیں:
sysctl net.ipv4.ip_forward
sudo ufw route allow in on zt3f2a1c9d out on eth0 proto tcp to 192.168.60.20 port 443
sudo ufw status verbose
انٹرفیس کا نام اس ہوسٹ پر موجود اصل اوورلے ڈیوائس ہے، جسے آپ ip link سے پڑھ سکتے ہیں؛ یہ تمام تنصیبات میں مستقل سٹرنگ نہیں ہے۔ اگر ہوسٹ طے شدہ طور پر فارورڈ کرتا ہے اور UFW راستے میں نہیں ہے تو روٹ قاعدہ نظر انداز ہو جائے گا اور کرنل کی ترتیبات ہی اہم ہوں گی۔
منتخب کریں کہ جوابات کیسے واپس آتے ہیں
ماخذ محفوظ رکھنے پر LAN کی سروس اصل اوورلے ایڈریس دیکھتی ہے اور اسی کو جواب دیتی ہے۔ اس کے لیے LAN ہوسٹ یا اس کے روٹر پر ایسا روٹ درکار ہے جو اوورلے سابقہ کو آپ کے گیٹ وے کی طرف اشارہ کرے، اور یہ Linux باکس سے باہر کی تبدیلی ہے۔
جب وہ روٹ شامل نہ کیا جا سکے تو محدود ماخذ ترجمہ درخواست کو ایسا دکھاتا ہے جیسے وہ LAN پر موجود گیٹ وے سے آئی ہو۔ تب جوابات مقامی طور پر واپس آتے ہیں اور LAN راؤٹنگ بدلنے کی ضرورت نہیں رہتی، مگر سروس لاگز میں اصل ماخذ کے ضائع ہونے کی قیمت پر۔
ترجمہ کو اوورلے ماخذ اور مخصوص LAN منزل تک محدود رکھیں۔ LAN انٹرفیس سے نکلنے والی ہر چیز کا ترجمہ کرنا وہ وسیع نسخہ ہے جو بعد میں قواعد پڑھنے والے ہر شخص کو حیران کرتا ہے، اور یہ ایسی ٹریفک بھی چھپاتا ہے جسے روکا جانا چاہیے تھا۔
دونوں میں سے کوئی بھی انتخاب LAN سے منمانے اوورلے ممبران تک بلا طلب رسائی نہیں دیتا۔ اگر یہ چاہیے تو یہ اپنے جائزے کے ساتھ الگ قاعدہ ہے۔
اصل ممبر سے جانچیں
گیٹ وے سے نہیں، کسی دوسرے ممبر سے جڑیں اور ایک اجازت یافتہ سروس کی درخواست کریں۔ پھر ایسی سروس آزمائیں جو بند رہنی چاہیے، اور دوبارہ جڑنے کے بعد اور گیٹ وے ری بوٹ ہونے کے بعد دونوں جانچیں دہرائیں۔
جو ممبر ONLINE کی اطلاع دیتا ہے، یا گیٹ وے کے اوورلے ایڈریس پر کامیاب پنگ، روٹ، فارورڈ قاعدہ یا واپسی کے راستے کی تصدیق نہیں کرتا:
zerotier-cli listnetworks
ip -4 route get 192.168.60.20
sudo ufw status numbered
دوسرا حکم بتاتا ہے کہ پیکٹ LAN ہوسٹ کے لیے کون سا انٹرفیس استعمال کرے گا، اور تیسرا بتاتا ہے کہ روٹ قاعدہ آپ کے ارادے والی شکل میں موجود ہے یا نہیں۔ اگر دونوں درست لگیں اور سروس پھر بھی وقت ختم کرے تو باقی مشتبہ واپسی کا راستہ ہے۔