دو سیلولر سائٹس، کوئی اندرونی پورٹ نہیں: ایسا مرکز بنائیں جو کام کرے
جب کوئی بھی سائٹ آنے والے IPv4 کنکشن قبول نہیں کرتی، دونوں کو قابل رسائی مرکز کی طرف شروع کرنے دیں۔ روٹنگ، فارورڈنگ اور متبادل راستے کے مراحل اسی ترتیب میں چلائیں۔
سیلولر لنکس پر موجود دو سائٹس دونوں سمتوں میں ایک ہی مسئلے کا سامنا کرتی ہیں: کوئی بھی غیر مطلوبہ IPv4 کنکشن قبول نہیں کر سکتی، اس لیے کوئی بھی براہ راست سرنگ میں سرور کا کردار ادا نہیں کر سکتی۔ کام کرنے والا ڈھانچہ درمیان میں قابل رسائی تیسرا فریق رکھتا ہے: ہر سائٹ باہر کال کرتی ہے اور درمیانی حصہ صرف وہی ٹریفک آگے بھیجتا ہے جسے آپ منظور کریں۔ وہ درمیانی حصہ آپ کا چلایا ہوا روٹر ہو سکتا ہے یا ہم منصبوں کو متعارف کرانے والی مصنوع، اور یہ دونوں ایک چیز نہیں ہیں۔ نیچے دیے گئے مراحل اس طرح ترتیب دیے گئے ہیں کہ ہر ایک اگلے کے اس پر انحصار سے پہلے ثبوت فراہم کرے۔
کسی بھی سائٹ کو کال نہیں کیا جا سکتا، اس لیے دونوں کو باہر کال کرنا ہوگا
ڈیزائن کرنے سے پہلے پابندی کی تصدیق کریں۔ اگر آپریٹر WAN انٹرفیس کو نجی پتہ دیتا ہے، تو سائٹ کے اپنے روٹر پر کوئی بھی پورٹ فارورڈنگ اسے قابل رسائی نہیں بنائے گی، کیونکہ ترجمہ اوپر ہوتا ہے۔ اسی لنک پر عوامی IPv6 پتہ ہو سکتا ہے اور ڈیزائن مکمل طور پر بدل سکتا ہے، اسی لیے جانچ دونوں خاندانوں کو محیط ہے۔ ہر سائٹ کے لیے جواب لکھیں، کیونکہ دونوں ایک ہی آپریٹر کے ساتھ ہونے پر بھی شاذ و نادر ہی یکساں پابندیاں رکھتی ہیں۔
عام سیلولر صورت آپریٹر کی ترجمہ شدہ رینج سے آنے والے پتے اور اس سے گزرنے والے طے شدہ راستے جیسی دکھائی دیتی ہے۔ یہ درست کرنے والی خرابی نہیں ہے؛ مرکز کے ہونے کی وجہ یہی ہے۔ آپ ایسا کوئی بھی پتہ تلاش کر رہے ہیں جہاں سائٹ کے پہلے بولنے کے بغیر تیسرا فریق پہنچ سکے۔
آپ کے سامنے موجود سائٹ کے پتے کے سوال کا جواب دو کمانڈز دیتی ہیں۔ انہیں سائٹ کے روٹر پر چلائیں، اس کے پیچھے والے لیپ ٹاپ پر نہیں:
ip -4 addr show scope global
ip -6 addr show scope globalکون ہم منصبوں کو متعارف کراتا ہے اور کون پیکٹ ڈھوتا ہے
تعارف اور نقل و حمل الگ کام ہیں جنہیں مصنوعات اکثر حد دکھائے بغیر یکجا کر دیتی ہیں۔ ملاقات کا طریقہ کار دو ہم منصبوں کو ممکنہ راستہ تلاش کرنے میں مدد دیتا ہے؛ براہ راست راستہ نہ ہونے پر ریلے ان کے پیکٹ ڈھوتا ہے۔ ہم منصبوں کو متعارف کرانے والی سروس خریدنے سے آپ کو روٹر نہیں ملتا، اور یہی فرق طے کرتا ہے کہ ڈیزائن کو مرکز کی ضرورت ہے یا نہیں۔
عبور کی اپنی اصطلاحات ہیں، اور الفاظ کردار بیان کرتے ہیں، ضمانتیں نہیں۔ ICE تفصیل امیدواروں اور کنکشن جانچ کی وضاحت کرتا ہے، STUN پتوں کے ترجمے کے بارے میں جاننے کا ایک طریقہ بتاتا ہے، اور TURN ان ایپلیکیشنز کے لیے ریلے کے ذریعے نقل و حمل بیان کرتا ہے جو اسے نافذ کرتی ہیں۔ ان میں سے کوئی بھی طریقہ عام گیٹ وے میں ظاہر نہیں ہوتا، کیونکہ آپ نے اسے دریافت کے پتے کی طرف موڑا ہے۔ عبور کو مصنوع کی صلاحیت کے طور پر جانچیں، اور جب تک کوئی آزمائش الٹ نہ دکھائے ریلے فرض کریں۔
ہر سائٹ کے لیے ایک راستہ، ہم منصب کی ملکیت میں
مرکز کو ہر سائٹ کے لیے ایک سرنگ، ہر ایک کے پیچھے الگ LAN سابقہ، اور ہر سابقے کے لیے ایسا راستہ درکار ہے جو اس کے مالک کا نام لے۔ مثال میں مرکز 10.61.0.1 ہے، سائٹ A وہ ہے جس کا LAN 10.60.10.0/24 والا 10.61.0.11 ہے، اور سائٹ B وہ ہے جس کا LAN 10.60.20.0/24 والا 10.61.0.12 ہے۔ نیچے کا ہر راستہ سرنگ کے انٹرفیس کی طرف نہیں، سابقہ رکھنے والے ہم منصب کی طرف اشارہ کرتا ہے:
ip route add 10.60.10.0/24 via 10.61.0.11 dev wg0
ip route add 10.60.20.0/24 via 10.61.0.12 dev wg0
sysctl net.ipv4.ip_forward
ip route get 10.60.20.55 from 10.60.10.77فارورڈنگ فعال ہونی چاہیے، ورنہ پیکٹ مرکز پر رک جاتے ہیں اور وجہ دکھانے والی کوئی خرابی نہیں ملتی۔ آخری کمانڈ اصل سوال کا جواب دیتی ہے، کیونکہ یہ ماخذ کو تلاش میں شامل کر کے پوچھتی ہے کہ پیکٹ سائٹ A کے LAN سے سائٹ B کے LAN تک کون سا راستہ لے گا۔ سرنگ کے انٹرفیس کا نام لینے والی تلاش کو ثبوت سمجھیں، اور طے شدہ راستے پر گرنے والی کو معمہ نہیں، غائب راستہ سمجھیں۔ پھر گزرگاہ کو دانستہ محدود کریں، کیونکہ ہر ہم منصب کے درمیان فارورڈ کرنے والا مرکز دو سائٹس کو ہموار نیٹ ورک بنا دیتا ہے اور رسائی کی وہ پالیسی جو آپ کے خیال میں تھی لاگو نہیں رہتی۔
یہ بھی طے کریں کہ خفیہ کاری کہاں ختم ہوتی ہے۔ جب مرکز سرنگ کے دونوں سرے رکھتا ہے، اس مشین کا آپریٹر اور اس کا کام کا بوجھ اعتماد اور دستیابی کے ماڈل میں شامل ہوتے ہیں، اور اس کی بینڈوڈتھ راستے کا حصہ بن جاتی ہے۔
ہر نقشے کو آپریٹر کے ذریعے زندہ رکھیں
ہر سائٹ اپنی سرنگ شروع کرتی ہے، اور ہر ایک کو ترجمہ کا نقشہ زندہ رکھنا ہوتا ہے ورنہ آپریٹر اسے بھول جاتا ہے۔ شروع کرنے والی طرف کا زندہ رکھنے والا پیغام مصافحے کے درمیان وہ نقشہ محفوظ رکھتا ہے۔ اجازت شدہ سابقوں کو مرکز کے پتے اور دور دراز LAN تک محدود کریں، تاکہ متاثر ہوا ہم منصب ایسا سابقہ دعوی نہ کر سکے جو اس کا نہیں:
[Peer]
PublicKey = <hub public key>
Endpoint = 192.0.2.10:51820
AllowedIPs = 10.61.0.1/32, 10.60.20.0/24
PersistentKeepalive = 25دوسری سائٹ پر اس کے اپنے دور دراز سابقے کے ساتھ بلاک کی نقل بنائیں، اور پوری سرنگ کی حد اجازت دینے کی خواہش کا مقابلہ کریں۔ وہ مصافحہ جو رک کر نئے ماخذ پورٹ سے دوبارہ شروع ہو، ختم شدہ نقشے کا دستخط ہے، اور مصافحے کے وقت کے نشان اس کے واقع ہونے کا ثبوت ہیں۔ آپریٹر کی مقررہ مدت سے کم وقفہ ختم ہونے کو روکتا ہے، بعد میں اسے درست نہیں کرتا۔ جب آپریٹر اپنا ترجمہ کا رویہ بدلے، تو توقع رکھیں کہ وہ اوقات بھی اس کے ساتھ بدلیں گے۔
دونوں سمتیں ثابت کریں، پھر بحالی ثابت کریں
تصدیق سمتی ہے، اس لیے A سے B تک ping ڈیزائن کا آدھا حصہ ثابت کرتا ہے اور واپسی کے راستے کے بارے میں کچھ نہیں۔ مرکز پر اسی ماخذ سے واقف تلاش کے ساتھ جواب کا راستہ جانچیں، پھر دوسری طرف سے آزمائش دہرائیں۔ نئے مصافحے بھی ثبوت میں شامل ہیں، کیونکہ ایک گھنٹہ بیکار سرنگ پرانا نقشہ جانچ رہی ہو سکتی ہے:
wg show wg0 latest-handshakes
ping -c 3 10.60.20.55
traceroute -n 10.60.20.55پھر آپ جو کامیابی چاہتے ہیں وہ نہیں، بلکہ جس ناکامی کی توقع رکھتے ہیں اس کی آزمائش کریں۔ ایک سائٹ کا لنک دوبارہ شروع کریں اور تصدیق کریں کہ سرنگ کسی بھی سرے کو انسان کے چھوئے بغیر واپس آتی ہے، کیونکہ آپریٹر کی ہر تبدیلی کے بعد آپریٹر درکار ہونے والا ڈیزائن ادھورا ہے۔ بنیادی راستہ، اگر ہو تو IPv6 متبادل، اور مرکز کے دستیاب نہ ہونے پر رویہ درج کریں۔ مرکز اب آپ کے دستیابی کے ماڈل کا حصہ ہے، اس لیے اسے رکاوٹ کے دوران دریافت کرنے کے بجائے لکھ لیں۔