منقطع کرنے کی اسکرپٹ عموماً ایک ہی وجہ سے ناکام ہوتی ہے: وہ غلط مالک سے مخاطب ہوتی ہے۔ کمیونٹی کی OpenVPN GUI کے زیرِ انتظام سرنگ اسی GUI کے سیشن کی ہے، Windows سروس کے شروع کردہ سرنگ سروس کی ہے، اور OpenVPN Connect ان دونوں میں سے کسی کی نہیں۔ یہ جانچیں ترتیب سے کریں اور جب مالک واضح نہ ہو تو رک جائیں۔ مالک کے مبہم ہونے پر kill کمانڈ بھیجنا ہی وہ راستہ ہے جس سے ایک پروفائل کا انقطاع پوری سائٹ کی بندش بن جاتا ہے۔

GUI کے زیرِ انتظام کنکشن کے لیے مفید کمانڈ openvpn.exe کو سگنل نہیں بلکہ GUI کو بھیجا گیا پیغام ہے۔

پہلے مالک کی شناخت کریں

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

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

پھر مالک کا اپنا انقطاع بھیجیں

اگر GUI مثال والے راستے پر نصب ہو اور office نام کی پروفائل موجود ہو تو پوری کمانڈ ایک سطر ہے:

"C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --command disconnect office

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

سروس کی ملکیت والی سرنگ کے لیے درست کنٹرول سروس ہے، GUI بائنری نہیں۔ کچھ بھی روکنے سے پہلے نصب شدہ سروس اور اس کی زیرِ انتظام پروفائلز جانچیں، کیونکہ ایک بار روکنا ایک ساتھ کئی سرنگیں گرا سکتا ہے اور آپ کو فی پروفائل نتیجہ نہیں ملے گا۔

یقینی بنائیں کہ اور کچھ نہ گرے

GUI disconnect_all کمانڈ کی بھی دستاویز دیتا ہے، اور اس کا دائرہ ہی وہ وجہ ہے کہ صرف office روکنے والی اسکرپٹ کے لیے یہ غلط اوزار ہے۔ اگر سادگی کے لیے اسے استعمال کرنے کا دل چاہے تو پوچھیں کہ اس مشین پر اور کیا منسلک ہے اور صارف اسے کیسے محسوس کرے گا۔

taskkill /F /IM openvpn.exe دو طرح سے بدتر ہے۔ یہ عمل کو ایگزیکیوٹیبل نام سے چنتا ہے اور زبردستی خاتمہ نافذ کرتا ہے، اس لیے نہ پروفائل کا نام بتاتا ہے اور نہ مالک کی معمول کی انقطاع ترتیب۔ اسے منظم بندش کہنا دونوں مسائل کو ایک ہی اخراج حالت کے پیچھے چھپا دیتا ہے۔

آپ کوئی بھی راستہ اختیار کریں، تبدیلی سے پہلے اثر کا دائرہ جانچیں: منسلک پروفائلز کی فہرست بنائیں، نوٹ کریں کہ کون سی بچنی چاہئیں، اور بعد میں دوبارہ جانچیں۔

حالت کی تصدیق کریں، اخراج کوڈ کی نہیں

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

اگر حالت کبھی نہ بدلے تو مالک غالباً وہ نہیں جسے آپ نے مخاطب کیا۔ زیادہ مضبوط کمانڈ کی طرف بڑھنے سے پہلے سیشن اور اکاؤنٹ دوبارہ جانچیں۔

لاگ میں کیا رکھیں

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

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

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