OpenVPN AF_INET انتباہ: غیر نقصان دہ پسپائی یا ناکام socket؟
AF_INET پسپائی کو بعد میں socket بنانے کی ناکامی سے الگ کریں: درست سطر پڑھیں، پھر سننے والے اور اگلی خرابی کو دیکھیں۔
OpenVPN کی دو لاگ سطریں ایک ہی الفاظ سے شروع ہوتی ہیں، اور ان میں سے صرف ایک مسئلے کی اطلاع دیتی ہے۔ Could not determine IPv4/IPv6 protocol. Using AF_INET پسپائی کی اطلاع ہے: پروفائل نے پتہ خاندان کھلا چھوڑ دیا، اس لیے ڈیمن نے ایک منتخب کیا اور آگے بڑھا۔ ناکامی کی شاخ بتاتی ہے کہ کوئی socket نہیں بنایا گیا اور دوبارہ شروع کرنے کا مطالبہ کرتی ہے۔ مشترک سابقہ کے بعد کا سب کچھ انہیں الگ کرتا ہے، اس لیے کچھ بھی بدلنے سے پہلے اس سے آگے پڑھیں۔
پسپائی کی اطلاع کیا بتاتی ہے
OpenVPN proto udp4 یا proto udp6 کے ذریعے واضح خاندان قبول کرتا ہے، اور جب خاندان کو آغاز پر اخذ کرنا ہو تو proto udp قبول کرتا ہے۔ دوسری صورت میں ڈیمن مقامی bind معلومات کا جائزہ لے کر انتخاب کرتا ہے۔
جب وہ اخذ کام کرتا ہے، انتباہ بتاتا ہے کہ کس سمت گیا اور عمل socket بنانا جاری رکھتا ہے۔ دوہرے اسٹیک والے میزبان پر proto udp والا سرور اکثر اسی طرح IPv4 پر پہنچتا ہے۔ اس راستے میں کچھ بھی خرابی نہیں، اور اس میں کچھ بھی حملے، غائب ویب سرور یا مسترد شدہ اکاؤنٹ کی طرف اشارہ نہیں کرتا۔ سطر صرف اس لیے کارآمد ہے کہ بعد کی جانچ کو اس خاندان سے موازنہ کرنا چاہیے جس کا یہ نام لیتی ہے۔
اسے ایک سوال کے جواب کے طور پر لیں، تشخیص کے طور پر نہیں۔ یہ بتاتی ہے کہ اس عمل نے کون سا خاندان منتخب کیا، اور اس بارے میں کچھ نہیں کہ کلائنٹ کیوں جڑ نہیں سکتا۔
ناکامی کی شاخ کیسی دکھتی ہے
بعد میں اسی socket کوڈ میں ایک شاخ ہے جہاں کوئی socket ہی نہیں۔ یہ چھوٹا پتہ خاندان پیغام درج کرتی ہے اور دوبارہ شروع کرنے کا مطالبہ کرتی ہے، کیونکہ آگے بڑھنے کے لیے کچھ باقی نہیں۔ ابتدائی الفاظ پسپائی سے ملتے ہیں؛ نتیجہ نہیں ملتا۔
انہیں اس سے الگ کریں کہ آگے کیا آتا ہے۔ اگر ڈیمن چلتا رہے اور اپنے سننے والے کی اطلاع دے، تو سطر معلومات تھی۔ اگر وہ باہر نکلے یا لوپ میں دوبارہ شروع ہو، تو اب بات bind کی ہے۔
grep میں ملنا بھی شاخ کی شناخت نہیں۔ یہ فقرہ گھومتے خلاصوں میں، مڑی ہوئی سطروں میں اور ان لاگ اقتباسات میں دکھائی دیتا ہے جو لوگ دوسرے ہاتھ سے چسپاں کرتے ہیں، اس لیے ایک ہی مماثلت کے بجائے پڑوسی سطروں اور وقت کے نشانات کی ترتیب پڑھیں۔
انتباہ کے بجائے سننے والے کو دیکھیں
چلتا ہوا سرور لاگ متن سے اندازہ لگائے بغیر خاندان کے سوال کا براہ راست جواب دیتا ہے۔
ss -lunp | grep openvpn
ss -ltnp | grep openvpnخاندان، پتہ اور پورٹ کو پروفائل سے ملائیں۔ 0.0.0.0:1194 سطر صرف IPv4 ہے، جبکہ دوہرے اسٹیک والے میزبان پر [::]:1194 سطر bindv6only ترتیب کے مطابق دونوں خاندان قبول کر سکتی ہے۔ اگر پروفائل udp کہے اور socket IPv4 ہو، تو جن کا حل کنندہ صرف AAAA ریکارڈ واپس کرتا ہے وہ کلائنٹ سرنگ پر بات چیت سے پہلے ہی ناکام ہو جائیں گے۔
پھر اپنے صارفین جیسے کلائنٹ سے آزمائیں: وہی حل کنندہ راستہ، وہی قسم کا نیٹ ورک۔ سرور سے مقامی رابطہ NAT آلے یا دوسرے خاندان کے لیے لکھے گئے فائر وال اصول سے گزرنے والی ٹریفک کے بارے میں بہت کم ثابت کرتا ہے۔
خاندان کو مجبور کرنا کب درست ہے
proto udp4 کو پن کرنا صرف IPv4 تعیناتی کے لیے موزوں ہے: صرف A قسم کا DNS نام، ایک v4 پتے کے لیے فائر وال اصول، صرف v4 پتے دینے والے آپریٹرز کے پیچھے کلائنٹ۔ یہ ابہام دور کرتا ہے اور اگلے لاگ سطروں کے مجموعے کو قابلِ پیش گوئی بناتا ہے۔
یہی دلیل IPv6 کو اولین رکھنے والے ماحول کے لیے الٹی سمت میں کام کرتی ہے، اور صرف A کلائنٹ بنیاد کے سامنے udp6 خود پیدا کردہ رکاوٹ ہے۔ صرف غیر نقصان دہ انتباہ کو خاموش کرنے کے لیے خاندان کو مجبور کرنا اس غلطی کی روایتی شکل ہے، کیونکہ آپ نے پرسکون لاگ کے بدلے بدل دیا کہ کون جڑ سکتا ہے۔
آخری نقاط اور ان تک پہنچنے والے کلائنٹ کی بنیاد پر منتخب کریں۔ OpenVPN 2.6 رہنما نقل و حمل کی شکلوں کی دستاویز کرتا ہے، اور پیغام اس انتخاب کا نتیجہ ہے، اس کا ان پٹ نہیں۔
ریکارڈ کو تنگ رکھیں
درست سطر کو اس کے وقت کے نشان کے ساتھ، چلتے پروفائل کی مؤثر نقل و حمل ترتیب، کرنل جو socket بتاتا ہے، اور ناکام ہونے والا اگلا مرحلہ لکھیں۔ وہ چار چیزیں پیغام کے اٹھائے تقریباً ہر سوال کو حل کرتی ہیں، اور ان میں سے کسی کو غیر متعلقہ خدمات کے بارے میں اندازے کی ضرورت نہیں۔ وہ حوالگی میں بھی قائم رہتی ہیں، جو grep کا اسکرین شاٹ نہیں کرتا۔
اس انتباہ کے ساتھ آنے والی پیکیج تجاویز غیر متعلقہ ہیں جب تک کوئی خرابی غائب قابلِ عمل فائل کا نام نہ لے۔
اگر ifconfig واقعی غائب ہو، تو اسکرپٹ کے بلانے پر ڈیمن نام لے کر بتاتا ہے، اور یہ اپنی الگ تحقیق کا مستحق ہے۔ AF_INET سطر اور غائب افادیت مختلف ناکامیاں ہیں، اور انتباہ بدلتا ہے یا نہیں یہ دیکھنے کے لیے چیزیں نصب کرنا وہی راستہ ہے جس سے صاف میزبان گندا ہو جاتا ہے۔