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

دونوں مارک الگ الگ جگہوں پر رہتے ہیں اور الگ الگ شیڈول کے مطابق ختم ہوتے ہیں۔

دو مارک، دو عمریں

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

اسی لیے قواعد کا مجموعہ ہم آہنگ دکھ سکتا ہے جبکہ روٹنگ کا فیصلہ صفر دیکھتا ہے: قدر محفوظ ہوئی اور کسی نے اسے بحال نہیں کیا۔

دونوں کے درمیان نقل کرنا وہ قدم ہے جو آپ لکھتے ہیں

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

ct mark set meta mark
meta mark set ct mark

قاعدے کے ساتھ سمت لکھیں، کیونکہ پہلی نظر میں نحو سے یہ واضح نہیں ہوتا۔ پہلی سطر محفوظ کرتی ہے، دوسری بحال کرتی ہے، اور کوئی بھی دوسرے کا مطلب نہیں دیتی۔

اس تلاش سے پہلے درجہ بندی کریں جو اسے استعمال کرتی ہے

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

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

راستے سے مارک والا سوال پوچھیں

ip route get 10.77.0.10 mark 0x2

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

بڑھتا ہوا کاؤنٹر اس بات کا ثبوت ہے کہ کوئی قاعدہ کسی پیکٹ سے ملا۔ یہ ثبوت نہیں کہ آخری پیکٹ درست فیصلہ نقطے پر مطلوبہ مارک اٹھائے ہوئے تھا۔

مارک، سمت، وقت اور ماسک پڑھیں۔ چار جانچیں، اور راستہ معمہ رہنا چھوڑ دیتا ہے۔

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