انٹرفیس چل رہا ہے مگر wg-quick ناکام ہو گیا: اب کیا کریں
ناکام یونٹ پیچھے آدھا ترتیب شدہ سرنگ چھوڑ سکتا ہے۔ پہلا ناکام مرحلہ پڑھیں، طے کریں کہ صاف کرنا ہے یا مرمت، اور پھر درخواست سے اسے ثابت کریں۔
یونٹ سرخ ہے، انٹرفیس موجود ہے، اور سرنگ زیادہ تر کام کر رہی ہے، جو سب سے زیادہ الجھن پیدا کرنے والا امتزاج ہے۔ ترتیب ایک سلسلہ ہے: پہلے انٹرفیس بنتا ہے، پھر پتے، راستے، حل کنندہ کی ترتیبات اور کوئی بھی ہک کمانڈ آتی ہے۔ چوتھے مرحلے میں ناکامی پہلے تین کو اپنی جگہ چھوڑ دیتی ہے، اس لیے انٹرفیس کا نام اس بات کا ثبوت ہے کہ آغاز شروع ہوا، یہ نہیں کہ مکمل ہوا۔ ایک اضافی حقیقت اس الجھن سے بچا لیتی: وہ مرحلہ جو ناکام ہوا۔
نامکمل حالت ہی عام ناکامی ہے
اس رویے کی توقع کرنی چاہیے، اسے خرابی سمجھنے کے بجائے۔ انٹرفیس ترتیب کا سب سے سستا حصہ ہے اور پیچھے چھوڑنا سب سے آسان، اور یہی وہ حصہ ہے جو مشین کو آدھا چلتا ہوا دکھاتا ہے۔
جو ابھی موجود نہیں وہ ہے وہ سب کچھ جو ناکام مرحلے کے بعد آیا۔ اگر ناکامی حل کنندہ کے مرحلے میں ہوئی تو پتے اور راستے موجود ہیں اور DNS نہیں۔ اگر وہ راستہ تھا، سرنگ کا ایک پتہ ہے اور اس سے گزرنے کا کوئی راستہ نہیں۔
نتیجہ ایسی مشین ہے جو کچھ جانچوں کا جواب دیتی ہے اور کچھ میں ناکام ہوتی ہے، اسی لیے لوگ سمجھتے ہیں کہ سروس جھلملا رہی ہے حالانکہ وہ کبھی کامیابی سے شروع ہی نہیں ہوئی۔ جو سروس کبھی مکمل نہ ہوئی وہ جھلملا نہیں سکتی۔ وہ صرف اسی وجہ سے بار بار ناکام ہو سکتی ہے۔
پہلا ناکام مرحلہ تلاش کریں
صرف موجودہ حالت نہیں، یونٹ کا جرنل پڑھیں، اور اسے ناکام رن کے آغاز سے پڑھیں۔ آخری سطر آپ کو ایگزٹ کوڈ بتاتی ہے؛ پہلی خرابی بتاتی ہے کہ کیا ٹھیک کرنا ہے۔
یہ کمانڈیں یونٹ کی حالت، اسی یونٹ کا بوٹ جرنل اور سرنگ کی براہِ راست حالت چھاپتی ہیں:
systemctl status wg-quick@wg0
journalctl -u wg-quick@wg0 -b --no-pager | tail -40
wg show
ip -4 addr show dev wg0حل کنندہ کی خرابی، پہلے سے موجود راستہ، غیر صفر کوڈ کے ساتھ نکلا ہک اور ترتیب کی تجزیہ ناکامی سب اسی ونڈو میں نظر آتی ہیں، اور ہر ایک اپنے جزو کا نام لیتی ہے۔ صرف انٹرفیس کی حالت سے اندازہ لگانا وہ تمام معلومات نظر انداز کر دیتا ہے۔
مرمت کا فیصلہ کرنے والی تین شرطیں
طے کریں کہ آپ صفائی کر رہے ہیں، موقع پر مرمت کر رہے ہیں یا یونٹ کو بوٹ راستے سے ہٹا رہے ہیں، اور کچھ بھی ٹائپ کرنے سے پہلے یہ طے کریں۔
اگر انٹرفیس خراب ہے مگر ترتیب درست ہے تو صاف کریں اور دوبارہ شروع کریں۔ اگر ترتیب غلط ہے تو اسے درست کریں اور پھر بھی پہلے صفائی کریں، کیونکہ نامکمل حالت پر دوسرا منتظم شروع کرنا ایک انٹرفیس کے دو مالک پیدا کرتا ہے۔ اگر ناکامی مشین میں موجود نہ ہونے والے حل کنندہ مددگار جیسا غائب نظام جزو ہے تو یونٹ کو شکایت بند ہونے تک ترمیم کرنے کے بجائے انحصار جان بوجھ کر نصب یا ہٹائیں۔
وہ تین صورتیں اس کا بیشتر حصہ ڈھانپتی ہیں جو پراسرار سرخ یونٹ لگتا ہے۔ فرق کرنے والا سوال یہ ہے کہ کیا وہی ناکامی صاف حالت والی مشین پر بھی ہوتی، اور جواب عام طور پر پہلی خرابی کی سطر سے آتا ہے۔
دوبارہ کوشش سے پہلے صفائی کریں
موجودہ حالت پر دوبارہ کوشش نئی وجہ سے ناکام ہو سکتی ہے اور اصل وجہ چھپا سکتی ہے۔ انٹرفیس کو اسی اوزار سے نیچے لائیں جس نے اسے بنایا، پھر یقینی بنائیں کہ کچھ باقی نہیں بچا۔
غیر متعلقہ انٹرفیس حذف نہ کریں اور میزبان کا نیٹ ورکنگ اسٹیک ری سیٹ نہ کریں۔ دونوں چھوٹی چیز ٹھیک کرنے کے لیے بڑے اقدام ہیں، اور ایک ناکام سرنگ کو ایسی مشین میں بدل دیتے ہیں جس کے دیگر روابط دوبارہ قائم کرنے پڑتے ہیں۔ درست دائرہ ایک انٹرفیس اور اس کا مالک یونٹ ہے۔ اس سے وسیع کسی بھی چیز کے لیے واقع ہونے سے پہلے لکھی ہوئی وجہ درکار ہے۔
یونٹ نہیں، سرنگ ثابت کریں
سبز یونٹ کا مطلب ہے کہ آغاز کا سلسلہ صفر کے ساتھ نکلا۔ اس کا مطلب یہ نہیں کہ کوئی پیکٹ دوسری طرف پہنچا، اور نہ یہ کہ حل کنندہ ویسے قائم ہوا جیسے آپ نے چاہا تھا۔
سرنگ سے ایک درخواست بھیجیں اور وہ حالت پڑھیں جس نے اسے پیدا کیا:
systemctl is-active wg-quick@wg0
wg show wg0 latest-handshakes
ping -c 3 10.63.0.1
resolvectl query internal.example.netبغیر جواب کا ہاتھ ملانا پھر بھی بتاتا ہے کہ سرنگ بنی اور دوسرا سرا خاموش ہے، جو کبھی شروع نہ ہونے والے یونٹ سے مختلف مسئلہ ہے۔ یونٹ کی حالت، ہاتھ ملانا اور درخواست کا نتیجہ ایک ہی ریکارڈ میں رکھیں، کیونکہ یہ آزادانہ ناکام ہوتے ہیں اور صرف ان کا امتزاج نظام بیان کرتا ہے۔