Debian resolvconf میں ریکارڈ ترتیب: VPN ریکارڈ پہلے رکھیں
VPN کا نام سرور بار بار LAN والے سے نیچے آ جاتا ہے کیونکہ resolvconf ریکارڈ نام ترتیب دیتا ہے۔ interface-order میں ترمیم کریں، دوبارہ بنائیں اور دو تلاشیں جانچیں۔
VPN کا نام سرور بار بار LAN کے نام سرور سے نیچے آ جاتا ہے، اور /etc/resolv.conf میں ترمیم اسے چند منٹ کے لیے درست کر دیتی ہے۔ وہ فائل بنائی جاتی ہے، اس لیے اصلاح کبھی قائم نہیں رہتی۔ Debian کے resolvconf میں ترتیب کا ان پٹ /etc/resolvconf/interface-order ہے اور یہ DNS پتوں کی بجائے ریکارڈ نام ترتیب دیتا ہے۔ دونوں میں سے کسی بھی فائل کو چھونے سے پہلے تصدیق کریں کہ کون سا resolver اسٹیک واقعی ذمہ دار ہے۔
تصدیق کریں کہ output پر resolvconf کا اختیار ہے
یہ پوچھ کر شروع کریں کہ موجودہ فائل کس نے لکھی اور اسے دوبارہ کون لکھے گا۔ resolvconf پیکج خود کو متحرک resolver ترتیب کے لیے فریم ورک کہتا ہے، اور systemd-resolved یا NetworkManager کے زیرِ انتظام resolver چلانے والا میزبان باہر سے ایک جیسا دکھ سکتا ہے جبکہ بالکل مختلف پالیسی استعمال کرتا ہو۔
readlink -f /etc/resolv.conf
dpkg -l resolvconf 2>/dev/null | tail -n 1
اگر حل شدہ راستہ resolvconf کی رن ٹائم ڈائریکٹری تک نہیں پہنچتا تو یہیں رکیں: یہ ہدایت نامہ کسی دوسرے اسٹیک کا ہے۔
اسی جانچ کے بعد ہی resolvconf کے پاس موجود ریکارڈز کی فہرست بنانا مناسب ہے۔
پیٹرن لکھنے سے پہلے ریکارڈز پڑھیں
interface-order فراہم کنندہ کے ریکارڈ ناموں سے میل کھاتا ہے، پتوں یا کرنل انٹرفیس ناموں سے نہیں۔ فہرست بنائیں کہ کیا رجسٹر ہے تاکہ آپ کے پیٹرن موجود اندراجات کا حوالہ دیں۔
ls /run/resolvconf/interfaces
cat /etc/resolvconf/interface-order
ریکارڈ کے نام میں عام طور پر ایسا لاحقہ ہوتا ہے جو اس کے فراہم کنندہ کی نشاندہی کرتا ہے، اس لیے ٹنل ریکارڈ اور DHCP ریکارڈ ایک ہی انٹرفیس سابقہ شیئر کر سکتے ہیں اور پھر بھی مختلف ترتیب سے آ سکتے ہیں۔ ڈائریکٹری کی فہرست سے درست نام نقل کریں۔ انٹرفیس کے نام سے نام کا اندازہ نہ لگائیں، کیونکہ کلائنٹ انضمام ہی طے کرتا ہے کہ کیا رجسٹر ہوگا۔ آپ کا گھڑا ہوا نام کبھی نہیں ملے گا، اور ریکارڈ بغیر کسی غلطی پیغام کے سب کچھ پکڑنے والے پیٹرن میں گر جائے گا۔
ترتیب کو پہلی مطابقت کے پیٹرن کے طور پر لکھیں
فائل shell glob پیٹرن کی فہرست ہے، ہر سطر میں ایک۔ ریکارڈ اُس پہلے پیٹرن کی جگہ لیتا ہے جس سے وہ میل کھاتا ہے، اس لیے کسی مخصوص پیٹرن کے اوپر وسیع پیٹرن اس مخصوص سطر کو ناقابلِ رسائی بنا دیتا ہے۔
# /etc/resolvconf/interface-order
lo*
tun_work.*
enp*
*
مخصوص ٹنل پیٹرن کو سب کچھ پکڑنے والے پیٹرن کے اوپر اور طبعی انٹرفیس پیٹرن کے اوپر رکھیں۔
فائل میں پہلے سے موجود دوسری سطریں برقرار رکھیں۔ پوری پالیسی کو مثال سے بدلنا ہی وہ طریقہ ہے جس سے غیر متعلق فراہم کنندگان خاموشی سے سرکتے ہیں؛ ایک سطر بدلیں، دوبارہ بنائیں اور موازنہ کریں۔ پیٹرن میں خالی جگہ، سلیش یا شروع میں نقطہ یا ٹلڈا نہیں ہو سکتا، اور خالی سطریں اور ہیش تبصرے نظر انداز کیے جاتے ہیں۔
دوبارہ بنائیں اور نتیجہ جانچیں
ترتیب اُس وقت لاگو ہوتی ہے جب اپ ڈیٹ اسکرپٹ فائل کو دوبارہ بناتے ہیں۔ بنائے گئے output میں ترمیم کے بجائے معاون اپ ڈیٹ راستہ چلائیں، پھر پڑھیں کہ resolver کو واقعی کیا ملا۔
resolvconf -u
cat /etc/resolv.conf
ایک نہیں، دو تلاشیں جانچیں: ایک نجی نام جو ٹنل کے ذریعے حل ہونا چاہیے، اور ایک عوامی کنٹرول نام۔ اگر ترتیب درست دکھنے کے باوجود نجی نام ناکام رہتا ہے تو مسئلہ ریکارڈ ترجیح نہیں بلکہ نام کی فضا کی راستہ بندی ہے، اور کوئی دوبارہ ترتیب اسے درست نہیں کرے گی۔ ہر جواب کا موازنہ صرف کامیابی سے نہیں بلکہ اُس سرور سے کریں جس نے اسے واپس کیا۔ غلط resolver کا دیا ہوا نجی نام کا جواب بھی ناکامی ہے، اور صارف کو یہ DNS رکاوٹ جیسا لگتا ہے۔
پرانا ریکارڈ درجہ گھٹانے کے بجائے ریٹائر کریں
ڈسکنیکٹ کے بعد بار بار واپس آنے والا پرانا VPN ریکارڈ کلائنٹ انضمام میں زندگی چکر کی خرابی ہے. اسے سب سے نیچے منتقل کرنا علامت چھپاتا ہے اور فہرست میں مردہ resolver چھوڑ دیتا ہے۔
اسے اُس جزو کے ذریعے ریٹائر کریں جو اسے رجسٹر کرتا ہے، پھر تصدیق کریں کہ ریکارڈ ڈائریکٹری اسے مزید فہرست نہیں کرتی۔
فراہم کنندہ کا نام، آپ کا بدلا ہوا پیٹرن اور آپ کی چلائی گئی دو تلاشیں لکھ لیں۔ اگلے شخص کو کہانی سے زیادہ ان ناموں کی ضرورت ہے۔