ماخذ/منزل کی جانچ ایک دروازہ ہے، پورا VPN راستہ نہیں
فارورڈ کرنے والے انسٹانس کو AWS اجازت کے ساتھ Linux روٹس اور فائر وال قواعد بھی درکار ہیں۔ ماخذ/منزل کی توثیق اسی انسٹانس پر جانچیں جو فارورڈ کرتا ہے۔
VPN ایک EC2 انسٹانس پر ختم ہوتا ہے، آپ اس انسٹانس کے ٹنل پتے تک پہنچ سکتے ہیں، اور دوسرے نجی ہوسٹ کی طرف اس کے ذریعے جانے والا ٹریفک غائب ہو جاتا ہے۔ یہ دو مختلف جانچیں ہیں، اور انہیں ملانا گھنٹے ضائع کرتا ہے۔ پہلی پوچھتی ہے کہ کیا آپ انسٹانس تک پہنچ سکتے ہیں؛ دوسری مانگتی ہے کہ یہ ایسی منزل کے لیے ٹریفک فارورڈ کرے جو اس کی اپنی نہیں، جس کے لیے Linux فارورڈنگ، فائر وال پالیسی، دوسری طرف ایک روٹ اور AWS سطح کی اجازت درکار ہے جس کا مہمان آپریٹنگ سسٹم سے کوئی تعلق نہیں۔ کنسول میں کوئی چیز اس فرق کی طرف توجہ نہیں دلاتی۔ علامت روٹنگ خرابی جیسی لگتی ہے، اور عام طور پر ایسی نہیں ہوتی۔
کچھ بھی بدلنے سے پہلے دونوں جانچیں الگ کریں
گیٹ وے تک پہنچنا ٹنل، اس کے پتے تک روٹ اور وہ سکیورٹی گروپ ثابت کرتا ہے جو تبادلے کی اجازت دیتا ہے۔ دوسرے ہوسٹ کے لیے فارورڈنگ ان میں سے کچھ بھی ثابت نہیں کرتی: یہ الگ ماخذ پتہ، الگ منزل اور ایسے کردار میں انسٹانس استعمال کرتی ہے جس کے لیے یہ لازماً نہیں بنایا گیا۔ دونوں جانچیں الگ الگ لکھیں اور نوٹ کریں کہ کون سی ناکام ہوتی ہے، کیونکہ ہر ایک کی درستی الگ کنسول میں ہے۔ صرف ٹنل ختم کرنے کے لیے بنایا گیا گیٹ وے انسٹانس کسی اور چیز کے لیے فارورڈ کرنے کی کوئی وجہ نہیں رکھتا، اور اس کی طے شدہ ترتیبات یہی دکھاتی ہیں۔ اسی لیے دوسری جانچ کو اپنی ترتیب چاہیے، پہلی میں معمولی تبدیلی نہیں۔
گیٹ وے کی طرف کام کرنے والا ping اور اس سے آگے ہوسٹ کی طرف ناکام ہونے والا ping کوئی وقفے وقفے کی مشکل نہیں۔ یہ ایسے انسٹانس کا متوقع رویہ ہے جسے نہیں بتایا گیا کہ یہ فارورڈ کر سکتا ہے۔
کسی ترتیب کو چھونے سے پہلے راستہ لکھیں
کلائنٹ پریفکس، فارورڈ کرنے والا انسٹانس یا نیٹ ورک انٹرفیس، ہدف سب نیٹ اور جواب کا روٹ درج کریں۔ کسی انسٹانس کی طرف اشارہ کرنے والا VPC روٹ ٹیبل اندراج انسٹانس کے آپریٹنگ سسٹم کو فارورڈ کرنے کے لیے ترتیب نہیں دیتا، اور فارورڈنگ آن والا مہمان کرنل VPC روٹ نہیں بناتا۔ اس تعلق کے دونوں سرے موجود ہونے چاہئیں، اور وہ الگ جگہوں پر الگ رسائی رکھنے والے لوگوں کی جانب سے ترمیم کیے جاتے ہیں۔
پھر ماخذ/منزل کی جانچ کی ترتیب اصل فارورڈنگ جزو پر دیکھیں، VPC کے ہر انسٹانس پر نہیں۔ AWS دستاویز کرتا ہے کہ دوسروں کے لیے ٹریفک فارورڈ کرنے والے انسٹانس کو وہ جانچ بند رکھنی کیوں لازم ہے، اور یہ بھی کہ ترتیب پورے VPC کی طے شدہ نہیں بلکہ ہر انسٹانس کا فیصلہ کیوں ہے۔
چار حدود، اور جانچ ان میں سے صرف ایک ہے
راستے کو چار سوال سمجھیں اور ترتیب سے جواب دیں۔ پہلا ناکام جواب وہ جگہ ہے جہاں کام ہے، اور باقیوں میں سے کوئی بھی اس کی تلافی نہیں کرے گا۔
| Boundary | Question it answers |
|---|---|
| VPC route tables | Do the destinations and replies select the intended gateway? |
| Forwarding instance | Do the AWS check and the guest OS both permit forwarding? |
| Access policy | Do security groups, ACLs and host rules allow the exchange? |
| Destination | Can the service accept that source and return a reply? |
ترتیب اہم ہے کیونکہ جانچ سستی ہے: روٹس ایک صفحے پر نظر آتے ہیں، جانچ ایک ہی خصوصیت ہے، اور منزل کی رائے عام طور پر وہ آخری چیز ہوتی ہے جو کوئی پوچھتا ہے۔
ترجمہ بدلتا ہے کہ منزل کون سا ماخذ دیکھتی ہے
روٹ شدہ ڈیزائن کلائنٹ کا ماخذ پتہ محفوظ رکھتا ہے، اس لیے منزل کو کلائنٹ پریفکس تک واپسی روٹ درکار ہے۔ ترجمہ شدہ ڈیزائن اس کے بجائے گیٹ وے کا پتہ پیش کرتا ہے، جو اس شرط کو ہٹا دیتا ہے اور اس کی جگہ گیٹ وے پر حالت کی جدول رکھ دیتا ہے۔ اپنے مطلوبہ فن تعمیر کے مطابق فیصلہ کریں، نہ کہ ترجمہ شامل کریں کیونکہ کسی غیر متعلق مثال نے اسے استعمال کیا اور کام کرتا دکھا۔
اگر آپ ترجمہ کرتے ہیں تو قاعدہ کلائنٹ پریفکس اور مطلوبہ منزل تک محدود رکھیں۔ اگر محفوظ رکھتے ہیں تو تصدیق کریں کہ دوسری طرف روٹ واقعی جانتی ہے، یہ ماننے کے بجائے کہ سیکھ لے گی۔
اصل کلائنٹ سے جانچ کریں، پھر تبدیلی رکھیں
گیٹ وے پر بنائی گئی درخواست کامیاب ہو سکتی ہے جبکہ فارورڈ کی گئی درخواست ناکام ہوتی ہے، کیونکہ یہ الگ ماخذ اور الگ فارورڈنگ حالت ہے۔ ہدف شدہ درستی کے بعد وہی کلائنٹ-سے-وسیلہ جانچ دہرائیں جو ناکام ہوئی تھی، اسی کلائنٹ سے، اور تصدیق کریں کہ جواب واپس آتا ہے، صرف یہ نہیں کہ درخواست پہنچ گئی۔
آخر میں، ترتیب گیٹ وے کی زیرِ انتظام کنفیگریشن میں رکھیں تاکہ متبادل انسٹانس کو وہ ملے۔ دستی استثنا پر منحصر کامیاب جانچ ایسی جانچ ہے جو اگلی تعمیرِ نو میں ختم ہو جاتی ہے، اور جس نے اسے دریافت کیا وہ کیوں یاد رکھنے کے لیے وہاں نہیں ہوگا۔