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

غلط فہمی: شروع شدہ سروس کا مطلب کام کرتی ٹنل

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

الٹی صورت بھی اتنی ہی عام ہے۔ ہو سکتا ہے کلید پڑھ نہ سکنے پر پروسیس باہر نکل گیا ہو، اور پھر یونٹ ناکام حالت بتاتا ہے جو وجہ کے بارے میں کچھ نہیں کہتی۔ دونوں حالتوں کو الگ کرنے کے لیے لاگ درکار ہے۔

یونٹ کی حالت کے بجائے اسی مثال کا جرنل پڑھیں۔ وجہ کی سطر لاگ میں ہوتی ہے، حالت کے لیبل میں نہیں۔

غلط فہمی: دوبارہ کوشش کی ترتیبات ہر ناکامی کو ڈھانپتی ہیں

نام کا حل اور ٹرانسپورٹ کی دوبارہ کوششیں الگ کنٹرول ہیں جن کے الگ ڈیفالٹ ہیں۔ resolv-retry دور کے ہوسٹ نام کی بار بار تلاش کو کنٹرول کرتا ہے، اور دستاویزی ڈیفالٹ بے حد کوشش کرتا رہتا ہے۔ connect-retry کوششوں کے درمیان وقفہ مقرر کرتا ہے، جبکہ connect-retry-max ہر دور کے اندراج کو کتنی بار آزمایا جائے اس پر حد لگا سکتا ہے۔ ان میں سے کوئی بھی بدلنے سے پہلے دیکھیں لاگ کون سا مرحلہ بتاتا ہے۔

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

غیر منظور شدہ سرٹیفکیٹ کے لیے ہمیشہ کوشش کرنا تصدیق ہٹانے کی وجہ نہیں۔ یہ غلطی پڑھنے کی وجہ ہے۔

غلط فہمی: ایک لانچر کافی ہے، اس لیے دوسرا شامل کریں

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

طے کریں کہ ٹنل کس جزو کی ملکیت ہے، کچھ بھی شامل کرنے سے پہلے۔ پھر دوسرے لانچر کو بند کر کے امید رکھنے کے بجائے ہٹا دیں۔

مالک یہ بھی طے کرتا ہے کہ دوبارہ کوششیں اور اسناد کہاں سے آتی ہیں، اسی لیے یہ فیصلہ کسی بھی ٹیوننگ سے پہلے آتا ہے۔ ملکیت بالکل اسی وجہ سے پہلے آتی ہے۔

اصل میں کس چیز کو ترتیب چاہیے

ترتیب کنفیگر شدہ پتے کا انتظار کر سکتی ہے، اور یہی اس کی پوری ضمانت ہے۔ network-online.target ایکٹیویشن کو اس وقت تک مؤخر کرتا ہے جب تک منتظم نیٹ ورک کو تیار نہ سمجھے، اور تیار کی تعریف منتظم پر منحصر ہے۔ یہ نہیں بتاتا کہ VPN ہوسٹ نام حل ہوتا ہے یا نہیں، سننے والا جواب دیتا ہے یا نہیں، یا کیپٹیو پورٹل نے ڈیوائس کو اندر آنے دیا ہے یا نہیں۔

انحصار شامل کرنے سے پہلے نصب شدہ یونٹ اور کوئی بھی ڈراپ اِن پڑھیں۔ ہر نیٹ ورک سروس پر وسیع After= بوٹ کو مؤخر کرتا ہے مگر وہ رابطہ قائم نہیں کرتا جو آپ کو واقعی درکار ہے۔

جس انحصار کو آزمایا جا سکے اس کی ترتیب رکھیں، اور باقی سب تیاری کی جانچ سے پرکھیں۔ ٹنل کھولنے والی جانچ اندازہ لگانے والے ٹائمر سے بہتر ہے۔

ٹنل پہلی بار اوپر آنے کے بعد کیا ہوتا ہے

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

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

الگ سے طے کریں کہ ٹنل بند ہونے پر ایپلیکیشنز کیا کر سکتی ہیں۔ دوبارہ کوشش رابطہ بحال کرتی ہے، جبکہ بلاک کرنے کی پالیسی طے کرتی ہے کہ اس وقفے میں براہِ راست ٹریفک کی اجازت ہے یا نہیں۔

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