لینکس VPN انٹرفیس کا ip link کے ذریعے پرت در پرت جائزہ
فلیگز اور کاؤنٹر صرف ایک پرت بیان کرتے ہیں۔ ٹنل کو خراب قرار دینے سے پہلے لنک، پھر کاؤنٹر، پھر پتے اور روٹس پڑھیں۔
کلائنٹ کا آئیکن کہتا ہے کہ کنیکٹ ہے، انٹرفیس موجود ہے، اور ایپلیکیشن پھر بھی کہیں نہیں پہنچ پاتی۔ یہ امتزاج عام ہے، کیونکہ ورچوئل انٹرفیس اس وقت بھی موجود رہ سکتا ہے جب اس کا دور دراز ساتھی، اس کے پتے یا اس کے روٹس غائب ہوں۔ ip link درست پہلا اوزار ہے، اور یہی سب سے زیادہ پڑھے جانے والا بھی ہے۔ فلیگز اور کاؤنٹر ایک پرت بیان کرتے ہیں، اور ان کے اوپر کی پرتیں الگ الگ ناکام ہوتی ہیں۔ یہی وہ اوزار ہے جس کا حوالہ لوگ اس وقت دیتے ہیں جب وہ ثابت کرنا چاہیں کہ ٹنل چل رہا ہے، حالانکہ یہ بالکل وہی دعویٰ ہے جسے یہ اکیلا سہار نہیں سکتا۔
آئیکن سے پہلے انٹرفیس پڑھیں
ip -details link show dev tun0 سے شروع کریں، جیسا کہ ip-link دستاویز میں درج ہے، روایتی نام کی جگہ وہ انٹرفیس رکھیں جس کا آپ کا کلائنٹ واقعی مالک ہے۔ فلیگز، قسم، MTU اور انٹرفیس کی شناخت مفید مشاہدے ہیں۔ ورچوئل انٹرفیس کی حالت کی عبارت کا یہ لازم نہیں کہ فزیکل کیبل کے کیریئر اشارے کی طرح برتاؤ کرے، لہٰذا UP کو انٹرفیس کے بارے میں بیان سمجھیں، ٹنل کے بارے میں نہیں۔
یہی فرق سب سے زیادہ الجھن والی صورت کی وضاحت کرتا ہے: ایسا انٹرفیس جو دور دراز فریق کے دوبارہ جڑنے یا ناقابل رسائی ہونے کے دوران بھی موجود رہتا ہے۔
پائیداری کی ترتیبات لنک کو ٹھیک اسی لیے برقرار رکھ سکتی ہیں تاکہ دوبارہ جڑنے پر اسے از سر نو تعمیر نہ کرنا پڑے، یعنی موجودگی کا مطلب صحت نہیں۔
کاؤنٹر شامل کریں اور ایسی درخواست جو انہیں استعمال کرے
معاون اعداد و شمار کے منظر، ip -s link show dev tun0، کا استعمال کریں اور دونوں سمتوں میں پیکٹ اور بائٹ کی گنتی نوٹ کریں۔ پھر ایک بے ضرر درخواست پیدا کریں جو اس انٹرفیس سے گزرنی چاہیے اور متعلقہ سمت کا موازنہ کریں۔ جو درخواست کسی دوسری ایپلیکیشن کے براہ راست روٹ سے گزری ہو وہ ان کاؤنٹروں کو نہیں ہلائے گی، اور مشق کا مقصد بھی یہی ہے۔
اگر ارسال کاؤنٹر بڑھے اور وصولی کاؤنٹر نہ بڑھے، پیکٹ گیا اور کچھ واپس نہ آیا۔ یہ ایسے انٹرفیس سے مختلف مسئلہ ہے جس نے کبھی کچھ منتقل ہی نہ کیا ہو۔ اگر دونوں کاؤنٹر بڑھیں اور ایپلیکیشن پھر بھی ناکام ہو، تو خرابی انٹرفیس کے اوپر ہے، اور یہ تعطل نہیں بلکہ پیش رفت ہے۔
ایک ہی سنیپ شاٹ پر بھروسا کرنے کے بجائے پڑھائی دو بار لیں، ایک بار پہلے اور ایک بار بعد میں۔
پتے اور روٹس الگ الگ مراحل ہیں
لنک ایسے بھی موجود ہو سکتا ہے جب پریفکس، نام حل کرنے کی ترتیب یا ایپلیکیشن کو درکار روٹ موجود نہ ہو۔ پتہ ip address show dev tun0 سے دیکھیں، پھر اصل ہدف کے لیے ip route get سے دیکھیں کہ منزل کون سا روٹ چنے گی۔ یہ تین مشاہدے تین مختلف سوالوں کے جواب دیتے ہیں، اور صرف آخری آگے بھیجے جانے کے بارے میں ہے۔
IPsec کے لیے سکیورٹی پالیسی اور ایسوسی ایشن کی حالت بھی اہم ہو سکتی ہے، اور ہر IPsec ڈیزائن سادہ tun انٹرفیس کی صورت میں ظاہر نہیں ہوتا۔ ایسے tun ڈیوائس کو ڈھونڈنا جو کبھی ہونے ہی نہیں تھا، غلط نتیجے تک پہنچنے کا تیز راستہ ہے۔
جو بھی آؤٹ پٹ رکھیں اس کے ساتھ درست نام، نام فضا اور وقت درج کریں، کیونکہ کسی دوسرے کنٹینر یا بحال شدہ سیشن میں یکساں دکھنے والا نام بالکل مختلف سیاق و سباق کی نمائندگی کرتا ہے۔
جو شناخت نہیں کیا اسے حذف نہ کریں
ناقابل شناس انٹرفیس خود بخود پرانا نہیں ہوتا۔ کچھ ہٹانے سے پہلے اس کے مالک کی شناخت کریں، اور جب ہٹانا واقعی مقصود ہو تو کلائنٹ کی دستاویزی تخریب یا زیر انتظام ترتیب استعمال کریں۔ زندہ ٹنل کو حذف کر کے دیکھنا کیا ہوتا ہے، ایسا امتحان ہے جو وہ سوال حل کرتا ہے جو کسی نے پوچھا ہی نہیں۔
اگر انٹرفیس کسی کنٹینر رن ٹائم یا نیٹ ورک نام فضا کا ہے جو آپ نے نہیں بنایا، تو مالک ایک کمانڈ کی دوری پر ہے اور پہلے اسی کو ڈھونڈنا چاہیے۔
یہی احتیاط ip link set down پر بھی لاگو ہوتی ہے، جو الٹنے کے قابل دکھتی ہے اور اکثر ہوتی نہیں۔
معائنہ آپ کو کیا دے کر جائے
اچھا معائنہ چار حقائق پر ختم ہوتا ہے: انٹرفیس کا نام اور نام فضا، اس کے فلیگز اور MTU، کسی حقیقی درخواست سے کاؤنٹر کا فرق، اور وہ روٹ اور پتہ جو ایپلیکیشن کو واقعی درکار ہے۔ جب یہ لکھ لیے جائیں تو اگلا قدم واضح ہوتا ہے اور کسی مخصوص پرت سے تعلق رکھتا ہے۔ ان کے بغیر ہر بعد کی تبدیلی ایک اندازہ ہے جس کے ساتھ رول بیک کا منصوبہ ہو۔
ان چار حقائق کا موازنہ کام کرنے والے سیشن کے انہی چار حقائق سے کریں۔ اگر انٹرفیس کا نام اور نام فضا میل کھاتے ہوں مگر کاؤنٹر کا فرق صفر ہو، تو درخواست کبھی ٹنل تک نہیں پہنچی۔ اگر کاؤنٹر کا فرق صحت مند ہو اور روٹ کہیں اور اشارہ کرے، تو ٹنل ٹھیک ہے اور روٹنگ نہیں۔ یہی موازنہ آؤٹ پٹ کے ڈھیر کو فیصلے میں بدلتا ہے۔
آؤٹ پٹ کو ٹکٹ کے ساتھ رکھیں، کیونکہ بعد کا موازنہ صرف اسی صورت مفید ہے جب آپ دیکھ سکیں کہ کیا بدلا۔
پھر ایپلیکیشن کو دوبارہ جانچ کر حل مکمل کریں، کیونکہ انٹرفیس کبھی وہ چیز نہیں تھی جس کی صارف کو فکر تھی۔